当前位置:首页 > 技术分析 > 正文内容

BERT-Large推理仅需1.2毫秒!NV发布最新TensorRT 8推理加速器

ruisui883个月前 (02-16)技术分析11

来源:Nvidia

编辑:Priscilla 好困

【新智元导读】近日,英伟达悄悄地发布了TensorRT 8,BERT-Large推理仅需1.2毫秒!同时还加入了量化感知训练和对稀疏性的支持,实现了性能200%的提升。项目已开源。


2019年黄仁勋在GTC China正式发布了TensorRT 7,并称其是「我们实现的最大飞跃」。


然而今年TensorRT 8的发布却十分低调。



相比于7.0,TensorRT 8可以说是实现了2倍的性能提升。


  1. 1.2毫秒内实现BERT-Large的推理


  1. 通过量化感知训练让INT8的精度达到了与FP32相当的水平


  1. 支持稀疏性,让Ampere GPU拥有更快的推理速度



TensorRT 8可应用于各种不同的场景,例如自动送货机器人、自动化农场、自动光学检测、视频分析,还有能够转写和输入的聊天机器人。


TensorRT

TensorRT是一种高性能的深度学习推理(Inference)的优化器和运行引擎,以TensorFlow等框架训练得到的模型作为输入,为CUDA GPU生成优化了的模型运行时间。


TensorRT为深度学习推理应用的生产部署提供了INT8和FP16优化,通过减少推理的时间来降低应用程序的延迟。


同时,TensorRT可以通过寻找计算图中可以融合的节点和边,减少计算和内存访问,并利用稀疏张量核心提供额外的性能提升。



1. 降低混合精度

通过将模型量化到INT8,同时保留精度,最大限度地提高吞吐量


2. 层和张量融合

通过融合内核中的节点,优化GPU内存和带宽的使用


3. 内核自动调整

根据目标GPU平台选择最佳数据层和算法


4. 动态张量内存

最大限度地减少内存占用,并有效地重复使用张量的内存


5. 多数据流执行

使用可扩展的设计来并行处理多个输入流


6. 时间融合

通过动态生成的内核,在时间上优化循环神经网络


7.0

相比于只支持30种模型的TensorRT 5,TensorRT 7支持各种类型的RNN、Transformer和CNN,并且还支持多达1000种不同的计算变换和优化,包括BERT、RoBERTa等。



在交互式会话AI方面,TensorRT 7可以让推理时间缩短到0.3秒,是CPU速度的10倍。



那问题来了,这次新推出的TensorRT 8做出了哪些改进呢?


推理速度更快大型语言模型(LSLM),如BERT、GPT-2和XL-Net,极大提升了许多自然语言处理(NLP)任务的准确性。自2018年10月发布以来,BERT(Bidirectional Encoder Representations from Transformers)及其所有的许多变体,仍然是最受欢迎的语言模型之一,并且仍然可以提供SOTA的准确性。

通过最新的优化,TensorRT 8可以加速所有大型语言模型,并将推理时间减少到TensorRT 7的50%。


让交互式会话AI更智能



英伟达AI软件产品管理总监Kari Briski指出,TensorRT 8在BERT- Large的推理上取得了突破。


TensorRT 8能够在短短1.2毫秒内对BERT进行推理。


这种推理速度「可以让对话式AI更智能」,提高众多交互式应用程序的性能。


稀疏性让Ampere GPUs推理更快


在AI推理和机器学习中,稀疏性是指包含许多不会显着影响计算的零或值的数字矩阵。



多年来,机器学习研究人员一直在努力使用数字来加速人工智能,目标是减少深度学习所需的矩阵乘法堆,缩短获得结果的时间。


在TensorRT 8中使用稀疏性技术,能够提升英伟达Ampere架构的GPU性能。


在保证推理精度的同时,降低深度学习模型中的部分权重,减小模型所需要的带宽和内存。


内存有富余,就可以分配给那些需要计算的部分,推理速度自然也上来了。


量化感知训练提高精度



一直以来,人工智能培训是在数据中心完成的,用大量数据、几十万小时的语音数据进行训练,将模型训练到最高级别的准确度。


但是,经过大量训练、准确度高的模型运行起来可能会很慢,模型也会变得越来越复杂。


根据O'Reilly最近发布的调查结果显示,86.7%的组织现在正在考虑、评估或投入生产AI产品。


德勤报告称,53%采用人工智能的企业在2019年和2020年在技术和人才上的支出超过2000万美元。


换言之,现在不仅是数据中心会进行推理部分的工作,在嵌入式系统、汽车系统中也会有推理工作。


这就要求在推理过程中,保持训练时的最高准确度,并且在硬件设备上运行,尽可能缩短响应时间和增加客户吞吐量。


因此,TensorRT 8优化了Transformer,增强了性能。


同时利用量化感知训练提高准确性,将INT8精度的准确度提高了2倍,既保证精度,也减少了计算和存储成本。


TensorRT的应用


英伟达表示,自五年前TensorRT首次发布以,下载量已经达到近250万次,共27500家公司加入到该生态之中,应用的领域涵盖医疗保健、汽车、金融和零售等。


应用TensorRT的公司


开源AI公司Hugging Face与英伟达合作推出了AI文本分析、神经搜索和对话式AI服务。


该公司的产品总监Jeff Boudier称,在TensorRT 8的帮助下,Hugging Face在BERT上的推理延迟仅有1.2毫秒。


在临床医疗领域应用方面,GE医疗心血管超声首席工程师Erik Steen表示,临床医生需要花时间来评估超声图像。


但TensorRT实时的推理能力,极大提高了GE医疗的视图检测算法性能,极大加快了临床医生的工作效率。


