MLPerf Inference 0.7应用
MLPerf Inference 0.7应用
三个趋势继续推动着人工智能推理市场的训练和推理:不断增长的数据集,日益复杂和多样化的网络,以及实时人工智能服务。 MLPerf 推断 0 . 7 是行业标准 AI 基准测试的最新版本,它解决了这三个趋势,为开发人员和组织提供了有用的数据,以便为数据中心和边缘的平台选择提供信息。
基准测试扩展了推荐系统、语音识别和医学成像系统。它已经升级了自然语言处理( NLP )的工作负载,以进一步挑战测试中的系统。下表显示了当前的一组测试。有关这些工作负载的更多信息,请参阅 https://github.com/mlperf/inference
|
Application |
Network Name |
|
Recommendation* |
DLRM (99% and 99.9% accuracy targets) |
|
NLP* |
BERT (99% and 99.9% accuracy targets) |
|
Speech Recognition* |
RNN-T |
|
Medical Imaging* |
3D U-Net (99% and 99.9% accuracy targets) |
|
Image Classification |
ResNet-50 v1.5 |
|
Object Detection |
Single-Shot Detector with MobileNet-v1 |
|
Objection Detection |
Single-Shot Detector with ResNet-34 |
表 1 . MLPerf 推断 0 . 7 工作负载。
*新工作量
此外,针对数据中心和边缘的多个场景进行了基准测试:

图 1 . MLPerf 推理 0 . 7 平台类别和场景。
NVIDIA 轻松赢得了数据中心和边缘类别的所有测试和场景。虽然这种出色的性能大部分可以追溯到GPU 体系结构,但更多的是与工程师所做的出色的优化工作有关,现在开发人员社区可以使用这些工作。
本文深入研究了导致这些优秀结果的因素,包括软件优化以提高执行效率,多实例 GPU ( MIG )使一个 A100GPU 最多可以作为七个独立的 GPUs 运行,以及 Triton 推断服务器 支持在数据中心规模轻松部署推理应用程序。
检查的优化
NVIDIA GPUs 支持 int8 和 FP16 的高吞吐量精确推断,因此可以在默认情况下获得出色的推断性能,而无需任何量化工作。然而,在保持精度的同时将网络量化到 int8 精度是最高的性能选项,可以使数学吞吐量提高 2 倍。
在本次提交的资料中,发现 FP16 需要满足 BERT 的最高精度目标。对于这个工作负载,使用了 FP16 张量核心。在其它工作负载中,使用 int8 精度达到了最高精度目标( DLRM 和 3D Unet 的 FP32 的 99 . 9% 以上)。此外, int8 提交的性能得益于 TensorRT 7 . 2 软件版本中的全面加速。
许多推断工作负载需要大量的预处理工作。 NVIDIA 开源 DALI 库旨在加速对 GPU 的预处理并避免 CPU 瓶颈。本文使用 DALI 实现了 RNN-T 基准的 wav 到 mel 的转换。
NLP 推断对具有特定序列长度(输入中的单词数)的输入文本进行操作。对于批处理推理,一种方法是将所有输入填充到相同的序列长度。但是,这会增加计算开销。 TensorRT 7 . 2 增加了三个插件来支持 NLP 的可变序列长度处理。提交的 BERT 使用这些插件获得了超过 35% 的端到端性能。
加速稀疏矩阵处理是 A100 中引入的一种新功能。稀疏化网络确实需要重新训练和重新校准权值才能正常工作,因此稀疏性在封闭类别中不是可用的优化,但在开放类别中是允许的。开放类别 BERT 提交使用稀疏性实现了 21% 的吞吐量提高,同时保持了与封闭提交相同的准确性。
了解 MLPerf 中的 MIG
MIG 内存。 MIG 允许选择是将 A100 作为单个大的 GPU 操作,还是将多个较小的 GPU 作为一个单独的大型 GPU 来运行,每个小的 GPU 可以在它们之间隔离的情况下为不同的工作负载提供服务。图 2 显示了将此技术用于测试的 MLPerf 结果。

