【发布时间】:2014-07-02 03:31:25
【问题描述】:
我以前从未使用过 CUDA 或 C++,但我正在尝试从 (http://www.maisondelasimulation.fr/projects/RAMSES-GPU/html/download.html running. 由于 autogen.sh 中的错误,我使用了 ./configure 并使其正常工作。 所以生成的 makefile 包含以下 NVCC 标志
NVCCFLAGS = -gencode=arch=compute_10,code=sm_10 -gencode=arch=compute_11,code=sm_11 -gencode=arch=compute_13,code=sm_13 -gencode=arch=compute_20,code=sm_20 -gencode=arch=compute_20,code =compute_20 -use_fast_math -O3但是当我尝试使用 make 编译程序时,我得到了多个 ptxas 错误:
Entry function '_Z30kernel_viscosity_forces_3d_oldPfS_S_S_iiiiiffff' uses too much shared data (0x70d0 bytes + 0x10 bytes system, 0x4000 max)
Entry function '_Z26kernel_viscosity_forces_3dPfS_S_S_iiiiiffff' uses too much shared data (0x70d0 bytes + 0x10 bytes system, 0x4000 max)
Entry function '_Z32kernel_viscosity_forces_3d_zslabPfS_S_S_iiiiiffff9ZslabInfo' uses too much shared data (0x70e0 bytes + 0x10 bytes system, 0x4000 max)
我正在尝试在两个 NVIDIDA C1060 上使用内核 2.6 和 CUDA 4.2 在 Linux 上编译此代码(我尝试在我的大学中进行此操作,但他们不会定期升级东西。)。我尝试用 sm_20 替换 sm_10、sm_11 和 sm_13,(我在这里看到了这个修复:Entry function uses too much shared data (0x8020 bytes + 0x10 bytes system, 0x4000 max) - CUDA error)但这并没有解决我的问题。 你有什么建议吗?如果您需要,我可以上传 Makefile 以及其他所有内容。 谢谢您的帮助!
【问题讨论】:
-
也许错误信息是正确的,并且您试图为您安装的 GPU 卡使用过多的共享内存?