文件名称:Matmul_benchmark:矩阵乘法的玩具基准实验
文件大小:81KB
文件格式:ZIP
更新时间:2024-04-27 05:28:15
C++
矩阵乘法优化方法 这是几种矩阵乘法算法的玩具基准实验。 要求 谷歌测试 谷歌/基准 的openmp CUDA 演算法 天真:计算C = A * B的纯方法,时间复杂度为O(N^3) for(int i = 0; i < A.rows; ++i) { for(int j = 0; j < B.cols; ++j) { C[i][j] = 0; for(int k = 0; k < A.cols; ++k) { C[i][j] += A[i][k] * B[k][i]; } } } Naive-Trans:在Naive , B[:][i]的访问不是缓存友好的,我们可以在做matmul之前转置B (成本O(N^2) ), // Bt = B.transpose() for(int i = 0; i <
【文件预览】:
Matmul_benchmark-master
----.gitmodules(89B)
----benchmark()
----figures()
--------matmul_benchmark.png(81KB)
----kernel.cu(3KB)
----compile_tests.sh(264B)
----matmul.cpp(8KB)
----matmul.hpp(9KB)
----test.cc(5KB)
----compile_benchmark.sh(262B)
----benchmark.cpp(7KB)
----README.md(8KB)
----kernel.hpp(282B)