1

在最新的岩浆线性代数库(版本 1.6.1)中,http ://icl.cs.utk.edu/magma/software/,在执行 dgemm 功能的测试代码(源代码:testing_dgemm.cpp)中,有调用函数magma_dgemmmagmablas_dgemm. 有人可以澄清两者之间的区别吗?哪一个更通用(不仅与 GPU 相关)?

威拉万

4

2 回答 2

0

对源代码的检查表明,它实际上是一个 C 函数,它在 GPU 上magmablas_Xgemm启动适当的内核。gemmmagmablas_Xgemm 一个特定于 GPU 的例程。另一方面,magma_Xgemm旨在成为与加速器无关的例程,(当前)可用于 GPU(NVIDIA/AMD,...)或 MIC。

参考文件,相对于 MAGMA 源目录(CUDA 版本):

./magmablas/dgemm_fermi.cu
./interface_cuda/blas_d.cpp
于 2015-03-31T19:55:27.687 回答
0

因此,基本上 MAGMA 包括 gemm,包括包装 cublas gemm 的 magma_gemm 和 Magma 的开源实现 magmablas_*gemm。

于 2018-03-07T18:43:49.633 回答