教程没有通过NUnit测试

时间:2015-06-06 23:00:37

标签: c# visual-studio-2013 cuda aleagpu

今天,我刚刚遇到了QuantAlea,我正在尝试构建和运行他们的教程。我首先必须将我的NVIDA GeForce GTX 670驱动程序更新为9.18.13.5306(2015年5月27日)。

现在我遇到以下错误:

System.DllNotFoundException : Unable to load DLL 'cublas64_65': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

因此,我安装了CUDA Toolkit 7.(注意:我的系统没有安装任何其他工具包。)搜索我的系统后,我在CUDA \ v7.0 \ bin文件夹中找到了cublas64_70.dll。因此,我假设cublas64_65是64位CUDA Toolkit v6.5的一部分。

我注意到CUDA Toolkit 6.5于2014年8月发布,v7.0于2015年3月发布。所有Alea.CUDA软件包的版本均为2.0.0.3222,已于2015年3月23日发布。因此,出现这些Alea.CUDA包是针对v7构建的。但由于某种原因,我的系统正试图访问6.5版本......我想。

无论如何,如何让这些教程通过单元测试? 或者我如何将QuantAlea与CUDA Toolkit 7一起使用?

1 个答案:

答案 0 :(得分:2)

这是因为在Alea GPU Tutorial项目中,它包含一些NVIDIA库包装器的测试,例如cuBLAS。并且Alea GPU并不提供这些库的原生,因此您需要先做一些配置工作才能让它工作。如果您不需要测试这些库,可以使用Visual Stuido构建项目,并测试其他内容。

默认情况下,默认情况下将设置设置为使用CUDA 6.5。您可以通过app.config(对于2.0.0.3222版本)进行更改: https://github.com/quantalea/AleaGPUTutorial/blob/master/src/app.config#L9 在元素中添加:

  <aleaCUDASettings>
    <cuBLAS path32="yourpath\cublas32_70.dll" path64="yourpath\cublas64_70.dll"/>
    <monitor name="default"/>
    <!--<jitCompile level="Diagnostic" />-->
  </aleaCUDASettings>

然后重建项目,然后它应该工作。