BLAS相当于GPU的LAPACK功能

时间:2012-02-06 18:36:47

标签: cuda opencl gpu lapack blas

在LAPACK中,对角化有function

  SUBROUTINE DSPGVX( ITYPE, JOBZ, RANGE, UPLO, N, AP, BP, VL, VU,
 $                   IL, IU, ABSTOL, M, W, Z, LDZ, WORK, IWORK,
 $                   IFAIL, INFO )

*

我在寻找它的GPU实现。我试图找出这个函数是否已经在CUDA(或OpenCL)中实现,但只发现了CULA,它不是开源的。

因此,存在侧面CUBLAS,我想知道如何知道该子例程的BLAS或CUBLAS等价物是否可用。

2 个答案:

答案 0 :(得分:11)

BLAS不包括特征值求解器,CUBLAS在这方面没有区别。 UTK开发的Magma库包括几个GPU加速的特征值问题例程。我不认为xSPGV已经实现,但其他几个是。根据矩阵的特性,可能会有一些东西可供使用。

答案 1 :(得分:2)

MAGMA包含源代码。仅限CUDA + CPU(现在?)

  

“MAGMA项目旨在开发密集的线性代数库   类似于LAPACK,但对于异构/混合架构,首先   使用当前的“多核+ GPU”系统。“

http://icl.cs.utk.edu/magma/index.html

http://web.eecs.utk.edu/~luszczek/pubs/parcocudaopencl.pdf(正在进行OpenCL的MAGMA)

编辑:当我在搜索OCL时,我偶然发现了这个库... http://viennacl.sourceforge.net/我将仔细研究一下。 (你可以通过网站的风格告诉它很好)