TY - GEN
T1 - Matrix multiplication, a little faster
AU - Karstadt, Elaye
AU - Schwartz, Oded
N1 - Publisher Copyright: © 2017 Copyright held by the owner/author(s).
PY - 2017/7/24
Y1 - 2017/7/24
N2 - Strassen's algorithm (1969) was the first sub-cubic matrix multiplication algorithm. Winograd (1971) improved its complexity by a constant factor. Many asymptotic improvements followed. Unfortunately, most of them have done so at the cost of very large, o.en gigantic, hidden constants. Consequently, Strassen-Winograd's O (nlog27) algorithm o.en outperforms other matrix multiplication algorithms for all feasible matrix dimensions. The leading coefficient of Strassen-Winograd's algorithm was believed to be optimal for matrix multiplication algorithms with 2 × 2 base case, due to a lower bound of Probert (1976). Surprisingly, we obtain a faster matrix multiplication algorithm, with the same base case size and asymptotic complexity as Strassen- Winograd's algorithm, but with the coefficient reduced from 6 to 5. To this end, we extend Bodrato's (2010) method for matrix squaring, and transform matrices to an alternative basis. We prove a generalization of Probert's lower bound that holds under change of basis, showing that for matrix multiplication algorithms with a 2×2 base case, the leading coefficient of our algorithm cannot be further reduced, hence optimal. We apply our technique to other Strassenlike algorithms, improving their arithmetic and communication costs by significant constant factors.
AB - Strassen's algorithm (1969) was the first sub-cubic matrix multiplication algorithm. Winograd (1971) improved its complexity by a constant factor. Many asymptotic improvements followed. Unfortunately, most of them have done so at the cost of very large, o.en gigantic, hidden constants. Consequently, Strassen-Winograd's O (nlog27) algorithm o.en outperforms other matrix multiplication algorithms for all feasible matrix dimensions. The leading coefficient of Strassen-Winograd's algorithm was believed to be optimal for matrix multiplication algorithms with 2 × 2 base case, due to a lower bound of Probert (1976). Surprisingly, we obtain a faster matrix multiplication algorithm, with the same base case size and asymptotic complexity as Strassen- Winograd's algorithm, but with the coefficient reduced from 6 to 5. To this end, we extend Bodrato's (2010) method for matrix squaring, and transform matrices to an alternative basis. We prove a generalization of Probert's lower bound that holds under change of basis, showing that for matrix multiplication algorithms with a 2×2 base case, the leading coefficient of our algorithm cannot be further reduced, hence optimal. We apply our technique to other Strassenlike algorithms, improving their arithmetic and communication costs by significant constant factors.
KW - Bilinear algorithms
KW - Fast matrix multiplication
UR - http://www.scopus.com/inward/record.url?scp=85027875930&partnerID=8YFLogxK
U2 - 10.1145/3087556.3087579
DO - 10.1145/3087556.3087579
M3 - منشور من مؤتمر
T3 - Annual ACM Symposium on Parallelism in Algorithms and Architectures
SP - 101
EP - 110
BT - SPAA 2017 - Proceedings of the 29th ACM Symposium on Parallelism in Algorithms and Architectures
T2 - 29th ACM Symposium on Parallelism in Algorithms and Architectures, SPAA 2017
Y2 - 24 July 2017 through 26 July 2017
ER -