案例簡介及其應(yīng)用背景
VIVO AI中臺的最終目的是為2.6億+ VIVO用戶提供極致的智能服務(wù),而NVIDIA則為VIVO推薦系統(tǒng)提供強大的算力支持以實踐優(yōu)化。
推薦系統(tǒng)的大規(guī)模部署帶來了諸多工程化挑戰(zhàn),借助NVIDIA TensorRT, Triton and MPS (Multi-Process Service) 及單張T4 GPU推理卡,其性能優(yōu)于約6臺以上的78核CPU服務(wù)器,成本方面也降低75%。
團隊共實踐和比較了三種不同的工程方案,其中,性價比最高的“通用GPU方案”充分發(fā)揮了MPS和TensorFlow的性能,開創(chuàng)性地解決了推薦場景的難題,包含:如何滿足頻繁的算法迭代需求,如何開發(fā)不支持的運算操作插件,以及如何改善低效的推理服務(wù)性能等。
VIVO AI平臺致力于建設(shè)完整的人工智能中臺,搭建全面的、行業(yè)領(lǐng)先的大規(guī)模分布式機器學習平臺,應(yīng)用于內(nèi)容推薦、商業(yè)變現(xiàn)、搜索等多種業(yè)務(wù)場景,為2.6億+ VIVO用戶提供極致的智能服務(wù)。
VIVO AI中臺始終服務(wù)于企業(yè)往智能化深度發(fā)展的需求,在數(shù)據(jù)中臺基礎(chǔ)上增加了一體化智能服務(wù)的概念。并且立足于數(shù)據(jù)的獲取、存儲、特征處理、分析、模型構(gòu)建、訓練、評估等智能服務(wù)相關(guān)的任務(wù)環(huán)節(jié),使其高度組件化、配置化、自動化。
Figure 1. AI中臺系統(tǒng)架構(gòu)圖 (圖片來源于VIVO研究院授權(quán))
在整個AI中臺架構(gòu)中,推薦中臺則作為最重要的核心,也是最具商業(yè)價值的部分,不僅需承載VIVO億級用戶,日活千萬的數(shù)據(jù)量也包含在內(nèi)。本文從推薦系統(tǒng)工程化的角度,解讀了以下三方面內(nèi)容:VIVO 的智能推薦系統(tǒng)是如何運行的?在實際應(yīng)用場景中遇到過什么挑戰(zhàn)?NVIDIA GPU如何加速推薦系統(tǒng)的部署?
Figure 2. 推薦中臺系統(tǒng)架構(gòu)圖 (圖片來源于VIVO研究院授權(quán))
經(jīng)過驗證,本方案可以有效解決推薦業(yè)務(wù)中GPU通用性問題;同時能更高效的利用GPU。目前已經(jīng)在部分推薦業(yè)務(wù)中落地。經(jīng)過壓測,性能方面,單張T4 GPU推理卡,性能優(yōu)于約6臺以上的78核CPU服務(wù)器。成本方面,VIVO自研通用GPU方案,在TensorRT方案基礎(chǔ)上,取得了更高的QPS和更低的延遲,可節(jié)省成本約75%!
本案例主要應(yīng)用到 NVIDIA T4 GPU 和相關(guān)工具包括NVIDA TensorRT, Triton, MPS等。
客戶簡介
VIVO是一家以設(shè)計驅(qū)動創(chuàng)造偉大產(chǎn)品,打造以智能終端和智慧服務(wù)為核心的科技公司,也是一家全球性的移動互聯(lián)網(wǎng)智能終端公司。致力于為消費者打造擁有極致拍照、暢快游戲、Hi-Fi音樂的智能手機產(chǎn)品。根據(jù)《2020胡潤中國10強消費電子企業(yè)》報告顯示,VIVO以1750億人民幣排名第3位。
客戶挑戰(zhàn)
在工程實踐中,VIVO推薦系統(tǒng)面臨的第一個問題是如何平滑的把多種推薦業(yè)務(wù)邏輯從CPU平臺向GPU平臺遷移。鑒于當前已經(jīng)存在多個推薦業(yè)務(wù)場景,包括應(yīng)用商店,手機瀏覽器,負一屏信息流等。每個場景都有自己的算法模型和業(yè)務(wù)流程,如何把多種分散的智能服務(wù)整合到一個統(tǒng)一的推薦中臺,同時要兼顧當前的業(yè)務(wù)的無損遷移是一個巨大的挑戰(zhàn)。
一直以來,CPU是客戶主要的支撐推薦業(yè)務(wù)場景的主流硬件平臺。但VIVO工程團隊卻發(fā)現(xiàn)在推理服務(wù)中,CPU的表現(xiàn)始終無法達到要求標準,不僅算力較弱,應(yīng)對復(fù)雜模型時,響應(yīng)延遲和QPS也無法滿足實時性和高并發(fā)的需求。
此時,客戶嘗試改用NVIDIA GPU來實現(xiàn)推薦業(yè)務(wù)的推理服務(wù),有效解決CPU算力和性能的瓶頸的同時,也期待更大的成本優(yōu)勢。經(jīng)過大量的工程實踐,結(jié)果表明,單臺基于NVIDIA T4 GPU的推理服務(wù)器,性能可以等同于24臺CPU機器。毋庸置疑, GPU的整體表現(xiàn)皆具有性能和成本的優(yōu)勢。據(jù)此,客戶也認為使用GPU作為推薦業(yè)務(wù)場景的推理平臺,已成為了公司乃至行業(yè)的共識。
應(yīng)用方案
由于GPU芯片架構(gòu)的獨特性,不經(jīng)優(yōu)化的原始TensorFlow模型,很難高效利用GPU的算力。為了解決這個問題,VIVO工程團隊投入了大量的人力和時間進行推薦模型優(yōu)化及轉(zhuǎn)換。而首先著手設(shè)計的是TensorRT方案,即是使用NVIDIA推理加速工具TensorRT,結(jié)合 Triton的serving方式,以最大化GPU整體收益。
具體來說,把訓練導出的TensorFlow模型經(jīng)過Onnx轉(zhuǎn)換成TensorRT模型,進而使用NVIDIA提供的推理服務(wù)框架Triton加載TensorRT模型。業(yè)務(wù)代碼使用VIVO封裝Triton的JNI接口,將業(yè)務(wù)請求輸入TensorRT模型去做推理計算。
Figure 3. 推薦業(yè)務(wù)流程圖 (圖片來源于VIVO研究院授權(quán))
實測結(jié)果表明,該方案取得了預(yù)期的線上收益。性能方面,單張T4 GPU推理卡,性能優(yōu)于約6臺以上的78核CPU服務(wù)器。以如下場景為例,在相同的精排服務(wù)請求:QPS為600,BatchSize為3000時,不同方案的成本,TensorRT方案可節(jié)省成本約14%:
為了進一步提升線上收益,最大化GPU利用率,NVIDIA機器學習團隊配合 VIVO繼續(xù)優(yōu)化現(xiàn)有效果,探索更多的技術(shù)方案可行性。
經(jīng)過深入探討,我們發(fā)現(xiàn)目前的方案(Triton+TensorRT)確實可以有效利用GPU,但是也存在一些問題。比如很多推薦業(yè)務(wù)場景,算法模型迭代更新頻率高,工程化開發(fā)周期無法滿足頻繁更新的需求。此外,部分推薦模型存在算子不支持的情況,需要手動開發(fā)TensorRT plugin,短時間內(nèi)也無法上線。總體來說,這樣的開發(fā)流程通用性不夠好,也較難有效的支持算法持續(xù)迭代。
因此,我們迫切需要實現(xiàn)一套機制,既要保證GPU的推理性能,更要具備良好的通用性。經(jīng)過多次工程化嘗試,我們針對性提出適合自身的推薦系統(tǒng)推理加速方案,即VIVO自研通用GPU方案。
本方案通過多進程 + MPS + TensorFlow runtime的方式,有效的提高了GPU的使用率,且部分場景無需轉(zhuǎn)換TensorRT模型。該方案的主要設(shè)計目標是:
多進程模型,管理和守護模型服務(wù)進程,有序的更新模型
添加原生TensorFlow中不支持GPU的算子
加載模型時,動態(tài)替換原來的不支持GPU的算子
Figure 4. 自研通用GPU方案示意圖 (圖片來源于VIVO研究院授權(quán))
此外,考慮到具體工程實踐中,VIVO算法部門和工程部門需要同步開發(fā),如何解耦算法工程團隊和推理加速團隊的開發(fā)任務(wù),因此推出了可配置的推理引擎服務(wù),加速迭代開發(fā)效率。
Figure 5. 自研可配置推理引擎示意圖 (圖片來源于VIVO研究院授權(quán))
方案效果及影響
經(jīng)過驗證,本方案可以有效解決推薦業(yè)務(wù)中GPU通用性問題;同時能更高效的利用GPU。目前已經(jīng)在部分推薦業(yè)務(wù)中落地。經(jīng)過壓測,VIVO自研通用GPU方案,在TensorRT方案基礎(chǔ)上,取得了更高的QPS和更低的延遲,可節(jié)省成本約75%!
下表詳細對比了在相同精排請求:QPS為600,BatchSize為3000時,不同方案的成本。
同時,我們測試了負一屏信息流推薦場景,結(jié)果同樣表明,無論是QPS或是推理延遲(測試選用業(yè)界標準P99/P95指標),自研通用GPU方案都優(yōu)于TensorRT方案和CPU方案。
展望未來,VIVO推薦系統(tǒng)工程團隊會繼續(xù)探索新技術(shù),持續(xù)積累 GPU工程經(jīng)驗,并且沉淀到平臺中,最終賦能到各個業(yè)務(wù)線。
審核編輯:郭婷
-
cpu
+關(guān)注
關(guān)注
68文章
10898瀏覽量
212527 -
NVIDIA
+關(guān)注
關(guān)注
14文章
5065瀏覽量
103452 -
gpu
+關(guān)注
關(guān)注
28文章
4764瀏覽量
129174
發(fā)布評論請先 登錄
相關(guān)推薦
評論