2026-07-14

SM、CUDA核心与GPU架构

SM、CUDA核心与GPU架构

NVIDIA的GPU架构围绕一个层次结构构建。最小的单元是CUDA核心,它是一个简单的算术单元,每个时钟周期可以执行一个浮点或整数运算。CUDA核心被分组为更大的单元,称为流式多处理器(SM)。每个SM包含固定数量的CUDA核心,以及共享内存、寄存器和调度逻辑。

每个SM的CUDA核心数量随着每一代而增加。在Turing架构中,每个SM有64个CUDA核心。在Ampere中,增加到128个。在Ada Lovelace中,每个SM有128个CUDA核心,但架构更高效,因此每个核心每个时钟周期完成更多工作。高端RTX 4090有128个SM,总共16,384个CUDA核心。

CUDA核心并非完全相同。现代NVIDIA GPU有独立的整数和浮点数学核心,它们可以同时执行两种类型的指令。这称为FP32和INT32并发,它提高了利用率。还有用于平方根和三角函数等运算的特殊函数单元,以及用于矩阵运算的张量核心。

SM还包含一个调度器,决定接下来运行哪些线程。GPU利用大规模并行性,同时运行数千个线程。调度器将线程分组为32个线程的线程束。线程束中的所有32个线程执行相同的指令,但处理不同的数据。如果线程束中的线程采用不同的代码路径,一些线程必须等待,这会降低效率。

内存层次结构在GPU架构中至关重要。每个SM都有自己的寄存器文件和共享内存,这些内存速度极快但大小有限。所有SM共享一个更大的L2缓存,再往外是全局VRAM。理解这种层次结构对于编写高效的GPU代码至关重要。留在寄存器或共享内存中的数据比全局内存中的数据访问速度快数百倍。

让我们合作吧

您需要更多信息、项目帮助或开发构想吗?

无论是简单的问题还是完整的项目,我都在这里。联系我,让我们将您的想法变为现实。

联系我

切换主题

选择一个专业主题进行探索: