0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

TensorRT和Triton助力微信OCR降低耗时和成本

星星科技指导员 来源:NVIDIA 作者:NVIDIA 2022-04-13 14:44 次阅读

简介

• 本案例中通过NVIDIA T4 GPUTensorRT和Triton, 帮助微信OCR降低整体耗时46%, 并将系统的失败率降低81%,同时降低了高达78%的服务器数量。

• 本案例主要应用到 NVIDIA GPU ,TensorRT和Triton。

客户简介

腾讯微信是一款跨平台的通讯工具。支持通过手机网络发送语音、图片、视频和文字等。截至2021年6月,微信在全球拥有超过12亿活跃用户,是国内活跃用户最多的社交软件。

微信识物是一款主打物品识别的 AI 产品,通过相机拍摄物品,更高效、更智能地获取信息。2020 年,微信识物拓展了更多识别场景,上线了微信版的图片搜索。打开微信扫一扫,左滑切换到“识物”功能,对准想要了解的物品正面,可以获取对应的物品信息,包括物品百科、相关资讯、相关商品

2021年1月, 微信发布的微信8.0,版本更新支持图片文字提取的功能。用户在聊天界面和朋友圈中长按图片就可以提取图片中文字,然后一键转发、复制或收藏。

挑战

微信识物包含检测、图像召回、信息提炼等环节,OCR主要包括识别和检测,这两种应用都有非常大的计算量,在用Pytorch进行模型的推理时,一方面时延特别大,导致用户体验受损;另一方面,显存占用很大,单张NVIDIA T4上部署的模型数比较少,导致推理请求的并发数上不去,请求失败的概率太高,只能通过增加机器的方式来提高并发能力,业务部署成本较高。再次,使用的模型经常变化,而业务需要更换后的模型能够快速地加速和上线部署。

方案

基于以上挑战,腾讯微信选择了采用NVIDIA 的TensorRT对模型进行推理加速,并利用NVIDIA Triton推理服务器在T4 GPU上进行在线部署,在提升用户体验的同时,大幅降低了服务成本。

1、 通过使用TensorRT对微信识物和OCR的模型进行加速,在都使用FP32的情况下,与Pytorch相对,时延降低50%左右。

2、 在OCR的识别和检测阶段,使用TensorRT结合NVIDIA T4 GPU 的FP16 Tensor Core,在保证精度的同时,识别的时延进一步降低了50%,检测降低了20%。

3、 在微信识物的分类和检测任务中,通过使用NVIDIA T4 GPU 的int8 Tensor Core,并结合QAT,在满足精度要求的前提下,进一步大幅提升了性能。

4、 通过使用FP16和int8 低精度模式,在大幅降低推理时延的同时,大大减少了显存的占用,在FP16模式下,单模型显存占用仅占FP32模式的40%–50%, 而在int8模式下,单模型显存占用仅占FP32模式的30%左右。在提高单张T4卡上部署的模型数量的同时,大幅提高了单GPU的推理请求并发能力。

5、 Triton的dynamic batch和多实例等特性,帮助微信将在满足时延要求的同时,提高了系统整体的并发能力,将系统失败降低了81%。

6、 TensorRT可以对模型进行快速的加速,Triton则可以对加速后的模型进行快速的部署,满足了业务对修改后的模型进行快速部署的需求,同时也大大减少了工程人员的工作量。

效果

通过使用NVIDIA的TensorRT对微信识物和OCR的模型进行加速,在降低单次推理时延50%以上的同时,节约了多达64%的显存。结合Triton的dynamic batch和多实例的功能,OCR的整体时延降低了46%,系统失败率降低了81%。大大提高了用户的体验,并且服务器的数量减少了多达78%,极大降低了服务的成本。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • NVIDIA
    +关注

    关注

    14

    文章

    4996

    浏览量

    103213
  • gpu
    gpu
    +关注

    关注

    28

    文章

    4744

    浏览量

    129017
  • 服务器
    +关注

    关注

    12

    文章

    9218

    浏览量

    85578