图 2 . MIG 与完整 T4 相比的推理性能。
图 2 比较了单个 MIG 实例与完整的 T4GPU 实例的边缘脱机性能,因为 A100 最多可支持七个 MIG 实例。可以看到,超过四个 MIG 测试结果得分高于完整的 T4GPU 。这对应用程序意味着,可以加载一个包含多个网络和应用程序的单个 A100 ,并以与 T4 相同或更好的性能运行每个网络和应用程序。这样可以减少部署的服务器数量,释放机架空间,并降低能耗。此外,在单个 A100 上同时运行多个网络有助于保持 GPU 的高利用率,因此基础设施管理人员可以优化使用已部署的计算资源。
Triton 推断服务器
在一个网络经过训练和优化之后,它就可以部署了,但这并不像打开交换机那么简单。在一个以人工智能为动力的服务上线之前,有几个挑战需要解决。这包括提供适当数量的服务器来维护sla ,并确保在 AI 基础设施上运行的所有服务都有良好的用户体验。然而,“正确的数字”可能会随着时间的推移或由于工作量需求的突然变化而改变。理想的解决方案还可以实现负载平衡,从而使基础设施得到最佳利用,但不会出现超额订阅。此外,一些管理者希望在单个 GPUs 上运行多个网络。 Triton 推断服务器解决了这些挑战和其它问题,使基础设施管理人员更容易部署和维护负责提供人工智能服务的服务器群。
在这一轮中,也使用 Triton 推理服务器提交了结果,这简化了人工智能模型在生产中的大规模部署。这个开源推理服务软件允许团队从任何框架( TensorFlow 、 TensorRT 、 PyTorch 、 ONNX 运行时或自定义框架)部署经过训练的 AI 模型。它们还可以从本地存储、 Google 云平台或 Amazon S3 部署在任何基于 GPU – 或 CPU 的基础设施(云、数据中心或边缘)上。

图 3 . Triton 推断服务器与 Kubernetes 完全集成。
Triton 声波风廓线仪也可作为 Docker 容器提供,是为基于微服务的应用而设计的。 Triton 声波风廓线仪与 Kubernetes 紧密集成,实现动态负载平衡,保证所有网络推理操作顺利进行。 Triton 声波风廓线仪的 GPU 指标帮助 Kubernetes 将推断工作转移到可用的 GPU 上,并在需要时扩展到数百个 GPUs 。新的 Triton 声波风廓线仪 2 . 3 支持使用 KFServing 的无服务器推断、 Python 自定义后端、用于会话式人工智能的解耦推理、支持 A100MIG 以及 Azure ML 和 DeepStream 5 .
0 集成。
图 4 显示了 Triton 声波风廓线仪与运行 A100 定制推理服务解决方案相比的总体效率,这两种配置都使用 TensorRT 运行。

