我目前解决Ax = b等式两次。
其中A是稀疏矩阵NxN
x,b是大小为N的向量。(我有b1和b2)
我想通过使用cusparse函数一次性解决它们来减少时间。
所以我应该从我所拥有的2 b,一个大小为Nx2的矩阵构建,并用A来解决它,因为AX = B可以做到。
请注意我使用稀疏矩阵而不是密集矩阵。
谢谢!
答案 0 :(得分:1)
回答你的问题
除非你的LHS稀疏矩阵是三角形或三角形,否则你不能直接使用cusparse。
cusolver 7.5包含几个用于分解稀疏矩阵的“低级”例程,这意味着您可以分解一次并使用不同的RHS重复使用因子分解,例如在LU分解后可以调用cusolverSpXcsrluSolve()来解决使用根据需要进行相同的预计算因子分解。 (注意我最初假设在cusolve中有类似稀疏的getrs函数,而且看起来没有。我当然和NVIDIA谈过几年前的用例并且认为他们已经添加了它,抱歉混淆了有)。
答案 1 :(得分:0)
cuSPARSE支持3级blas操作SpMM(稀疏矩阵多向量乘法)此函数允许您同时将稀疏矩阵乘以几个密集向量。