收藏 人收藏

    评论

    相关推荐

    Triton编译器与GPU编程的结合应用

    Triton编译器简介 Triton编译器是一种针对并行计算优化的编译器,它能够自动将高级语言代码转换为针对特定硬件优化的低级代码。Triton编译器的核心优势在于其能够识别并行模式,自动进行代码
    的头像 发表于 12-25 09:13 241次阅读

    Triton编译器如何提升编程效率

    在现代软件开发中,编译器扮演着至关重要的角色。它们不仅将高级语言代码转换为机器可执行的代码,还通过各种优化威廉希尔官方网站 提升程序的性能。Triton 编译器作为一种先进的编译器,通过多种方式提升编程效率,使得
    的头像 发表于 12-25 09:12 230次阅读

    Triton编译器的优化技巧

    在现代计算环境中,编译器的性能对于软件的运行效率至关重要。Triton 编译器作为一个先进的编译器框架,提供了一系列的优化威廉希尔官方网站 ,以确保生成的代码既高效又适应不同的硬件架构。 1. 指令选择
    的头像 发表于 12-25 09:09 230次阅读

    Triton编译器的优势与劣势分析

    Triton编译器作为一种新兴的深度学习编译器,具有一系列显著的优势,同时也存在一些潜在的劣势。以下是对Triton编译器优势与劣势的分析: 优势 高效性能优化 : Triton编译器通过块级数
    的头像 发表于 12-25 09:07 257次阅读

    Triton编译器在机器学习中的应用

    1. Triton编译器概述 Triton编译器是NVIDIA Triton推理服务平台的一部分,它负责将深度学习模型转换为优化的格式,以便在NVIDIA GPU上高效运行。Triton
    的头像 发表于 12-24 18:13 391次阅读

    Triton编译器的常见问题解决方案

    Triton编译器作为一款专注于深度学习的高性能GPU编程工具,在使用过程中可能会遇到一些常见问题。以下是一些常见问题的解决方案: 一、安装与依赖问题 检查Python版本 Triton编译器通常
    的头像 发表于 12-24 18:04 482次阅读

    Triton编译器支持的编程语言

    Triton编译器支持的编程语言主要包括以下几种: 一、主要编程语言 Python :Triton编译器通过Python接口提供了对Triton语言和编译器的访问,使得用户可以在Python环境中
    的头像 发表于 12-24 17:33 372次阅读

    Triton编译器与其他编译器的比较

    Triton编译器与其他编译器的比较主要体现在以下几个方面: 一、定位与目标 Triton编译器 : 定位:专注于深度学习中最核心、最耗时的张量运算的优化。 目标:提供一个高度抽象、灵活、高效
    的头像 发表于 12-24 17:25 380次阅读

    Triton编译器功能介绍 Triton编译器使用教程

    Triton 是一个开源的编译器前端,它支持多种编程语言,包括 C、C++、Fortran 和 Ada。Triton 旨在提供一个可扩展和可定制的编译器框架,允许开发者添加新的编程语言特性和优化威廉希尔官方网站
    的头像 发表于 12-24 17:23 428次阅读

    TensorRT-LLM低精度推理优化

    本文将分享 TensorRT-LLM 中低精度量化内容,并从精度和速度角度对比 FP8 与 INT8。首先介绍性能,包括速度和精度。其次,介绍量化工具 NVIDIA TensorRT Model
    的头像 发表于 11-19 14:29 327次阅读
    <b class='flag-5'>TensorRT</b>-LLM低精度推理优化

    降低成本城域网

    电子发烧友网站提供《降低成本城域网.pdf》资料免费下载
    发表于 10-12 11:46 0次下载
    <b class='flag-5'>降低成本</b>城域网

    能源管理系统如何降低运维成本

    智能运维管理系统、电能集抄系统、移动端app的应用,有效降低了人工成本和运维成本,优化了运行策略,实现了设备的使用寿命延长,降低了运维成本
    的头像 发表于 04-16 14:45 557次阅读
    能源管理系统如何<b class='flag-5'>降低</b>运维<b class='flag-5'>成本</b>?

    在AMD GPU上如何安装和配置triton

    最近在整理python-based的benchmark代码,反过来在NV的GPU上又把Triton装了一遍,发现Triton的github repo已经给出了对应的llvm的commit id以及对应的编译细节,然后跟着走了一遍,也顺利的安装成功,只需要按照如下方式即可完
    的头像 发表于 02-22 17:04 2419次阅读
    在AMD GPU上如何安装和配置<b class='flag-5'>triton</b>?

    【BBuf的CUDA笔记】OpenAI Triton入门笔记一

    这里来看官方的介绍:https://openai.com/research/triton ,从官方的介绍中我们可以看到OpenAI Triton的产生动机以及它的目标是什么,还可以看到一些经典算法的实现例子展示。
    的头像 发表于 01-23 10:00 2587次阅读
    【BBuf的CUDA笔记】OpenAI <b class='flag-5'>Triton</b>入门笔记一

    Torch TensorRT是一个优化PyTorch模型推理性能的工具

    那么,什么是Torch TensorRT呢?Torch是我们大家聚在一起的原因,它是一个端到端的机器学习框架。而TensorRT则是NVIDIA的高性能深度学习推理软件工具包。Torch TensorRT就是这两者的结合。
    的头像 发表于 01-09 16:41 1779次阅读
    Torch <b class='flag-5'>TensorRT</b>是一个优化PyTorch模型推理性能的工具