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

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

3天内不再提示

NVIDIA T4 GPU加速VIVO推荐系统部署

星星科技指导员 来源:NVIDIA 作者:NVIDIA 2022-05-20 15:27 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

案例简介及其应用背景

VIVO AI中台的最终目的是为2.6亿+ VIVO用户提供极致的智能服务,而NVIDIA则为VIVO推荐系统提供强大的算力支持以实践优化。

推荐系统的大规模部署带来了诸多工程化挑战,借助NVIDIA TensorRT, Triton and MPS (Multi-Process Service) 及单张T4 GPU推理卡,其性能优于约6台以上的78核CPU服务器,成本方面也降低75%。

团队共实践和比较了三种不同的工程方案,其中,性价比最高的“通用GPU方案”充分发挥了MPS和TensorFlow的性能,开创性地解决了推荐场景的难题,包含:如何满足频繁的算法迭代需求,如何开发不支持的运算操作插件,以及如何改善低效的推理服务性能等。

VIVO AI平台致力于建设完整的人工智能中台,搭建全面的、行业领先的大规模分布式机器学习平台,应用于内容推荐、商业变现、搜索等多种业务场景,为2.6亿+ VIVO用户提供极致的智能服务。

VIVO AI中台始终服务于企业往智能化深度发展的需求,在数据中台基础上增加了一体化智能服务的概念。并且立足于数据的获取、存储、特征处理、分析、模型构建、训练、评估等智能服务相关的任务环节,使其高度组件化、配置化、自动化。

pYYBAGKHQvqAeiYGAAC4OnxwTiY315.png

Figure 1. AI中台系统架构图 (图片来源于VIVO研究院授权)

在整个AI中台架构中,推荐中台则作为最重要的核心,也是最具商业价值的部分,不仅需承载VIVO亿级用户,日活千万的数据量也包含在内。本文从推荐系统工程化的角度,解读了以下三方面内容:VIVO 的智能推荐系统是如何运行的?在实际应用场景中遇到过什么挑战?NVIDIA GPU如何加速推荐系统的部署?

poYBAGKHQvuAJSBqAAD5cQ8WHoI849.png

Figure 2. 推荐中台系统架构图 (图片来源于VIVO研究院授权)

经过验证,本方案可以有效解决推荐业务中GPU通用性问题;同时能更高效的利用GPU。目前已经在部分推荐业务中落地。经过压测,性能方面,单张T4 GPU推理卡,性能优于约6台以上的78核CPU服务器。成本方面,VIVO自研通用GPU方案,在TensorRT方案基础上,取得了更高的QPS和更低的延迟,可节省成本约75%!

本案例主要应用到 NVIDIA T4 GPU 和相关工具包括NVIDA TensorRT, Triton, MPS等。

客户简介

VIVO是一家以设计驱动创造伟大产品,打造以智能终端和智慧服务为核心的科技公司,也是一家全球性的移动互联网智能终端公司。致力于为消费者打造拥有极致拍照、畅快游戏、Hi-Fi音乐的智能手机产品。根据《2020胡润中国10强消费电子企业》报告显示,VIVO以1750亿人民币排名第3位。

客户挑战

在工程实践中,VIVO推荐系统面临的第一个问题是如何平滑的把多种推荐业务逻辑从CPU平台向GPU平台迁移。鉴于当前已经存在多个推荐业务场景,包括应用商店,手机浏览器,负一屏信息流等。每个场景都有自己的算法模型和业务流程,如何把多种分散的智能服务整合到一个统一的推荐中台,同时要兼顾当前的业务的无损迁移是一个巨大的挑战。

一直以来,CPU是客户主要的支撑推荐业务场景的主流硬件平台。但VIVO工程团队却发现在推理服务中,CPU的表现始终无法达到要求标准,不仅算力较弱,应对复杂模型时,响应延迟和QPS也无法满足实时性和高并发的需求。

此时,客户尝试改用NVIDIA GPU来实现推荐业务的推理服务,有效解决CPU算力和性能的瓶颈的同时,也期待更大的成本优势。经过大量的工程实践,结果表明,单台基于NVIDIA T4 GPU的推理服务器,性能可以等同于24台CPU机器。毋庸置疑, GPU的整体表现皆具有性能和成本的优势。据此,客户也认为使用GPU作为推荐业务场景的推理平台,已成为了公司乃至行业的共识。

应用方案

由于GPU芯片架构的独特性,不经优化的原始TensorFlow模型,很难高效利用GPU的算力。为了解决这个问题,VIVO工程团队投入了大量的人力和时间进行推荐模型优化及转换。而首先着手设计的是TensorRT方案,即是使用NVIDIA推理加速工具TensorRT,结合 Triton的serving方式,以最大化GPU整体收益。

