1

我正在使用 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 中有一个新引入的错误。有人遇到过这个问题吗?有什么解决方法吗?任何形式的帮助将不胜感激。

4

1 回答 1

1

这似乎是 CUDA 4.x 中的编译器错误,已在 CUDA 5.0 中修复(根据 @meriken2ch 的评论,该项目使用 CUDA 5.0 RC 构建良好)。

于 2012-09-04T00:23:26.003 回答