在最新的岩浆线性代数库(版本1.6.1),http://icl.cs.utk.edu/magma/software/中,在执行dgemm功能的测试代码中(源代码:testing_dgemm.cpp),调用了函数{{1} }和magma_dgemm
。有人可以澄清两者之间的区别吗?哪一个更通用(不仅仅与GPU相关)?
Wirawan
答案 0 :(得分:0)
对源代码的检查表明magmablas_Xgemm
实际上是一个在GPU上启动适当gemm
内核的C函数。因此magmablas_Xgemm
是特定于GPU的例程。另一方面,magma_Xgemm
旨在成为加速器不可知的例程(当前)可用于GPU(NVIDIA / AMD,...)或MIC。
Ref文件,相对于MAGMA源目录(CUDA版本):
./magmablas/dgemm_fermi.cu
./interface_cuda/blas_d.cpp
答案 1 :(得分:0)
所以,基本上MAGMA包括gemm,包括cublas gemm的magma_ gemm,以及magma的开源实现的magmablas_ * gemm。