我正在使用 Windows 7 64 位上的 Visual Studio 2010 Professional 为 GTX 580 开发 CUDA 应用程序。我的项目使用 CUDA Toolkit 4.0 构建良好,但是当我选择 CUDA Toolkit 4.1 或 4.2 时 nvcc 崩溃并出现以下错误:
1> 堆栈转储:
1> 0. 在模块“moduleOutput”上运行“Promote Constant Global”。
1>CUDACOMPILE:nvcc 错误:'cicc' 以状态 0xC0000005 (ACCESS_VIOLATION) 死亡
奇怪的是,程序在为“代码生成”指定“compute_10,sm_10”的情况下编译正常,但“compute_20,sm_20”不起作用。有问题的代码可以在这里下载:
http://www.meriken2ch.com/files/CUDA_SHA-1_Tripper_MERIKENs_Branch_0.04_Alpha_1.zip
(README.txt 为日文,但源文件中的注释为英文。)
我怀疑 CUDA Toolkit 4.1/4.2 中有一个新引入的错误。有人遇到过这个问题吗?有什么解决方法吗?任何形式的帮助将不胜感激。