在CUSP或cuSPARSE中读取mxArray

时间:2012-06-05 13:30:18

标签: cuda device cusp-library

我正在尝试将matlab中的mxArray读入我自定义的.cu文件中。 我有两个稀疏矩阵可以操作。 我如何在尖点稀疏矩阵中读取它们说A和B(或cuSPARSE矩阵),以便我可以执行操作并将它们返回给matlab。 我能提出的一个想法是在.mtx文件中编写mxArrays然后读取 从中。但是,还有其他选择吗?

此外,我正在尝试使用其网站上发布的示例来了解各种CUSP机制。但是每次尝试编译和运行示例时,我都会收到以下错误。

terminate called after throwing an instance of
'thrust::system::detail::bad_alloc'
  what():  N6thrust6system6detail9bad_allocE: CUDA driver version is
insufficient for CUDA runtime version
Abort

以下是我正在使用的机器上安装的东西。

CUDA   v4.2
Thrust v1.6
Cusp   v0.3

我在我的机器上使用带有Linux x86_64的GTX 480。 奇怪的是,设备查询的代码也返回此输出。

CUDA Device Query...
There are 0 CUDA devices.

Press any key to exit...

我几天更新了我的驱动程序和SDK。 不确定什么是错的。

我知道,我在一个问题上提出了很多问题,但我在很长一段时间内遇到了这个问题,升级和降级驱动程序似乎无法解决。

干杯

1 个答案:

答案 0 :(得分:2)

此错误最为明显,“CUDA驱动程序版本不足以满足CUDA运行时版本”。你肯定需要更新你的驱动程序。

我通过Jacket的稀疏线性代数库使用CUSPARSE / CUSP。这很好,但我希望CUSPARSE / CUSP中有更多稀疏功能。我听说Jacket很快就会把CULA Sparse放进去,所以这样会很好。