Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >NVIDIA Blackwell RTX GPU与CUDA 12.8框架更新指南

NVIDIA Blackwell RTX GPU与CUDA 12.8框架更新指南

作者头像
GPUS Lady
发布于 2025-02-04 13:27:45
发布于 2025-02-04 13:27:45
1.8K06
代码可运行
举报
文章被收录于专栏:GPUS开发者GPUS开发者
运行总次数:6
代码可运行

随着NVIDIA Blackwell RTX GPU的发布,为了确保应用程序与这些新一代GPU的兼容性和最佳性能,应用开发者必须更新到最新的AI框架。NVIDIA专门发布了一个指南,详细介绍与NVIDIA Blackwell RTX GPU兼容所需的核心软件库更新,特别是CUDA 12.8的相关信息。

CUDA 12.8更新指南

驱动程序要求

在NVIDIA Blackwell GPU上运行任何NVIDIA CUDA工作负载,需要兼容的驱动程序(R570或更高版本)。这确保了CUDA应用程序能够充分利用Blackwell GPU的计算能力。

PTX与CUDA Toolkit 12.8

  • PTX支持:如果您的应用程序捆绑了PTX,您的代码将能够在Blackwell上即时编译(JIT)。为了确保最佳性能,NVIDIA建议使用CUDA Toolkit 12.8或更高版本重新构建您的应用程序。
  • 稳定性问题:如果不满足上述条件,您可能会在Blackwell上遇到稳定性问题。因此,强烈建议更新到CUDA Toolkit 12.8。

CUDA 12.8的特

CUDA 12.8是首个原生支持Blackwell(计算能力10.0和12.0)的CUDA版本。使用CUDA Toolkit 12.8构建的应用程序将能够在任何R525或更高版本的驱动程序上原生运行,这得益于CUDA的小版本兼容性保证。

构建未来兼容的CUDA应用程序

为了构建能够即时编译到未来NVIDIA GPU的应用程序,NVIDIA推荐以下构建方法:

  • 发送PTX:发送PTX代码可以确保为Blackwell GPU编写的代码能够即时编译到未来的架构上。虽然这会在新GPU上首次加载时增加少量延迟,但它确保了您的应用程序无需更新即可继续运行。
  • 多版本支持:建议至少发送低版本的PTX用于不常用但仍在生产中的GPU,SASS(计算架构汇编)用于用户基础中广泛使用的GPU,以及额外的PTX(虚拟架构)版本以支持未来GPU的最佳性能

使用CUDA Toolkit 12.8重新编译应用程序

以下是一个使用CUDA Toolkit 12.8重新编译应用程序的示例命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
nvcc -gencode arch=compute_52,code=compute_52
-gencode arch=compute_86,code=sm_86
-gencode arch=compute_89,code=sm_89
-gencode=arch=compute_120,code=sm_120
-gencode=arch=compute_120,code=compute_120
main.cu -o main

CUDA Toolkit与数学库的其他信息

  • NVIDIA cuDNN:自cuDNN版本9起,它们基于CUDA 12或更高版本构建,因此具有硬件前向兼容性。但编译cuDNN PTX会显著增加延迟,并且无法保证在未来GPU上的完全性能,因此建议升级。
  • NVIDIA cuBLAS和NVIDIA cuFFT:这两个库包含PTX代码,并与任何新GPU架构前向兼容。但为了获得完全性能,建议升级库,因为新架构需要不同的优化,特别是新的Tensor Core指令。

TensorRT更新指南

TensorRT 10.8支持NVIDIA Blackwell GPUs,并增加了对FP4的支持。如果您尚未从8.x升级到10.x,请确保了解潜在的API更改。

部署引擎

TensorRT引擎的行为类似于CUDA内核。正常的TensorRT引擎仅包含cubin代码,而前向兼容的硬件可以考虑PTX代码。使用10.x版本编译引擎时的一个挑战是,引擎可能依赖于特定设备的SM计数,这限制了它们在具有更多SM的设备上的兼容性。

构建设备上的引擎

TensorRT使用自动调优来确定给定GPU上最快的执行路径。由于这些优化因GPU SKU而异,直接在最终用户设备上构建引擎可确保最佳性能和兼容性。

预构建引擎

您还可以预构建引擎并将其包含在应用程序中,以避免在最终用户设备上构建时间。NVIDIA提供TensorRT-Cloud服务,提供各种RTX GPU用于构建引擎。

构建引擎的策略

构建引擎的总数可以使用以下公式计算,并根据用例考虑以下因素:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#models * #computeCapability * #enginesPerComputeCapability
  • 模型数:应用程序中包含的ONNX文件或INetworkDefinitions的数量。
  • 每架构的引擎数:为了减轻性能差异,可能需要增加每计算能力的引擎数。

软件前向兼容性

默认情况下,TensorRT引擎仅与用于构建它们的TensorRT版本兼容。但是,在构建过程中启用版本兼容性允许与未来TensorRT版本的前向兼容性。这可能会降低吞吐量,因为运行精简运行时限制了可用的操作符实现。

ONNX Runtime

CUDA执行提供程序

