用CUDA计算(A - B(D ^ -1)B ^ T)^ - 1

时间:2013-08-17 19:17:23

标签: cuda matrix-multiplication equation matrix-inverse symmetric

使用 CUDA C 计算以下表达式的最有效方法是什么?

(A - B(D ^ -1)B ^ T)^ - 1

其中 D 是一个非常大的对称矩阵, A 是一个小的对称矩阵,它使 B B ^ T 中等矩形非对称矩阵。当然(^ -1)和(^ T)分别是反转和转置操作。

1 个答案:

答案 0 :(得分:1)

如果您可以使用"低"级别编程,然后矩阵求逆可以由CULAMAGMA库执行。

CULA Dense包含System Solve,Linear Least Squares Solve和Constrained Linear Least Squares Solve的单精度(实数或复数)精度。 CULA Sparse是稀疏矩阵的迭代求解器的集合。 Magma包含dgetrfdgetri来计算平方双精度矩阵的逆。

对于矩阵乘法,包括换位,您可以使用cuBLAS例程。

如果你喜欢"更高"级别编程,然后ArrayFire使您能够使用更自然的数学语法执行矩阵乘法,反演,转置,线性系统的解决方案和元素运算。此外,Matlab有一个GPU Computing Support for NVIDIA CUDA-Enabled GPUs

相关问题