- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我以前从未使用过 CUDA 或 C++,但我正在尝试让 Ramses GPU 从 ( http://www.maisondelasimulation.fr/projects/RAMSES-GPU/html/download.html 运行。由于 autogen.sh 中的错误,我使用了 ./configure 并使它正常工作。因此生成的 makefile 包含以下 NVCcflags
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
But when I try to compile the program using make, I get multiple ptxas Errors:
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)
我正在尝试在使用内核 2.6 和 CUDA 4.2 的 Linux 上编译此代码(我在我的大学尝试这样做,但他们不会定期升级东西。)在两个 NVIDIDA C1060 上。我尝试用 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 以及其他所有内容。感谢您的帮助!
最佳答案
您正在编译的代码需要为每个 block 静态分配 28880 字节 (0x70d0) 的共享内存。对于计算能力 2.x 和更新的 GPU,这不是问题,因为它们支持高达 48kb 的共享内存。但是,对于计算能力为 1.x 的设备,共享内存限制为 16kb(内核参数最多可使用其中的 256 字节)。因此,无法为 compute 1.x 设备编译代码,并且编译器生成一个错误告诉您这一点。因此,错误来自于向编译器指定 sm_13/compute_13
。您可以删除它并且构建应该可以工作。
然而,情况变得更糟。 Tesla C1060 是一款计算能力为 1.3 的设备。因此,您将无法在 GPU 上编译和运行这些内核。除了从构建中省略这些内核(如果您不需要它们)或将代码向后移植到计算 1.x 体系结构之外,没有其他解决方案。我不知道这是否可行。或者寻找更现代的硬件来运行代码。
关于c++ - CUDA ptxas 错误 "function uses too much shared data",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23648525/
我在编译 CUDA 代码时收到以下我不理解的警告: CUDACOMPILE : ptxas warning : Stack size for entry function '_Z24gpu_kerne
我正在使用 CUDA,我创建了一个 int2_ 类来处理复杂的整数。 ComplexTypes.h 文件中的类声明如下: namespace LibraryNameSpace { class
我正在尝试了解我的每个 CUDA 线程的资源使用情况,以用于手写内核。 我使用 nvcc -arch=sm_20 -ptxas-options=-v 将我的 kernel.cu 文件编译为 kerne
我在带有 CUDA 5 的 Linux 上使用具有计算能力 35 的 tesla k20。通过一个简单的子内核调用,它给出了一个编译错误:Unresolved extern function cuda
我正在尝试使用 thrust::sort 在我的 GPU 上对结构数组进行排序。但是,当我使用 nvcc 编译时,我收到此警告: ptxas/tmp/tmpxft_00005186_00000000-
当我尝试构建 a Windows port of Faster-RCNN 时出现 nvcc fatal : '--ptxas-options=-v': Expected a number 错误。您可以
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
我以前从未使用过 CUDA 或 C++,但我正在尝试让 Ramses GPU 从 ( http://www.maisondelasimulation.fr/projects/RAMSES-GPU/ht
我是一名优秀的程序员,十分优秀!