而微信也实现了基于TensorRT-and-INT8 QAT的模型推理加速,加快微信搜索的核心业务。


TensorRT 8无疑还会促使客服机器人反应更快更聪明,让实时翻译更迅速。


现在,TensorRT 8最新版本已在GitHub中开源。


部署TensorRT


下载TensorRT Build


git clone -b master https://github.com/nvidia/TensorRT TensorRT
cd TensorRT
git submodule update --init --recursive


如果使用TensorRT OSS Build容器,TensorRT库已经预装在/usr/lib/x86_64-linux-gnu下。否则需要下载TensorRT GA build。


Ubuntu 18.04 x86-64 cuda-11.3

cd ~/Downloadstar -xvzf TensorRT-8.0.1.6.Ubuntu-18.04.x86_64-gnu.cuda-11.3.cudnn8.2.tar.gzexport TRT_LIBPATH=`pwd`/TensorRT-8.0.1.6


Windows x86-64 cuda-11.3

cd ~\Downloads
Expand-Archive .\TensorRT-8.0.1.6.Windows10.x86_64.cuda-11.3.cudnn8.2.zip
$Env:TRT_LIBPATH = '$(Get-Location)\TensorRT-8.0.1.6'
$Env:PATH += 'C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\15.0\Bin\'


构建环境


1. 生成TensorRT-OSS Build容器


TensorRT-OSS Build容器可以使用提供的Dockerfiles和Build脚本来生成。


Ubuntu 18.04 x86-64 cuda-11.3

./docker/build.sh --file docker/ubuntu-18.04.Dockerfile --tag tensorrt-ubuntu18.04-cuda11.3 --cuda 11.3.1


2. 启动TensorRT-OSS Build容器


Ubuntu 18.04

./docker/launch.sh --tag tensorrt-ubuntu18.04-cuda11.3 --gpus all


构建TensorRT-OSS


生成Makefiles或VS项目(Windows)并构建。


Linux x86-64 cuda-11.3

cd $TRT_OSSPATH
mkdir -p build && cd build
cmake .. -DTRT_LIB_DIR=$TRT_LIBPATH -DTRT_OUT_DIR=`pwd`/out
make -j$(nproc)


Windows x86-64 Powershell

cd $Env:TRT_OSSPATH
mkdir -p build ; cd build
cmake .. -DTRT_LIB_DIR=$Env:TRT_LIBPATH -DTRT_OUT_DIR='$(Get-Location)\out' -DCMAKE_TOOLCHAIN_FILE=..\cmake\toolchains\cmake_x64_win.toolchain
msbuild ALL_BUILD.vcxproj



参考资料:

https://github.com/NVIDIA/TensorRT

https://developer.nvidia.com/blog/nvidia-announces-tensorrt-8-slashing-bert-large-inference-down-to-1-millisecond/

https://venturebeat.com/2021/07/20/nvidia-releases-tensorrt-8-for-faster-ai-inference/



扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/1978.html

标签: gitsubmodule
分享给朋友:

“BERT-Large推理仅需1.2毫秒!NV发布最新TensorRT 8推理加速器” 的相关文章

Ubuntu 24.10发行版登场:Linux 6.11内核、GNOME 47桌面环境

IT之家 10 月 11 日消息,Canonical 昨日发布新闻稿,正式推出代号为 Oracular Oriole 的 Ubuntu 24.10 发行版。新版在内核方面升级到最新 6.11 版本,并采用 GNOME 47 桌面环境。Ubuntu 24.10 发行版调整了内核策略,开始选择最新的上游...

2021最全VUE面试题,奥利给

1. vue-router用过没,哪些常用的钩子函数路由钩子的执行流程,钩子函数种类有:全局守卫、路由守卫、组件守卫。首页可以控制导航跳转, beforeEach , afterEach 等,?般?于页? title 的修改。?些需要登录才能调整??的重定向功能。beforeEach 主要有3个参数...

2024最新版:前端性能优化方案汇总

前端训练营:1v1私教,终身辅导计划,帮你拿到满意的 offer。 已帮助数百位同学拿到了中大厂 offer。欢迎来撩~~~~~~~~Hello,大家好,我是 Sunday。前端性能优化一直是很多同学非常关注的问题,在日常的面试中也是经常会被问到的点。所以今天咱们就花一点时间来了解一下2024最新的...

雅马哈TMAX 560 TECH MAX 外媒深度测评

应雅马哈(Yamaha)的邀请,在葡萄牙埃斯托里尔对全新的Yamaha TMAX 560 Tech Max踏板车进行了测试,在这里TMAX 560 Tech Max售价为11649英镑。雅马哈TMAX长期以来一直站在踏板车的顶端,就声誉和知名度而言,它是当之无愧的大踏板界NO.1。2020 TMAX...

22《Vue 入门教程》VueRouter 路由嵌套

1. 前言本小节我们介绍如何嵌套使用 VueRouter。嵌套路由在日常的开发中非常常见,如何定义和使用嵌套路由是本节的重点。同学们在学完本节课程之后需要自己多尝试配置路由。2. 配置嵌套路由实际项目中的应用界面,通常由多层嵌套的组件组合而成。同样地,URL 中各段动态路径也按某种结构对应嵌套的各层...

基于 vue3.0 小程序拖拽定制

今天给大家分享一个使用Vue3编写的自由DIY小程序页面。mbDIY 一款基于vue3.x构建的可拖拽定制小程序模板。支持新建页面、自由拖拽模块、复制/移动、自定义模块样式等功能。整个项目分为页面、模块、控件三大部分。模块里面的组件可拖拽至主面板区,编辑后保存即可预览效果。快速安装# 克隆项目 gi...