具体来说,把训练导出的TensorFlow模型经过Onnx转换成TensorRT模型,进而使用NVIDIA提供的推理服务框架Triton加载TensorRT模型。业务代码使用VIVO封装Triton的JNI接口,将业务请求输入TensorRT模型去做推理计算。

pYYBAGKHQvyAUmP_AADQbgmnO_A133.png

Figure 3. 推荐业务流程图 (图片来源于VIVO研究院授权)

实测结果表明,该方案取得了预期的线上收益。性能方面,单张T4 GPU推理卡,性能优于约6台以上的78核CPU服务器。以如下场景为例,在相同的精排服务请求:QPS为600,BatchSize为3000时,不同方案的成本,TensorRT方案可节省成本约14%:

pYYBAGKHQxWATR69AAARdIgpnIk709.png

为了进一步提升线上收益,最大化GPU利用率,NVIDIA机器学习团队配合 VIVO继续优化现有效果,探索更多的技术方案可行性。

经过深入探讨,我们发现目前的方案(Triton+TensorRT)确实可以有效利用GPU,但是也存在一些问题。比如很多推荐业务场景,算法模型迭代更新频率高,工程化开发周期无法满足频繁更新的需求。此外,部分推荐模型存在算子不支持的情况,需要手动开发TensorRT plugin,短时间内也无法上线。总体来说,这样的开发流程通用性不够好,也较难有效的支持算法持续迭代。

因此,我们迫切需要实现一套机制,既要保证GPU的推理性能,更要具备良好的通用性。经过多次工程化尝试,我们针对性提出适合自身的推荐系统推理加速方案,即VIVO自研通用GPU方案。

本方案通过多进程 + MPS + TensorFlow runtime的方式,有效的提高了GPU的使用率,且部分场景无需转换TensorRT模型。该方案的主要设计目标是:

多进程模型,管理和守护模型服务进程,有序的更新模型

添加原生TensorFlow中不支持GPU的算子

加载模型时,动态替换原来的不支持GPU的算子

poYBAGKHQv2AB3yJAABiajyhbFE804.jpg

Figure 4. 自研通用GPU方案示意图 (图片来源于VIVO研究院授权)

此外,考虑到具体工程实践中,VIVO算法部门和工程部门需要同步开发,如何解耦算法工程团队和推理加速团队的开发任务,因此推出了可配置的推理引擎服务,加速迭代开发效率。

pYYBAGKHQv6AJKR7AACu12MqDm0472.png

Figure 5. 自研可配置推理引擎示意图 (图片来源于VIVO研究院授权)

方案效果及影响

经过验证,本方案可以有效解决推荐业务中GPU通用性问题;同时能更高效的利用GPU。目前已经在部分推荐业务中落地。经过压测,VIVO自研通用GPU方案,在TensorRT方案基础上,取得了更高的QPS和更低的延迟,可节省成本约75%!

下表详细对比了在相同精排请求:QPS为600,BatchSize为3000时,不同方案的成本。

poYBAGKHQyCAPoPqAAAYisHVhsY125.png

同时,我们测试了负一屏信息流推荐场景,结果同样表明,无论是QPS或是推理延迟(测试选用业界标准P99/P95指标),自研通用GPU方案都优于TensorRT方案和CPU方案。

poYBAGKHQyqAaijNAAAeU3sTpq8325.png

展望未来,VIVO推荐系统工程团队会继续探索新技术,持续积累 GPU工程经验,并且沉淀到平台中,最终赋能到各个业务线。

