只是好奇心。 CuBLAS是用于基本矩阵计算的库。但是,这些计算通常也可以很容易地用普通的Cuda代码编写,而不使用CuBLAS。那么CuBLAS库和你自己的Cuda程序在矩阵计算方面的主要区别是什么?
答案 0 :(得分:13)
我们强烈建议开发人员在适当时使用cuBLAS(或cuFFT,cuRAND,cuSPARSE,推力,NPP)有很多原因:
老实说,在这一点上,我可以一方面指望那些实际上实现他们自己的密集线性代数例程而不是调用cuBLAS的开发人员。在学习CUDA时,这是一个很好的练习,但对于生产代码,通常最好使用库。
(披露:我经营CUDA图书馆团队)
答案 1 :(得分:9)
您选择使用库而不是编写自己的实现有几个原因。三,脱离我的头顶:
以上不仅仅与cuBLAS有关:如果你有一个方法在一个支持良好的库中,你可能会节省大量的时间并使用它来获得相对于使用你自己的实现的大量性能。