Categories
程式開發

基於CPU的AI深度優化,如何打造業內領先的MLPerf推理性能?


幾天前,英特爾正式宣布以 20 億美元收購成立僅三年的 AI 芯片公司 Habana Labs。這是繼收購 Mobileye、Nervana 之後,英特爾在 AI 領域第三次收購 AI 初創公司。與此同時,騰訊也在不斷加大 AI 佈局。兩強聯手,看科技巨頭如何引領未來變革?

騰訊雲與英特爾在 AI 領域早已建立緊密的合作關係。作為國內領先的雲服務商,騰訊雲 AI 平台部承載著騰訊外部和內部 AI 客戶上雲的業務,AI 推理雲 TI-EMS 是其最重要的產品之一。英特爾軟件團隊為騰訊雲提供的針對深度學習而設計的第二代英特爾至強可擴展處理器和 DL Boost 特性,通過一站式 AI 服務,更好地滿足企業上雲需求。

不久前,騰訊雲在首個 AI 性能評測標準 MLPerf 中創造了記錄,這個成績是騰訊和英特爾基於第二代英特爾至強可擴展平台,利用英特爾深度學習加速技術,共同優化算法而得到的。要知道 MLPerf 是針對 AI 的性能評測標準,它是客戶選擇雲上 AI 服務的重要參考。

MLPerf 的由來

MLPerf 是由谷歌、英特爾、百度、英偉達等數十家業界廠商倡導的一套用於測量和提高機器學習軟硬件性能的通用基準,主要用來測量訓練和推理不同神經網絡所需要的時間。 MLPerf 測試集包含了不同領域的基準(Benchmark)子項,主要包括圖像分類、物體識別、翻譯、推薦、語音識別、情感分析以及強化學習等 AI 業界高頻應用場景。

在 MLPerf 推理測試中,每個基準的評價標準是:在特定數據集上測量模型的推理性能,包括延遲和吞吐量。繼 AI 訓練基準 v0.5、v0.6 之後,MLPerf 在今年 6 月推出 AI 推理基準 v0.5。新的 MLPerf 推理基準測試中包括 5 項內容,主要針對目前常見的應用,包括圖像識別、物體檢測及機器翻譯項目,測試模擬的場景都與真實情況相關。 MLPerf 推理測試還在持續開發中,目前已經實現的基準如下表所示:

基於CPU的AI深度優化,如何打造業內領先的MLPerf推理性能? 1

可以說,MLPerf 推理基準測試讓 AI 芯片有了更加全面的測試。有了 MLPerf 基準測試以後,各大公司發布的 AI 性能對比一目了然。

為什麼 MLPerf 基準測試被廣泛認可?其公正性和價值源於哪裡?

作為快速成長的新興市場,機器學習領域一直以來缺少用來評估平台性能的行業測試基準。雖然 ResNet-50 等網絡經常用作訓練和推理的性能代理,但其仍是一套主要基於圖像任務的單一 CNN,不能提供機器學習平台的完整性能圖景。機器學習還包含許多其他用例,例如語音、翻譯和推薦系統等。

MLPerf 的關鍵設計目標之一是工作負載的多樣化。因此,它涵蓋了對圖像和自然語言的使用,以及推薦系統和強化學習等,共 7 項測試。目前以訓練測試為主,而本次英特爾軟件團隊支持騰訊雲 AI 推理雲 TI-EMS 在 MLPerf 的推理性能評測,是業界首例,其標誌性意義不言而喻。

Hyperion Research 公司高級研究副總裁Steve Conway 曾表示,MLPerf 代表著“積極且實用的”一步,“因為多年以來買賣雙方一直缺少必要的基準方案,用以證明不同AI 產品與解決方案之間的差異。原有基準的存在僅僅是為了解決早期AI 發展階段中的有界類實際問題。而隨著無界類AI 問題數量的快速增加,我們顯然需要額外的基準工具對其進行評估……”

圖靈獎得主David Patterson 也曾就MLPerf 的發布評論稱:“良好的基準測試能讓研究人員迅速比較不同思路,降低創新難度。通過調整研發工作、引導投資決策,MLPerf 對於全球範圍內機器學習技術進步和整個AI 領域的創新意義深遠。”

騰訊雲 AI 推理雲 TI-EMS 是什麼?

騰訊智能鈦彈性模型服務(Tencent Intelligence Elastic Model Service,TI-EMS)是具備虛擬化異構算力和彈性擴縮容能力的在線推理平台,能夠幫助客戶解決模型部署複雜、資源浪費、手工擴展資源效率低下的問題。客戶通過使用 TI-EMS 可以實現模型一鍵部署,自動調整彈性計算資源。同時,TI-EMS 具備多模型支持、版本管理和灰度升級等豐富完善的功能,其內置的 CPU/GPU 推理加速鏡像為客戶提供高性能、高性價比推理服務。

比如在實時翻譯場景下,線上業務需要應對可能​​的實時高請求量,智能鈦彈性模型服務可進行針對性地彈性擴容快速響應,高吞吐,低延遲,保障高 QPS 線上業務平穩運行。

基於CPU的AI深度優化,如何打造業內領先的MLPerf推理性能? 2

騰訊雲 TI-EMS 在 MLPerf 評測中創造記錄的背後

