在最近的magma线性代数库(Version1.6.1)中,http://icl.cs.utk.edu/magma/software/在行使dgemm功能的测试代码(源代码: testing_dgemm.cpp)中调用了magma_dgemm和magmablas_dgemm函数。有人能澄清这两者的区别吗?哪一个更通用(而不仅仅是GPU)?
威拉万
发布于 2015-03-31 19:55:27
对源代码的检查发现,magmablas_Xgemm实际上是一个C函数,它在GPU上启动适当的gemm内核。因此,magmablas_Xgemm是一个特定于GPU的例程.另一方面,magma_Xgemm被设计为与加速器无关的例程,(目前)可以用于任意一个GPU (NVIDIA/AMD,.)或者MIC。
参考文件,相对于MAGMA源目录( CUDA版本):
./magmablas/dgemm_fermi.cu
./interface_cuda/blas_d.cpp发布于 2018-03-07 18:43:49
因此,基本上,MAGMA包括gemm,既包括封装magma__gemm的cublas_gemm,也包括magmablas_*gemm,后者是Magma的开源实现。
https://stackoverflow.com/questions/29266716
复制相似问题