CUDA执行提供程序不包含PTX,建议从源代码针对CUDA 12.8编译库,并更新所有数学库(cuDNN、cuBLAS等)到CUDA 12.8版本。

DML执行提供程序

DML执行提供程序仅需要Blackwell兼容的驱动程序(R570或更高版本),并将以全性能运行。

TensorRT执行提供程序

使用与TensorRT 10.x二进制兼容的版本。如果从源代码编译,建议直接针对10.8编译。

llama.cpp

llama.cpp与最新的Blackwell GPU兼容。为了获得最大性能,我们推荐以下升级,具体取决于您使用的后端:

CUDA后端

使用CUDA 12.8构建,针对计算能力120,并升级cuBLAS,以避免最终用户的PTX JIT编译,并提供针对Blackwell优化的cuBLAS例程。

Vulkan后端

为了获得最佳性能,请使用最新的llama.cpp,包括2024年12月的优化,特别是支持VK_NV_cooperative_matrix2,这可以在RTX GPU上的Vulkan后端中使用Tensor Core。

Pytorch

PyPi

要在Windows上原生使用PyTorch与Blackwell,需要一个带有CUDA 12.8的PyTorch构建。PyTorch将很快提供这些构建。

WSL 2

为了获得最佳体验,建议在Linux环境中使用PyTorch,无论是作为原生操作系统还是通过Windows上的WSL 2。

Docker

为了第0天的支持,我们提供了一个包含CUDA 12.8的PyTorch的预打包容器,以启用Blackwell GPU。该容器可以在NGC上找到,标签为25.01。

