跳到主要内容
返回时间线
NVIDIA Technical Blog来源发表:

CUDA 13.5 把 Vera Rubin 从开发者预览推到正式生产,Windows on Arm 也进了 DGX Station

核心概要

NVIDIA 发布 CUDA 13.5,对 Vera Rubin 平台的支持从早期开发者访问转为正式可用,面向企业生产部署;Windows on Arm 支持自 CUDA 13.4 起已正式可用,此次扩展到 Windows 上的 DGX Station。同一版本还加入 locality domain 与 MPS v3 的 GPU 调度定制、CUDA Tile 内核内的多 GPU 通信与 SIMT 库函数调用预览,以及 CUDA Python、CCCL 和数学库的更新。这些能力面向在已知目标架构上部署的开发者,具体收益取决于所选平台与配置。

Source-provided article image: NVIDIA CUDA 13.5 Brings NVIDIA Vera Rubin GA Support
Figure 1 · NVIDIA 开发者技术博客

深度剖析

CUDA 13.5 让 Vera Rubin 从早期开发者访问进入正式可用状态,可直接用于企业生产环境,同时把 Windows on Arm 支持从 CUDA 13.4 的正式可用状态延伸到 Windows 上的 DGX Station。 此前 Vera Rubin 只处于早期开发者访问阶段,Windows on Arm 的正式支持也尚未覆盖 DGX Station for Windows。 这一状态变化由 NVIDIA 在 CUDA 13.5 发布说明中给出,属于平台支持范围的变更,而非性能测量结果。

调度方面,应用可以在 locality domain 之间选择统一的流多处理器分区,或选择包含全部可用 SM 的分区。 默认情况下,局部化的 green-context 分区在每个域使用相同的保证 SM 数,补充 SM 留在这些分区之外。 新增的 cudaDevSmResourceGroupLocalityDomainSupplementalSms 标志与 cudaDevSmResourceGroupLocalityDomainId 配合,把这些额外 SM 纳入所选域,代价是各分区大小可能不同;应用可用 cudaDevSmResourceSplit() 的发现模式取得每个分区的 SM 数并据此分配工作。

MPS v3 把 GPU 共享的控制细化到单个服务器和客户端组,包括加权时间片、SM 分区负载均衡、基于 cgroup 的路由和按命名空间的 SM 分区指派。 此前的 MPS 对这些调度维度没有提供同等粒度的控制。 加权时间片允许为每个 MPS 服务器设定基础时间片并独立调节切换强度;负载均衡通过 --max-chunks 借用、--shareable=true 出借,MPS 在重新分配前回收借出的资源,应用仍看到稳定的基础分区大小。

CUDA Tile 内核现在可以在内核内部直接做多 GPU 通信,并预览调用 SIMT 库的设备函数。 此前 Tile 与 SIMT 库代码只能在核边界处组合,数据要经全局内存传递。 单播指针可访问另一块 NVLink 连接 GPU 的内存,多播指针与专用 multimem 操作在支持 NVLink SHARP 的 NVSwitch 结构上做归约和存储;预览阶段只覆盖库函数,从 tile 代码调用自定义 __device__ 函数计划在后续版本提供。

启示与展望

报道范围限于 NVIDIA 公布的 CUDA 13.5 功能与支持状态,面向在 CUDA 上开发或部署的研究人员与工程师;文中性能数字只对应其标注的库、算法与 GPU 条件。

Tile-SIMT 互操作在 13.5 中仅为预览且只覆盖库函数,调用自定义 __device__ 函数计划在后续版本提供;部分库性能数字以几何平均或区间形式给出,并绑定特定 GPU 与算法版本。