审核编辑:郭婷

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

    关注

    68

    文章

    11375

    浏览量

    226424
  • NVIDIA
    +关注

    关注

    14

    文章

    5727

    浏览量

    110298
  • gpu
    gpu
    +关注

    关注

    28

    文章

    5324

    浏览量

    136217
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    2.7” Front Light Panel T4 T5 11103-xx产品解析:为超薄设备照明带来新方案

    2.7” Front Light Panel T4 T5 11103-xx产品解析:为超薄设备照明带来新方案 在电子设备设计中,显示照明是至关重要的一环。今天,我们来深入了解一款名为2.7
    的头像 发表于 05-09 14:05 125次阅读

    NVIDIA向Kubernetes社区捐赠动态资源分配GPU驱动程序

    此外,NVIDIA 在 KubeCon Europe 大会上宣布推出适用于 GPU 加速工作负载的机密容器解决方案、NVIDIA KAI Scheduler 更新,以及用于实现大规模
    的头像 发表于 04-01 09:10 884次阅读

    Oracle和NVIDIA合作加速向量搜索和企业数据处理

    Oracle 和 NVIDIA 正在与客户合作,将 GPU 加速的向量索引构建应用于实际工作负载。Oracle Private AI Services Container 初期支持 CPU 执行,现
    的头像 发表于 03-23 15:26 544次阅读

    英飞凌携手NVIDIA,依托数字孪生技术加速部署安全可靠的机器人

    管理系统及安全领域的优势,以及 NVIDIA 的 AI、机器人和仿真平台,共同助力生态系统设计并推动人形机器人的部署
    发表于 03-19 16:52 1359次阅读
    英飞凌携手<b class='flag-5'>NVIDIA</b>,依托数字孪生技术<b class='flag-5'>加速</b><b class='flag-5'>部署</b>安全可靠的机器人

    NVIDIA推出BlueField-4 STX存储架构

    NVIDIA 今日宣布推出 NVIDIA BlueField-4® STX 模块化参考架构,该架构可助力企业、云计算及 AI 服务商轻松部署加速
    的头像 发表于 03-18 14:40 346次阅读

    NVIDIA RTX PRO 5000 Blackwell GPU的深度评测

    NVIDIA RTX PRO 5000 Blackwell 是 NVIDIA RTX 5000 Ada Generation 的升级迭代产品,其各项核心指标均针对 GPU 加速工作流的
    的头像 发表于 01-06 09:51 4931次阅读
    <b class='flag-5'>NVIDIA</b> RTX PRO 5000 Blackwell <b class='flag-5'>GPU</b>的深度评测

    NVIDIA Omniverse基于Container的部署推流方案

    为了让客户能够高效安装和部署 NVIDIA Omniverse 及 NVIDIA Isaac 平台,NVIDIA 现已推出简单便捷的容器化部署
    的头像 发表于 12-17 10:17 1076次阅读
    <b class='flag-5'>NVIDIA</b> Omniverse基于Container的<b class='flag-5'>部署</b>推流方案

    NVIDIA RTX PRO 2000 Blackwell GPU性能测试

    越来越多的应用正在使用 AI 加速,而无论工作站的大小或形态如何,都有越来越多的用户需要 AI 性能。NVIDIA RTX PRO 2000 Blackwell 是全新 NVIDIA
    的头像 发表于 11-28 09:39 7299次阅读
    <b class='flag-5'>NVIDIA</b> RTX PRO 2000 Blackwell <b class='flag-5'>GPU</b>性能测试

    NVIDIA推出NVQLink高速互连架构

    NVIDIA 推出 NVIDIA NVQLink,这是一种开放式系统架构,可将 GPU 计算的极致性能与量子处理器紧密结合,以构建加速的量子
    的头像 发表于 11-03 14:53 958次阅读

    FPGA和GPU加速的视觉SLAM系统中特征检测器研究

    Nvidia Jetson Orin与AMD Versal)上最佳GPU加速方案(FAST、Harris、SuperPoint)与对应FPGA加速方案的性能,得出全新结论。
    的头像 发表于 10-31 09:30 948次阅读
    FPGA和<b class='flag-5'>GPU</b><b class='flag-5'>加速</b>的视觉SLAM<b class='flag-5'>系统</b>中特征检测器研究

    OpenAI和NVIDIA宣布达成合作,部署10吉瓦NVIDIA系统

    此次合作将助力 OpenAI 构建和部署至少 10 吉瓦(gigawatt)的 AI 数据中心,这些数据中心将采用 NVIDIA 系统,包含数百万块 NVIDIA
    的头像 发表于 09-23 14:37 1640次阅读
    OpenAI和<b class='flag-5'>NVIDIA</b>宣布达成合作,<b class='flag-5'>部署</b>10吉瓦<b class='flag-5'>NVIDIA</b><b class='flag-5'>系统</b>

    Cadence 借助 NVIDIA DGX SuperPOD 模型扩展数字孪生平台库,加速 AI 数据中心部署与运营

    [1]  利用搭载 DGX GB200 系统NVIDIA DGX SuperPOD[2] 数字孪生系统实现了库的重大扩展 。借助 NVIDIA 高性能
    的头像 发表于 09-15 15:19 1740次阅读

    NVIDIA RTX PRO 4500 Blackwell GPU测试分析

    今天我们带来全新 NVIDIA Blackwell 架构 GPU —— NVIDIA RTX PRO 4500 Blackwell 的测试,对比上一代产品 NVIDIA RTX 450
    的头像 发表于 08-28 11:02 4599次阅读
    <b class='flag-5'>NVIDIA</b> RTX PRO 4500 Blackwell <b class='flag-5'>GPU</b>测试分析

    NVIDIA桌面GPU系列扩展新产品

    NVIDIA 桌面 GPU 系列扩展,推出 NVIDIA RTX PRO 4000 SFF Edition GPU 和 RTX PRO 2000 Blackwell
    的头像 发表于 08-18 11:50 1752次阅读

    如何在魔搭社区使用TensorRT-LLM加速优化Qwen3系列模型推理部署

    TensorRT-LLM 作为 NVIDIA 专为 LLM 推理部署加速优化的开源库,可帮助开发者快速利用最新 LLM 完成应用原型验证与产品部署
    的头像 发表于 07-04 14:38 2554次阅读