We develop lower bounds on communication in the memory hierarchy or between processors for nested bilinear algorithms, such as Strassen's algorithm for matrix multiplication. We build on a previous framework that establishes communication lower bounds by use of the rank expansion, or the minimum rank of any fixed size subset of columns of a matrix, for each of the three matrices encoding a bilinear algorithm. This framework provides lower bounds for any way of computing a bilinear algorithm, which encompasses a larger space of algorithms than a fixed dependency graph. Two bilinear algorithms can be nested by taking Kronecker products between their encoding matrices. Our main result is a lower bound on the rank expansion of a matrix constructed by a Kronecker product derived from lower bounds on the rank expansion of the Kronecker product's operands. We apply the rank expansion lower bounds to obtain novel communication lower bounds for nested Toom-Cook convolution, Strassen's algorithm, and fast algorithms for contraction of partially symmetric tensors.
翻译:我们开发了内存级或双线式算法巢内处理器之间通信的较低界限,例如Strassen的矩阵倍增算法。 我们以以前的框架为基础,通过使用级扩张或矩阵柱子中任何固定大小子集的最小级来建立通信的较低界限, 这三个矩阵中的每一个都编码了双线算法。 这个框架为计算双线算法提供了较低界限, 双线算法包括比固定依赖图更大的算法空间。 两个双线算法可以通过在编码矩阵之间使用Kronecker产品来嵌套。 我们的主要结果是, Kronecker 产品在Kronecker 产品单项的级扩张中生成的较低界限所构建的矩阵的级别扩张的较低界限。 我们应用级扩张下界限来获取新颖的Toom-Cook Convolution、 Strassen的算法以及部分对称数阵列的收缩算法的更低界限。