首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何轻松了解深度学习模型中使用了混合精度?

如何轻松了解深度学习模型中使用了混合精度?

作者头像
GPUS Lady
发布于 2019-04-29 02:44:32
发布于 2019-04-29 02:44:32
2.3K0
举报
文章被收录于专栏:GPUS开发者GPUS开发者

混合精度在计算方法中结合了不同的数值精度。NVIDIA Volta架构和Turing架构的GPU引入了TensorCore,它在单精度数学管道上提供了显著的吞吐量加速。通过将梯度张量和激活张量上的存储需求和内存流量减半,可以以较低的精度对深度学习网络进行训练,以实现高吞吐量。以下Nvidia工具可以让您分析您的模型是否最大限度地利用TensorCore。

Nsight Systems

Nvidia Nsight Systems为开发人员提供了一个全系统的性能分析工具,提供了一个完整和统一的视图,说明他们的应用程序如何利用计算机的CPU和GPU。该工具使开发人员能够可视化应用程序的算法,以确定优化和优化算法的最大机会。

开发人员可以使用NVTX(NVIDIA工具扩展库)注释源代码,在nsight系统的时间线查看器中轻松突出显示函数调用。在识别出瓶颈之后,可以使用nsight计算对单个内核进行分析。

Nsight Compute

Nsight Compute是CUDA应用程序的下一代交互式内核分析器,可从CUDA 10.0工具包获得。它通过用户界面和命令行工具为内核提供了详细的性能指标和API调试。

您可以收集关于每个执行的内核的低级统计信息,并比较多个运行。它可以直接在命令行上打印结果,或者将结果存储在报告文件中。

您可以使用命令行接口直接使用profiler启动一个训练脚本,它让您了解是否使用了张量核。表1显示了关键参数。

Command Line Option

Description

–csv

为输出指定逗号分隔的值

–nvtx

