循环展开矩阵乘法

时间:2013-11-30 21:35:17

标签: loop-unrolling

我需要比天真的方法更好地实现矩阵乘法 这是我使用的方法: 1-删除了错误的依赖关系,使性能更好 2-使用递归方法 然后我需要尝试循环展开。事情是每次我使用它,它使性能最差我无法找到它的解释 我需要帮助的是代码

 for (i = 0; i < M; i++)
    for (j = 0; j < N; j++) {
    double sum = 0;
        #pragma unroll(5)
          for (k = 0; k < K; k++)
        {
        sum +=  A[i + k*LDA] * B[k + j*LDB];
        }
        C[i + j*LDC] = sum ;
    }

0 个答案:

没有答案