【发布时间】:2012-10-11 01:52:13
【问题描述】:
我目前正在开发一个尝试计算矩阵乘法的 C 程序。我已经通过循环遍历第二个矩阵的每一列来完成这项任务,如下所示。
我已将大小设置为 1000。
for(i=0;i<size;i++)
{
for(j=0;j<size;j++)
{
for(k=0;k<size;k++)
{
matC[i][j]+=matA[i][k]*matB[k][j];
}
}
}
我想知道这个实现中存在什么问题的访问模式。是什么让行/列访问比另一个更有效?我试图从使用缓存的逻辑方面理解这一点。请帮助我理解这一点。非常感谢您的帮助:)
【问题讨论】:
标签: c matrix row matrix-multiplication