cuda - GTX 680、Keplers 和每个线程的最大寄存器数

标签 cuda

我在问以下问题,因为我很困惑......

在各种网站和论文中,我发现有声明说 Kepler 架构增加了每个线程的寄存器数量,但在我的 GTX680 上,这似乎不是真的,因为 RegsPerBlock 是 65536,所以对于 1024 个线程,它将是 64 个 reg。我错过了什么? .. 将来每个线程会有更多寄存器吗?

问候
丹尼尔

最佳答案

Kepler 架构有两种变体,sm_30 和 sm_35。 GTX 680 卡基于实现 sm_30 架构的 GK104 GPU。这种架构每个线程有 64 个寄存器,其中 63 个可用于用户代码,一个是专用的零寄存器。 future 的基于 GK110 的部件(如 K20)实现了 sm_35 架构,该架构为每个线程提供 256 个寄存器,其中 255 个可用于用户代码(另一个是专用的零寄存器)

关于cuda - GTX 680、Keplers 和每个线程的最大寄存器数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13078301/

相关文章:

visual-studio-2010 - 使用并行 nsight 2.2 创建新的 CUDA 项目

cuda - 是否可以在映射数组上使用 Thrust::device_ptr?

c - 对 C、CUDA 和 ANN 新手的建议?

c++ - CUDA:重载共享内存以实现多个数组的缩减方法

c++ - 如何: CUDA IFFT

opencv - OpenCV2.4.6 + CUDA5.0 + VS2010,在 Debug模式下,不显示图像

cuda - pycuda::complex 数组上的元素明智函数

c++ - 调试 CUDA - CudaUnknownError

cuda - Thrust 设备管理和内核

c - C 主机代码调用 cublasSgemm 的结果不正确