title: 什么是计算能力?
并行线程执行 (Parallel Thread Execution) 指令集中的指令仅与特定的物理 GPU 兼容。用于从指令集和编译器 (compiler) 中抽象出物理 GPU 细节的版本控制系统被称为"计算能力 (Compute Capability)"。
大多数计算能力版本号包含两个组成部分:主版本号和次版本号。NVIDIA 承诺按照洋葱层模型,在主版本和次版本之间保持向前兼容性(旧的 PTX 代码可在新 GPU 上运行)。
随着 Hopper 架构的推出,NVIDIA 引入了额外的版本后缀,即 9.0a 中的 a,它包含偏离洋葱模型的功能:即使在同一主版本内,其未来兼容性也不受保证。
随着 Blackwell 架构的推出,NVIDIA 引入了另一个版本后缀,即 10.0f 中的 f,它也偏离了洋葱模型,更接近语义化版本 (SemVer):兼容性在次版本之间得到保证,但在主版本之间不保证。
在调用 NVIDIA CUDA 编译器驱动程序 (NVIDIA CUDA Compiler Driver) nvcc 时,可以指定 PTX 编译的目标计算能力。默认情况下,编译器还会为匹配的流式多处理器架构 (Streaming Multiprocessor architecture) 生成优化的 SASS。nvcc 的文档将计算能力称为"虚拟 GPU 架构",与 SM 版本表示的"物理 GPU 架构"形成对比。
每个计算能力版本的技术规格可以在 NVIDIA CUDA C 编程指南的计算能力部分找到。