首先看測試結果:通過提供最新的四路第二代英特爾至強可擴展處理器及其強大的 DL Boost/VNNI 特性,結合 PyTorch 的深入優化,騰訊雲在MobileNet 和Resnet50 的三個模式下(Single Stream,、Server、Offline)獲得了業界領先的performance/TOPS 性能,在最能體現算力能效的Offline 模式下,每T 算力,MobileNet 和Resnet50達到了421.6 Samples/s 和87.6 Samples/s,分別是T4 的3.1 倍和2.03 倍。而基於通用框架(PyTorch)的 CPU 方案不僅更易部署、更具靈活性,並且可以充分挖掘 CPU 的深度學習計算能力,為客戶提供一站式的 AI 服務。

這次是歷史上 MLPerf 第一次發布推理性能。該項測試結果,無論對於英特爾的軟硬件實力還是騰訊雲基於 Pytorch 的高效 AI 推理雲服務能力都是極大的認可。

在軟件方面,英特爾軟件團隊和騰訊 AI 推理雲一起針對深度學習的高性能計算庫在 PyTorch 上做了基於 INT8 的深度優化,大幅加速深度學習的效率,並使用創新型的算法策略提升了量化的精度。企業業務上雲已是大勢所趨,而 AI 則是目前最火熱的業務。因此各大雲廠商都在蓄力,全力爭取 AI 客戶將業務部署在自家的雲上。

除了 AI 推理,為了更好地服務雲生態用戶,騰訊雲還推出了一站式機器學習生態服務平台——騰訊智能鈦機器學習平台,它能夠對各種數據源、組件、算法、模型和評估模塊進行組合,用戶在其上可以方便快捷地進行模型訓練、評估和預測。

由於採用英特爾 OpenVINO 進行優化,使得該平台的推理性能較之前有了大幅提升。值得一提的是,在該平台上為客戶增加了基於英特爾至強可擴展處理器的選項,並且基於英特爾Analytics Zoo 豐富了算法庫;同時雙方還在推進全棧式端到端的AutoML(Automated Machine Learning)開發,來幫助客戶更易構建和優化AI 應用。

面對巨大的市場需求,作為技術領導者的英特爾正在引領邊緣計算和計算機視覺解決方案的演進方向,並通過專為人工智能設計的全套產品和解決方案,幫助企業不斷發掘數據的可能性。

軟硬結合,一直都是英特爾的一張王牌

回顧過去三四十年算力的發展,每一個基礎性轉變背後也伴隨著軟硬件結合的變遷。在互聯網時代,PC 作為主要的硬件載體,其軟硬件結合的典型就是 x86 架構和 Windows 系統。從 PC 時代的 10 億用戶進入到移動互聯網時代的 100 億用戶,大家在談論規模將達 1000 億台設備的下一個時代,很難預測什麼樣的架構和軟件的結合會成為主流。這種變遷對於雲端服務軟硬件的要求也越來越高,如何能夠以更高的性能,更低的成本,更好地為更多的終端設備提供更加流暢的服務,軟件正在發揮越來越重要的作用,軟硬件結合的深入優化為這些目標提供了可能。

那麼軟件到底能帶來多大程度的性能提升?在今年英特爾開源技術峰會(OSTS) 上,英特爾公司高級副總裁兼架構、圖形與軟件部門總經理 Raja Koduri 舉了三個例子。第一個例子是從 JDK8 到 JDK9, Java 生態系統中實現了巨大的性能提升。英特爾的工程師們為客戶和開發者將現有硬件的性能提升了 6 倍。

第二個例子是內存方面,原始硬件本身極具局限性,但如果將其與英特爾的內存層級架構相結合,再加上他們在軟件棧方面的領先技術,就能將工作負載的性能提升 8 倍

第三個例子是深度學習方面,利用 DL Boost 等架構擴展,從 Skylake 升級至 Cascade Lake,相比上一代硬件提速 28 倍

CPU 憑藉近年來更新迭代獲得的針對性的軟、硬件優化,在深度學習上已經能佔據一席之地。英特爾方面的數據顯示,在與前一代沒有優化軟件的產品相比,第二代英特爾至強可擴展處理器執行深度學習任務的性能大幅提升,訓練吞吐量提升高達 127 倍。

而在深度學習框架之外,英特爾自身也針對人工智能開發了一系列技術與工具,比如基於Spark 的分佈式深度學習框架BigDL、大數據分析+AI 平台Analytics Zoo、OpenVINO 工具包、數學核心函數庫(英特爾MKL)、數據分析加速庫(英特爾DAAL)、面向Python 的英特爾分發包等。亞馬遜 AWS、微軟 Azure 等海外公有云巨頭推出基於英特爾至強平台的 AI 雲服務,很大程度上是看中了其應用靈活性帶來的創收靈活性。

英特爾正在從晶體管為中心到數據為中心的轉型,並提出了英特爾的六大技術支柱——製程和封裝、架構、內存和存儲、互連、安全、軟件。其中,軟件的重要性會大幅提升,唯有軟硬兼施,才能更好地滿足未來計算的需求。從底層硬件、軟件工具到生態建設,英特爾的全棧 AI 生態大幕已然拉開。