【发布时间】:2020-09-20 15:54:50
【问题描述】:
我正在阅读答案并且存在冲突的想法: 在这个链接https://www.3dgep.com/cuda-thread-execution-model/ 中,两个warp(64 个线程)可以在一个SM(32 个CUDA 核心)上同时运行。所以,我知道扭曲上的线程被分割并在 16 个 CUDA 核心上处理。这个想法对我来说很有意义,因为每个 CUDA 内核都有 1 个 32bitALU。
但是,在其他链接中,他们声称 1 个 CUDA 内核能够处理 32 个并发线程(与 warp 大小相同)(https://cvw.cac.cornell.edu/GPU/simt_warp)。因此,1 个 CUDA 扭曲只能由一个 CUDA 核心处理。这也是有道理的,因为同一个 warp 上的所有线程都使用同一个 PC 计数器。
那么,我的问题是如何将 CUDA 扭曲与 CUDA 核心映射?
【问题讨论】:
-
这个问题没有一个答案。它取决于硬件,并且随着时间的推移而发展。康奈尔链接显然是错误的,从来没有任何 GPU 可以按照文本描述的方式工作