CUDA线程分配

时间:2016-03-22 08:47:40

标签: matrix cuda

我正在尝试在"Conjugate Gradient Solver"中实现一个名为CUDA的迭代线性求解器,它解决了形式的等式,

A*x=b,

其中A是大小为nXn的稀疏对称正定矩阵, x是大小为n的未知向量,初始猜测为0和 b是等式右边大小为n的向量。

我的代码中包含许多操作,如稀疏矩阵 - 矢量乘法,矢量矢量操作。

我的代码工作正常,矩阵大小高达31 X 31,但不超过31 X 31.这可能是因为分配给内核函数的线程数。我将线程分配为

mul<<<1,nrows>>>()

这里mul是用于执行稀疏矩阵向量乘法的函数,nrows是稀疏矩阵中的行数,A。

此问题与1个包装大小= 32个线程有关吗?

如果有人知道,请建议我。

谢谢.. !!

1 个答案:

答案 0 :(得分:-2)

尝试运行NVIDIA CUDA Samples中的&#34; devicequery&#34; 程序,以获得安装中的扭曲大小。如果它显示warp size = 32,那么你的问题可能与它有关,否则特定的代码片段必须提供任何解决方案。

相关问题