图 4 . Triton 声波风廓线仪在 MLPerf 推理 0 . 7 结果中提供了与高度定制的推理服务实现几乎相同的性能。
Triton 声波风廓线仪的效率很高,在这五个网络中提供同等或接近它的性能。为了提供这样的性能,该团队对 Triton 声波风廓线仪进行了许多优化,例如用于与应用程序进行低延迟通信的新的轻量级数据结构、用于改进动态批处理的批处理数据加载以及用于 TensorRT 后端的 CUDA 图形以获得更高的推理性能。这些增强功能可作为 20 . 09 Triton 声波风廓线仪集装箱 的一部分提供给每个应用程序。除此之外, Triton 声波风廓线仪还简化了部署,无论是在本地还是在云端。这使得所有网络推断都能顺利进行,即使在意外的需求高峰来袭时也是如此。
加速推理应用程序
考虑到驱动人工智能推理的持续趋势, NVIDIA 推理平台和全栈方法提供了最佳性能、最高通用性和最佳可编程性, MLPerf 推理 0 . 7 测试性能证明了这一点。现在,和开发人员社区的其他成员都可以使用这些成果,主要是以开源软件的形式。此外, TensorRT 和 Triton 推理服务器可从 NVIDIA NGC 免费获得,以及预训练模型、深度学习框架、行业应用框架和头盔图。 A100GPU 已经证明了其充分的推理能力。随着完整的 NVIDIA 推理平台, A100GPU 已经准备好迎接最严峻的人工智能挑战。
MLPerf Inference 0.7应用的更多相关文章
- AI解决方案:边缘计算和GPU加速平台
AI解决方案:边缘计算和GPU加速平台 一.适用于边缘 AI 的解决方案 AI 在边缘蓬勃发展.AI 和云原生应用程序.物联网及其数十亿的传感器以及 5G 网络现已使得在边缘大规模部署 AI 成为可能 ...
- GPU加速计算
GPU加速计算 NVIDIA A100 Tensor Core GPU 可针对 AI.数据分析和高性能计算 (HPC),在各种规模上实现出色的加速,应对极其严峻的计算挑战.作为 NVIDIA 数据中心 ...
- NVIDIA Tensor Cores解析
NVIDIA Tensor Cores解析 高性能计算机和人工智能前所未有的加速 Tensor Cores支持混合精度计算,动态调整计算以加快吞吐量,同时保持精度.最新一代将这些加速功能扩展到各种工作 ...
- Git如何fork别人的仓库并作为贡献者提交代码
例如 要fork一份google的MLperf/inference代码,下面介绍具体做法:预备知识git里的参考有几种表示,分别是上游仓库,远程仓库和本地仓库,逻辑关系如下拉取代码的顺序:别的大牛的代 ...
- [ch04-03] 用神经网络解决线性回归问题
系列博客,原文在笔者所维护的github上:https://aka.ms/beginnerAI, 点击star加星不要吝啬,星越多笔者越努力. 4.3 神经网络法 在梯度下降法中,我们简单讲述了一下神 ...
- ZAM 3D 制作简单的3D字幕 流程(二)
原地址:http://www.cnblogs.com/yk250/p/5663907.html 文中表述仅为本人理解,若有偏差和错误请指正! 接着 ZAM 3D 制作简单的3D字幕 流程(一) .本篇 ...
- ZAM 3D 制作3D动画字幕 用于Xaml导出
原地址-> http://www.cnblogs.com/yk250/p/5662788.html 介绍:对经常使用Blend做动画的人来说,ZAM 3D 也很好上手,专业制作3D素材的XAML ...
- 微信小程序省市区选择器对接数据库
前言,小程序本身是带有地区选着器的(网站:https://mp.weixin.qq.com/debug/wxadoc/dev/component/picker.html),由于自己开发的程序的数据是很 ...
- osg编译日志
1>------ 已启动全部重新生成: 项目: ZERO_CHECK, 配置: Debug x64 ------1> Checking Build System1> CMake do ...
随机推荐
- Win64 驱动内核编程-10.突破WIN7的PatchGuard
突破WIN7的PatchGuard WIN64 有两个内核保护机制,KPP 和 DSE.KPP 阻止我们 PATCH 内核,DSE 拦截我们加载驱动.当然 KPP 和 DSE 并不是不可战胜的,WIN ...
- JMM 最最最核心的概念:Happens-before 原则
关于 Happens-before,<Java 并发编程的艺术>书中是这样介绍的: Happens-before 是 JMM 最核心的概念.对应 Java 程序员来说,理解 Happens ...
- 启动QQ时出现无法访问个人文件夹怎么决解
找了一圈的百度,真正有用的. 在设置中进行修改. https://zhidao.baidu.com/question/2073820786837168348.html 打开设置的其中页面 你的IT管理 ...
- 【mybatis】mybatis分页拦截器搭配bootstrap-table使用
提前说明: 这一种方式已被我自己pass掉了,已经被新的方式迭代了.但是记录下自己曾经的成果还是有必要的,而且里面的思想还是不变的,另外技术不就是在不断地迭代中升级吗.千万不要想着一步完美,那样会让你 ...
- 批处理用WINRAR只压缩某类型的文件
1:新建文件夹sql back 和 back,在sql back 文件夹内新建test1.dbb和test2.bak文件 2:新建批处理文件rar.bat,编辑文件: @echo off for %% ...
- Linux下查看在线用户及用户进程
#该服务器下的所有用户运行进程的情况 ps -ax -u #查看java程序下用户的进程情况 ps -ax -u |grep java 或 ps aux|grep java cat /etc/p ...
- SimpleDateFormat线程不安全的5种解决方案!
1.什么是线程不安全? 线程不安全也叫非线程安全,是指多线程执行中,程序的执行结果和预期的结果不符的情况就叫做线程不安全. 线程不安全的代码 SimpleDateFormat 就是一个典型的线程不 ...
- Java 在Word中添加数学公式(Latex/MathML)
本文介绍通过Java程序在Word文档中添加数学公式的方法.添加时,可添加latex数学公式或者MathML数学公式.详细内容见下文. 1. 程序环境 Word测试文档:.docx 2013 Word ...
- 02 CTF WEB 知识梳理
1. 工具集 基础工具 Burpsuit, Python, FireFox(Hackbar, FoxyProxy, User-Agent Swither .etc) Burpsuit 代理工具,攻击w ...
- Django(21)migrate报错的解决方案
前言 在讲解如何解决migrate报错原因前,我们先要了解migrate做了什么事情,migrate:将新生成的迁移脚本.映射到数据库中.创建新的表或者修改表的结构. 问题1:migrate怎么判断哪 ...