启用NVTX支持(这意味着如果python代码使用NVTX注释进行插装,那么分析器将支持指定范围内的数据收集

-o

指定内核protobuf报告的输出文件

–metrics

指定要收集的指标

sm_uu inst_executed_pipe_hmmafp32_sum metric显示执行了hmma指令,在每次内核启动时捕获nvtx堆栈。非零值表示使用了一些TensorCore。

举例:

Nvprof and NVVP

nvprof和nvvp分析工具已被CUDA开发人员广泛用于分析。

您可以在VisualProfiler中分析应用程序。探查器最初显示时间线。然后使用菜单选项 “Run->Collect Metrics and Events” 再选择“Metrics->Multiprocessor” 下的 “Tensor-Precision Function Unit Utilization” ,如图所示:

下面的图显示了在可视分析器中使用TensorCore的内核。

此外,nvprof还支持tensor_precision_fu_utilization度量,它显示了模型每个内核中TensorCore的利用率水平。这个指标首先出现在9.0版CUDA工具包中。

tensor_precision_fu_utilization:在0到10的尺度上执行Tensor Core指令的多处理器功能单元的利用率。

如果要查看哪个内核正在使用tensorCore,请使用以下命令行选项:

./nvprof -m tensor_precision_fu_utilization ./app_name

这将返回执行Tensor cores指令的多处理器函数单元的利用率级别,范围从0到10。任何显示非零值的内核都使用Tensor cores。

注意,只有通过nvprof的volta体系结构才支持度量和事件的分析。图灵体系结构nvprof只支持跟踪功能。使用nsight compute代替在Turing上显示分析度量。

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

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

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
是时候用NVIDIA Nsight 分析优化工具了!
如果您使用NVIDIA Visual Profiler或nvprof命令行工具,那么现在是时候转换到更新的工具了:NVIDIA Nsight工具。
GPUS Lady
2019/07/22
30.9K1
是时候用NVIDIA Nsight 分析优化工具了!
充分利用NVIDIA Nsight开发工具发挥Jetson Orin的最大潜力
Orin 架构以行业领先的性能为下一代边缘 AI 系统提供动力,该系统由 12 个 ARM Cortex A78 内核和 2 MB 三级缓存, NVIDIA Ampere 架构 GPU 提供 16 个流式多处理器或每个 SM 128 个 CUDA 内核的 SM,Orin 还具有用于工作负载的专用加速器,用于视频缩放、图像处理,还有光流加速器即OFA、2 个 JPEG 解码器、2 个深度学习加速器单元或支持张量 RT 的 DLA,用于深度学习操作,还有可编程视频加速器(PVA)和视频编解码引擎。Orin 使用高带宽 LPDDR5 内存,并具有一组丰富的 IO 连接选项,包括 22 个 PCI Express 通道、4 个千兆以太网连接器和 16 个 CSI 通道。凭借所有这些强大的功能,Jetson Orin 完全有能力应对边缘 AI 场景。
GPUS Lady
2023/05/29
1.6K0
充分利用NVIDIA Nsight开发工具发挥Jetson Orin的最大潜力
如何分析机器学习中的性能瓶颈
软件性能分析是达到系统最佳效能的关键,数据科学和机器学习应用程序也是如此。在 GPU 加速深度学习的时代,当剖析深度神经网络时,必须了解 CPU、GPU,甚至是可能会导致训练或推理变慢的内存瓶颈
GPUS Lady
2021/05/07
2.7K0
深度分析NVIDIA A100显卡架构(附论文&源码下载)
基于安培体系结构的NVIDIA A100 GPU是为了从其许多新的体系结构特征和优化中提供尽可能多的AI和HPC计算能力而设计的。在台积电7nm N7 FinFET制造工艺上,A100提供了比Tesla V100中使用的12nm FFN工艺更高的晶体管密度、更好的性能和更好的功率效率。一种新的Multi-Instance GPU(MIG)能为多租户和虚拟化GPU环境提供了增强的客户端/应用程序故障隔离和QoS,这对云服务提供商特别有利。一个更快和更强的错误抗力的第三代NVIDIA的NVLink互连提供了改进的多GPU性能缩放的超尺度数据中心。
计算机视觉研究院
2020/07/16
3.5K0
深度分析NVIDIA A100显卡架构(附论文&源码下载)
腾讯机智在GTC 2019
| 导语 腾讯机智团队在今年的GTC大会上做了介绍机智平台的报告,本文总结了GTC的一些主要内容以及笔者和同事的见闻。 概述 GPU Technology Conference:GPU技术大会是并行计算和人工智能公司英伟达在美国加州硅谷中心圣荷西举办的年度技术大会。自2009年开办以来已经举办十届,成为并行计算方面全世界最盛大的技术会议之一。在GTC上进行研究成果的汇报代表了计算加速领域工作的广泛同行认可以及领先水平。 主题演讲 本次GTC十周年的主题演讲包括英伟达GPU在图形学,数据科学和嵌入式领
腾讯技术工程官方号
2019/05/16
1.3K0
腾讯机智在GTC 2019
深度 | 英伟达深度学习Tensor Core全面解析
AI 科技评论消息,不久前,NVIDIA在SIGGRAPH 2018上正式发布了新一代GPU架构——Turing(图灵),黄仁勋称Turing架构是自2006年CUDA GPU发明以来最大的飞跃。Turing架构的两大重要特性便是集成了用于光线追踪的RT Core以及用于AI计算的Tensor Core,使其成为了全球首款支持实时光线追踪的GPU。
AI科技评论
2018/09/21
4.2K0
深度 | 英伟达深度学习Tensor Core全面解析
为了加速在GPU上进行深度学习训练,NVIDIA原来还做了这么多事情,你都知道么?
不同行业采用人工智能的速度取决于最大化数据科学家的生产力。NVIDIA每个月都会发布优化的NGC容器,为深度学习框架和库提供更好的性能,帮助科学家最大限度地发挥他们的潜力。英伟达持续投资于完整的数据科学栈,包括GPU架构、系统和软件栈。这种整体的方法为深度学习模型培训提供了最好的性能,NVIDIA赢得了提交给MLPerf的所有六个基准测试,这是第一个全行业的AI基准测试。NVIDIA在最近几年引入了几代新的GPU架构,最终在Volta和图灵GPU上实现了张量核心架构,其中包括对混合精度计算的本机支持。NVIDIA在MXNet和PyTorch框架上完成了这些记录,展示了NVIDIA 平台的多功能性。
GPUS Lady
2019/04/29
2.4K0
为了加速在GPU上进行深度学习训练,NVIDIA原来还做了这么多事情,你都知道么?
系统调优助手,PyTorch Profiler TensorBoard 插件教程
使用PyTorch Profiler进行性能分析已经一段时间了,毕竟是PyTorch提供的原生profile工具,个人感觉做系统性能分析时感觉比Nsys更方便一些,并且画的图也比较直观。这里翻译一下PyTorch Profiler TensorBoard Plugin的教程并分享一些使用经验,我使用的时候也是按照这个教程来来的,有一点不一样的是可以在vscode里面直接安装TensorBoard插件,然后Command+Shift+P打开vscode的命令行窗口输入TensorBoard启用TensorBoard插件并把PyTorch Profiler输出的日志文件所在的文件夹路径传给它就可以直接在vscode里面查看可视化Profile结果了。
BBuf
2024/04/18
1.2K0
系统调优助手,PyTorch Profiler TensorBoard 插件教程
Automatic differentiation package - torch.autograd
torch.autograd提供实现任意标量值函数的自动微分的类和函数。它只需要对现有代码进行最小的更改—您只需要声明张量s,对于该张量,应该使用requires_grad=True关键字计算梯度。
狼啸风云
2019/09/25
1.6K0
官方博客:英伟达的新卡如何从硬件上支持了深度学习
编者按:5 月 11 日,在加州圣何塞举办的 2017 年度 GPU 技术大会上,英伟达发布了 Tesla V100,号称史上最强的 GPU 加速器。发布之后,英伟达第一时间在官方开发者博客放出一篇博
AI研习社
2018/03/28
9270
官方博客:英伟达的新卡如何从硬件上支持了深度学习
为深度学习选择最好的GPU
在进行机器学习项目时,特别是在处理深度学习和神经网络时,最好使用GPU而不是CPU来处理,因为在神经网络方面,即使是一个非常基本的GPU也会胜过CPU。
deephub
2023/02/01
2.5K0
英伟达A100 Tensor Core GPU架构深度讲解
HPC已经超越了运行计算密集型应用的超级计算机,如天气预报、油气勘探和金融建模。今天,数以百万计的NVIDIA GPU正在加速运行在云数据中心、服务器、边缘系统甚至桌面工作站中的许多类型的HPC应用程序,为数百个行业和科学领域服务。
计算机视觉研究院
2020/07/14
3.3K0
cuda和显卡驱动对应版本关系
NVIDIA® CUDA® 工具包的发行说明可在线找到:1. CUDA 12.4 Release Notes — Release Notes 12.4 documentation。
云未归来
2025/07/20
3650
CUDA Toolkit 11.8 新功能揭晓
NVIDIA 发布了最新的 CUDA Toolkit 软件版本 11.8。此版本的重点是通过新的硬件功能增强编程模型和 CUDA 应用程序加速。 NVIDIA Hopper 和 Ada Lovelace 中特定于架构的新功能最初是通过库和框架增强功能公开的。NVIDIA Hopper 架构的完整编程模型增强功能将从 CUDA Toolkit 12 系列开始发布。 CUDA 11.8 有几个重要的特性。这篇文章提供了关键功能的概述。 支持NVIDIA Hopper 和 NVIDIA Ada 架构 CUDA 应
GPUS Lady
2022/10/08
2.3K0
CUDA Toolkit 11.8 新功能揭晓
集成3400 条commit!PyTorch 1.10 正式版发布,能帮你选batch size的框架
---- 新智元报道   来源:GitHub 编辑:LRS 【新智元导读】历时四个多月,PyTorch 1.10终于发布了正式版,这次的更新内容性能更强,对安卓的支持更多,对开发人员也更友好了! 10月21日晚上,PyTorch 1.10终于发布! 本次更新包含了自1.9版本以来的426名贡献者的3400多条commit共同组成,更新内容主要在于改善PyTorch的训练、性能以及开发人员可用性。 集成了 CUDA Graphs API以减少调用CUDA时CPU开销; FX、torch.specia
新智元
2023/05/22
3640
集成3400 条commit!PyTorch 1.10 正式版发布,能帮你选batch size的框架
[源码分析] Facebook如何训练超大模型---(4)
我们在前文介绍过,微软 ZeRO 可以对一个万亿参数模型可以使用 8 路模型并行、64 路管道并行和 8 路数据并行在 4,096 个 NVIDIA A100 GPU 上进行扩展。而FSDP(Fully Sharded Data Parallel)是Facebook 深度借鉴微软ZeRO之后提出的PyTorch DDP升级版本,可以认为是对标微软 ZeRO,其本质是 parameter sharding。Parameter sharding 就是把模型参数等切分到各个GPU之上。我们会以 Google,微软和 Facebook 的论文,博客以及代码来进行学习分析。
罗西的思考
2022/05/09
1.6K0
[源码分析] Facebook如何训练超大模型---(4)
深度学习|如何确定 CUDA+PyTorch 版本
对于深度学习初学者来说,配置深度学习的环境可能是一大难题,因此本文主要讲解CUDA; cuDNN; Pytorch 三者是什么,以及他们之间的依赖关系。
数据科学工厂
2023/09/28
13.4K0
深度学习|如何确定 CUDA+PyTorch 版本
深度学习框架机器学习的开源库TensorFlow
在机器学习的领域中,张量指的是描述神经网络的数学模型中使用的多维数组。换言之,张量通常是一个矩阵或矢量的更高维泛化。 通过一种使用秩来显示维数的简单表示法,张量可以将复杂的 n 维矢量和超形状表示为 n 维数组。张量有两个属性:数据类型和形状。 关于 TensorFlow TensorFlow 是一个开源的深度学习框架,于 2015 年末依据 Apache 2.0 许可进行发布。自那以后,它成为了在全球得到最广泛采用的深度学习框架之一(根据它的 GitHub 项目数量来判断)。 TensorFlow 的起源
程序你好
2018/07/20
1.3K0
【大模型部署实战】VLLM+OpenWebUI实现DeepSeek模型部署,文末有福利
vLLM(Very Large Language Model Serving)是由加州大学伯克利分校团队开发的高性能、低延迟大语言模型(LLM)推理和服务框架。其核心创新在于PagedAttention技术,通过将注意力键值(KV)缓存分页管理,显著提升显存利用率并降低碎片化问题,使吞吐量比传统框架(如Hugging Face Transformers)提升24倍。该框架支持连续批处理、动态显存分配和多GPU并行推理,能够高效处理8k+长上下文请求,并兼容OpenAI API接口,开发者可快速部署Hugging Face模型。通过集成FP8、AWQ等量化技术,vLLM在保证推理精度的同时大幅降低资源消耗,目前已成为企业级AI部署(如DeepSeek-R1 671B模型分布式集群)的首选方案。
AI浩
2025/03/17
8530
【大模型部署实战】VLLM+OpenWebUI实现DeepSeek模型部署,文末有福利
【AI系统】GPU 架构回顾(从2010年-2017年)
1999 年,英伟达发明了 GPU(graphics processing unit),本文将介绍英伟达 GPU 从 Fermi 到 Blackwell 共 9 代架构,时间跨度从 2010 年至 2024 年,具体包括费米(Feimi)、开普勒(Kepler)、麦克斯韦(Maxwell)、帕斯卡(Pashcal)、伏特(Volt)、图灵(Turing)、安培(Ampere)和赫柏(Hopper)和布莱克韦尔(Blackwell)架构。经过 15 年的发展,CUDA 已成为英伟达的技术“护城河”,Tensor Core5.0,NVLink5.0,NVswitch4.0,Transformer Engine2.0 等技术迭代更新,正如英伟达公司官方宣传语所言:“人工智能计算领域的领导者,推动了 AI、HPC、游戏、创意设计、自动驾驶汽车和机器人开发领域的进步。”
用户11307734
2024/11/27
3940
推荐阅读
相关推荐
是时候用NVIDIA Nsight 分析优化工具了!
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档