矩阵乘法的顺序:同一个算法快几十倍的秘密
前言
起因是同事说同样三重循环算矩阵乘法,只是把循环变量的顺序换了一下,快了几十倍,一开始我是不信的,算法都没换哪来的几十倍。自己跑了一遍被啪啪打脸,顺手把背后的原理捋清楚了,故有此文备忘。
先看现象
C语言里教科书式的矩阵乘法,N阶方阵要做 $2N^3$ 次浮点运算,一行注释都不用多加:
起因是同事说同样三重循环算矩阵乘法,只是把循环变量的顺序换了一下,快了几十倍,一开始我是不信的,算法都没换哪来的几十倍。自己跑了一遍被啪啪打脸,顺手把背后的原理捋清楚了,故有此文备忘。
C语言里教科书式的矩阵乘法,N阶方阵要做 $2N^3$ 次浮点运算,一行注释都不用多加: