案例簡介
騰訊公司利用NVIDIA TensorRT推理引擎的INT8推理能力和基于知識(shí)蒸餾的QAT訓(xùn)練,大大加速了微信中的搜索動(dòng)能,節(jié)省了約70%的計(jì)算資源。本案例主要應(yīng)用到NVIDIA T4 GPU和TensorRT。
客戶簡介及應(yīng)用背景
隨著騰訊微信的發(fā)展,微信搜索也成為其越來越重要的功能,這個(gè)功能可以用來搜索微信內(nèi)部的賬號(hào)、信息,以及搜索互聯(lián)網(wǎng)上的內(nèi)容。微信搜索月活躍用戶數(shù)量達(dá)到五億以上。搜索業(yè)務(wù)當(dāng)中使用了大量的神經(jīng)網(wǎng)絡(luò)模型,包括自然語言理解、匹配排序等等,這些模型的訓(xùn)練和推理都大量依賴于NVIDIA GPU,尤其在推理方面,NVIDIA GPU及相應(yīng)的解決方案都滿足了業(yè)務(wù)所需的延遲和吞吐要求。
客戶挑戰(zhàn)
微信搜索業(yè)務(wù)由多個(gè)子模塊構(gòu)成,包括查詢理解、匹配、搜索排序等等。由于搜索的業(yè)務(wù)特點(diǎn),這些任務(wù)對(duì)線上服務(wù)的延遲和吞吐都十分敏感。然而在最近幾年,隨著算力的提升以及算法的創(chuàng)新,很多大型復(fù)雜的神經(jīng)網(wǎng)絡(luò)模型開始應(yīng)用在這些任務(wù)上,比如BERT/Transformer等模型。
這些大模型需要的計(jì)算資源和業(yè)務(wù)上的高要求對(duì)推理端的軟硬件都是很大的挑戰(zhàn),必須針對(duì)具體的硬件做極致的優(yōu)化。而且對(duì)于大模型的推理,很多技術(shù)被探索、應(yīng)用在這些場景上以便實(shí)現(xiàn)性能加速、節(jié)約資源,比如模型壓縮、剪枝、低精度計(jì)算等。這些技術(shù)可能會(huì)帶來精度下降等負(fù)面影響,限制了這些技術(shù)的廣泛應(yīng)用。因此,如何在保證精度效果以及服務(wù)吞吐延遲需求的情況下,高效地對(duì)這些模型進(jìn)行推理成為了業(yè)務(wù)上的巨大挑戰(zhàn)。NVIDIA GPU以及NVIDIA TensorRT給這一場景提供了解決方案。
應(yīng)用方案
為了滿足線上服務(wù)的需求,并且盡可能地節(jié)約成本,微信搜索選擇使用NVIDIA T4 GPU以及TensorRT推理引擎來進(jìn)行線上大模型的推理。
線上服務(wù)對(duì)于吞吐和延遲有很高的要求,微信搜索選擇使用NVIDIA T4 GPU以及TensorRT推理引擎來做線上推理服務(wù),利用NVIDIA基于TensorRT開源的BERT實(shí)現(xiàn),可以很方便地在FP16精度下實(shí)現(xiàn)滿足需求的線上推理功能。這個(gè)方案在線上取得了很好的效果。
在此基礎(chǔ)上,微信搜索希望進(jìn)一步加快推理速度,節(jié)約計(jì)算資源,以便更好地服務(wù)用戶,節(jié)約成本。低精度推理成為了很好的選擇。NVIDIA GPU從圖靈(Turing)架構(gòu)開始就有了INT8 Tensor Core,其計(jì)算吞吐量最高可達(dá)FP16精度的2倍。同時(shí)低精度推理跟其他的優(yōu)化方法也是正交的,可以同時(shí)使用其他技術(shù)比如剪枝、蒸餾等做進(jìn)一步提升。微信搜索線上大量使用NVIDIA T4 GPU,非常適合使用INT8推理。而且TensorRT對(duì)INT8推理也有良好的支持。利用TensorRT的“校準(zhǔn)”(Calibration)功能,能夠方便地將Float精度模型轉(zhuǎn)換為INT8低精度模型,實(shí)現(xiàn)低精度推理。通過低精度推理,模型的單次推理時(shí)間大大縮短。
通過“校準(zhǔn)”來做模型轉(zhuǎn)換已經(jīng)在很多計(jì)算機(jī)視覺模型上被驗(yàn)證是十分有效的,并且其精度和推理性能都十分優(yōu)秀。然而對(duì)于像BERT一類的模型, “校準(zhǔn)” 無法使得精度和性能都完全令人滿意。因此,騰訊搜索使用了NVIDIA開發(fā)的基于PyTorch/TensorFlow的量化工具進(jìn)行基于知識(shí)蒸餾的量化感知訓(xùn)練(Quantization Aware Training)克服精度下降的問題。TensorRT對(duì)于導(dǎo)入量化感知訓(xùn)練好的模型進(jìn)行INT8低精度推理有著很好的支持。導(dǎo)入這樣的模型,不僅得到了最佳性能,而且精度沒有損失,線上服務(wù)只需更換TensorRT構(gòu)建好的引擎即可,極大地簡化了部署的流程。
通過這樣的方案,微信搜索中的一些關(guān)鍵任務(wù),比如查詢理解等自然語言理解任務(wù),可以在精度沒有損失的情況下,達(dá)到2-10倍的加速效果,平均單句推理時(shí)間達(dá)到了0.1ms。任務(wù)相應(yīng)的計(jì)算資源節(jié)省了約70%。這個(gè)方案大大優(yōu)化了微信搜索業(yè)務(wù)的性能,降低了部署成本。
使用效果及影響
使用NVIDIA T4 GPU以及TensorRT推理引擎進(jìn)行INT8低精度推理,極大提升了微信搜索的速度,進(jìn)一步提升了用戶體驗(yàn),節(jié)約了公司成本。
微信搜索的Hui Liu、Raccoon Liu和Dick Zhu表示:”我們已經(jīng)實(shí)現(xiàn)了基于TensorRT和INT8 QAT的模型推理加速,以加速微信搜索的核心任務(wù),包括Query理解和查詢結(jié)果排序等。我們用GPU+TensorRT的解決方案突破了NLP模型復(fù)雜性的限制,BERT/Transformer可以完全集成到我們的解決方案中。此外,我們利用卓越的性能優(yōu)化方法,節(jié)省了70%的計(jì)算資源?!?/p>
審核編輯:郭婷
-
NVIDIA
+關(guān)注
關(guān)注
14文章
4996瀏覽量
103213 -
gpu
+關(guān)注
關(guān)注
28文章
4744瀏覽量
129016 -
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7513瀏覽量
88155
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論