原文:https://forums.developer.nvidia.com/t/software-migration-guide-for-nvidia-blackwell-rtx-gpus-a-guide-to-cuda-12-8-pytorch-tensorrt-and-llama-cpp/321330

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-01-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 GPUS开发者 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
什么是cuDNN?如何安装CUDA和cuDNN
文章原文指路:https://juejin.cn/post/7479993915041660968
CloudStudio
2025/03/13
4670
深度学习|如何确定 CUDA+PyTorch 版本
对于深度学习初学者来说,配置深度学习的环境可能是一大难题,因此本文主要讲解CUDA; cuDNN; Pytorch 三者是什么,以及他们之间的依赖关系。
数据科学工厂
2023/09/28
11.8K0
深度学习|如何确定 CUDA+PyTorch 版本
又双叒叕有公司想打破Nvidia垄断?这回让CUDA代码直接编译运行于AMD GPU
AMD一直在努力弥合由Nvidia的CUDA主导地位所造成的差距,特别是在针对PyTorch等AI项目方面。同时,众多工具也纷纷加入这一行列,共同挑战Nvidia的权威地位。
GPUS Lady
2024/07/19
4360
RTX4060+ubuntu22.04.3+cuda12.4.1+cudnn9.1.1安装验证
这款笔记本电脑因为触摸板驱动限制,需要选择ubuntu22.04.3以上版本;而RTX4060+cuda限制需要选择ubuntu22.04.3版本,更新版本的cuda并非一定不能使用,而是官方文档验证过的是此版本。
tankaro
2025/02/23
3090
Caffe框架整理
Caffe框架下载地址:https://github.com/BVLC/caffe
算法之名
2023/11/08
2180
英伟达CUDA介绍及核心原理
CUDA定义了一种针对GPU特性的指令集,允许程序员直接编写针对GPU硬件的代码。这些指令专为大规模并行处理而设计,能够高效地驱动GPU上的数千个并行处理单元(如CUDA核心或流处理器)同时工作。
用户7353950
2024/04/30
4.2K0
英伟达CUDA介绍及核心原理
Windows下使用VS Code搭建英伟达CUDA开发环境
首先,你需要从NVIDIA官网下载并安装CUDA Toolkit。确保选择与你的GPU兼容的版本,以及适合Windows操作系统的版本。下载地址:https://developer.nvidia.com/cuda-downloads
用户7353950
2024/07/05
3.3K0
Windows下使用VS Code搭建英伟达CUDA开发环境
DAY3:阅读CUDA C编程接口
我们正带领大家开始阅读英文的《CUDA C Programming Guide》,今天是第三天,我们将用三天时间来学习CUDA 的编程接口。希望在接下来的97天里,您可以学习到原汁原味的CUDA,同时能养成英文阅读的习惯。 本文共计1533字,阅读时间30分钟 3. Programming Interface CUDA C provides a simple path for users familiar with the C programming language to easily write
GPUS Lady
2018/06/25
1.1K0
NVIDIA希望有更多支持CUDA的编程语言
CUDA 并行计算平台可以使用 C++、Fortran 和 Python 进行编程,但该公司正在寻找其他人来运行其 GPU。
云云众生s
2024/03/29
1760
探秘NVIDIA RTX AI:llama.cpp如何让你的Windows PC变身AI超人
想象一下,你的Windows PC突然拥有了超能力,能够迅速处理复杂的AI任务,就像电影里的超级电脑一样。这一切,都要归功于NVIDIA RTX AI平台和它的秘密武器——llama.cpp!
GPUS Lady
2024/10/04
8620
PyTorch 2.7 发布,进一步助力 NVIDIA 技术生态加速产业智能化转型
全球领先的开源深度学习框架 PyTorch 正式发布 2.7 版本。此次版本不仅在性能、稳定性和开发体验方面进行了重要升级,更进一步强化了与 NVIDIA 全栈技术平台的深度协作,为生成式AI、大模型部署、自动驾驶、智慧医疗等产业应用提供了更强有力的技术支撑。
GPUS Lady
2025/04/28
2370
PyTorch 2.7 发布,进一步助力 NVIDIA 技术生态加速产业智能化转型
什么是cuDNN?如何安装CUDA和cuDNN
文章主要介绍了 nvidia 硬件和驱动、cuda 工具包、cuDNN 系列库和 TensorRT 的相关内容。以 Cloud Studio 为例,讲解了其 GPU 环境的使用,包括开启空间、查看相关版本、安装和验证 cuDNN 等操作,还提及了手动安装/升级 cuDNN 的方法,以及可选的 TensorRT 的安装和验证。
CloudStudio
2025/03/17
1.1K0
什么是cuDNN?如何安装CUDA和cuDNN
【论文解读】基于MLIR生成矩阵乘法的高性能GPU代码,性能持平cuBLAS
本文是对 https://arxiv.org/abs/2108.13191 这篇论文进行解读,学习一下如何基于MLIR编译器基础设施生成高效的GPU代码。本文的阅读的先后顺序分别为:
BBuf
2022/04/06
2.7K0
【论文解读】基于MLIR生成矩阵乘法的高性能GPU代码,性能持平cuBLAS
Python CUDA 编程 - 1 - 基础概念
英伟达不同时代产品的芯片设计不同,每代产品背后有一个微架构代号,微架构均以著名的物理学家为名,以向先贤致敬。当前比较火热的架构有:
为为为什么
2022/08/04
1.2K0
Python CUDA 编程 - 1 - 基础概念
在 Nvidia Docker 容器编译构建显存优化加速组件 xFormers
本篇文章,聊聊如何在新版本 PyTorch 和 CUDA 容器环境中完成 xFormers 的编译构建。
soulteary
2024/01/15
5030
在 Nvidia Docker 容器编译构建显存优化加速组件 xFormers
【安装教程】Ubuntu16.04+Caffe+英伟达驱动410+Cuda10.0+Cudnn7.5+Python2.7+Opencv3.4.6安装教程
对于caffe的安装过程,可以说是让我终身难忘。两个星期就为了一个caffe,这其中的心路历程只有自己懂。从实验室的低配置显卡开始装Ubuntu,到编译caffe,解决各种报错,这个过程花费了一周的时间。把cuda版本和N卡驱动版本一降再降,仍然不管用。因此手剁了一台8000的高配置主机。之后为了平衡实验室项目,首先花了半天时间将win10下的相关和其他杂七杂八的软件配置。只有以为只需Ubuntu安装好,caffe编译成功即可,不想安装完Ubuntu之后,却电脑没有引导启动项,把网上的方法试了个遍,却仍无法解决。因此听到一种说法是,win10的启动路径覆盖了Ubuntu启动路径。因此,决定重新再来,将自己的固态和机械全部初始化,首先在固态上安装Ubuntu16.04,在机械上安装Win10,对于双系统的安装请参照我的另一篇博客:Win10与Ubuntu16.04双系统安装教程。在这种情况下参加那个caffe安装成功。请注意,对于双系统建议先安装Ubuntu,并将caffe编译成功之后在去机械上安装Win10。Caffe的安装教程请参照如下安装教程。
AI那点小事
2020/04/20
1.9K0
【安装教程】Ubuntu16.04+Caffe+英伟达驱动410+Cuda10.0+Cudnn7.5+Python2.7+Opencv3.4.6安装教程
Ubuntu22安装N卡驱动以及CUDA
官网网址:https://www.nvidia.com/Download/index.aspx?lang=en-us
Here_SDUT
2024/02/03
3.8K0
Ubuntu22安装N卡驱动以及CUDA
如何解决 RuntimeError: CUDA error: CUBLAS_STATUS_ALLOC_FAILED when calling cublasCreate(handle) 错误
如何解决 RuntimeError: CUDA error: CUBLAS_STATUS_ALLOC_FAILED when calling cublasCreate(handle) 错误
猫头虎
2025/03/23
5650
NVIDIA Chat With RTX还没更新么?原来改头换面啦!
51长假第二天,突然发现许久不更新的NVIDIA Chat With RTX聊天机器人,迎来的重大更新!
GPUS Lady
2024/05/06
3450
NVIDIA Chat With RTX还没更新么?原来改头换面啦!
如何编写PTX 代码
通过以上步骤,您可以方便地获得或编写 PTX 代码。PTX 是 CUDA 编程中的重要组成部分,掌握它有助于您深入了解 GPU 并行计算的底层机制
jack.yang
2025/04/05
1380
推荐阅读
相关推荐
什么是cuDNN?如何安装CUDA和cuDNN
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验