天天看點

複雜場景挑戰下,晶片制造商解決企業算力難題的新姿勢

從雲而上,以邊緣為終。

計算支援的層面上雲計算、霧計算、邊緣計算等相繼而起,從場景層面上,智能家居、工業制造、交通政務、環境勘測等各自芬芳。我們能看到的算力形态已開始百花争豔,而在我們看不到的地方,依然有着旺盛的算力需求。

随着“十四五”計劃的不斷落地,加快數字化發展,大力發展數字經濟,打造具有國際競争力的數字産業叢集,全面實施智能制造行動計劃,業已成為我國目前發展的重點之一。而企業想要從中脫穎而出,如何突破算力的迷局,找到更加高效的算力形态,就變得至關重要。據英特爾預測,全球的算力需求預計到 2025 年将提升 1000 倍。那麼算力需求如此旺盛,哪裡才能得到這樣的算力呢?算力的形态如此豐富,最終的答案究竟是什麼?是 CPU?GPU?ASIC?還是 FPGA?近年來,我們看到了一個更加可靠的答案,那就是:“我全都要。”

異構計算:不僅僅是多面手

“我全都要”并非一種貪心,而是一種趨勢。

數字化建設的根源在資料,也在智能。而各行業日趨複雜的大資料和 AI 應用環境下,算力需求爆發式增長,這不僅是量在增加,形态也在變化。但是,作為一家企業,算力與架構及系統的綁定關系使得他們不可能頻繁更換底層,是以,當算力的供給增長無法跟上算力需求的腳步,多元化算力的概念就被人開始提起。

異構計算是多元算力的典型。跨越标量(CPU)、矢量(GPU)、矩陣(ASIC)、空間(FPGA)的異構計算,如今已經成為企業推動 IT 基礎設施重構的重要力量。其能夠将不同架構的運算單元整合到一起進行并行計算,以最适合的專用硬體去做最适合的事如密集計算或外設管理等,進而達到性能和成本的最優化。是以很多企業開始嘗試使用異構計算來化解算力瓶頸,挖掘和實作算力增長。

多元算力的應用場景正在變得越發廣泛,以快手為例,其在内容生産、内容了解、内容分發、内容消費等過程中都多元算力有着大量需求。尤其是在推薦系統方面,快手采用了計算與存儲分離的架構模式,推薦系統中的存儲型服務主要是用來存儲和實時更新上億規模的使用者畫像、數十億規模的短視訊特征、以及千億規模的排序模型參數。其中參數伺服器是一個容量和帶寬受限的系統,需要支撐每秒數億次的KV請求;參數伺服器的KV請求也高達每秒數億次,大規模查表會消耗大量 CPU 資源,成為其性能的主要瓶頸。

異構計算正是快手與英特爾聯手給出的答案,通過将負載解除安裝到專門優化的晶片上,将有助于消除性能瓶頸,在吞吐量與延時方面實作顯著改善。

複雜場景挑戰下,晶片制造商解決企業算力難題的新姿勢

快手 LaoFe NDP 異構計算架構

快手可提供異構加速選項的 LaoFe NDP 架構在計算層采用英特爾 CPU、FPGA、PMEM 等器件,實作了基于 LaoFeNDP 架構的 FPGA based KVS 實踐落地,進一步提升快手在推薦、搜尋、廣告、風控等各種場景的應用性能。同時,其通過計算體系結構創新、軟硬一體化、領域專用加速器設計,通過網絡存、存儲、計算三重加速來提供低延遲、高并發、高吞吐、低總體擁有成本(TCO)的基礎資源。

三重加速,正是異構計算獨有的魅力所在。

複雜場景挑戰下,晶片制造商解決企業算力難題的新姿勢

快手 LaoFe NDP 架構圖

網絡方面,LaoFe NDP 架構将 CPU 收發網絡資料操作,解除安裝到 FPGA 上。Client 發送的請求包直接發送給 FPGA。相比 gRPC 基于 TCP/IP,功能過于複雜,性能和延時方案無法保證。而使用基于 FPGA 實作了一套 SD-RDMA 協定,通過應用層添加字段的方式,保證了類似 gRPC 的可靠性傳輸,這大大降低了請求時延。

存儲方面,LaoFe NDP 架構将 CPU 存儲操作也解除安裝到 FPGA 上。為了可以最大程度發揮 FPGA 的能力,快手基于通用 KV 存儲場景定制了一套易于 FPGA 通路的 KV(Key-Value)引擎。同時,其支援 SSD/英特爾® 傲騰™ 持久記憶體/DRAM 記憶體、基于 hash 的 Key-Value 存儲引擎,能夠有效加速存儲性能。通過實戰檢驗,使用 KV 查表的吞吐相比 CPU 方案提升了足足 5 倍以上。

計算方面,LaoFe NDP 架構通過 DSA 的方式将計算操作解除安裝到 FPGA 上,實作了一個領域專用處理器。領域專用處理器是一類針對特定領域量身定制的處理器。它針對特定領域可程式設計,同時在特定領域問題處理上能帶來顯著的性能和效率的提升。再加上英特爾® 至強® 可擴充處理器、英特爾® FPGA 等裝置,可以幫助快手将 LaoFe NDP 架構優勢發揮到極緻。

複雜場景挑戰下,晶片制造商解決企業算力難題的新姿勢

網絡、存儲、計算加速後示意圖

異構計算背後,一場性能的變局

事實上,異構計算并非新的概念,其早在上世紀 80 年代中期就已經被踢出,當時便被認為有着計算能力強、可擴充性好、資源使用率高等特點。但是,為什麼異構計算時至今日,才再次發揮出巨大作用呢?

我們知道技術是發展的,很多在以往無法實作的構思,可能在若幹年後發光發熱。就比如 1956 年提出的人工智能技術,在半個世紀後才發展壯大并成為了社會生活必不可缺的一部分。支撐起其變化的一方面是資料處理技術的成熟,另一方面就是算力自身的發展。異構計算也是如此,英特爾在其發展的過程中起到的關鍵作用。

在快手的 LaoFe NDP 架構中,英特爾® Stratix® 10 FPGA 表現十分出衆。全新的英特爾 Hyperflex™ FPGA 架構相比前一代時鐘頻率提高了 2 倍,功耗降低了 70%。此外,更快的時鐘頻率減小了總線寬度和知識産(IP)的規模,釋放了更多分 FPGA 資源,以添加更強大的功能。同時它采用了超感覺設計工具,減少了布線擁塞和設計疊代,提高了設計工作的效率。

一隻蝴蝶都可能引發一場風暴,更何況是産品效能的全面提升。當英特爾® Stratix® 10 FPGA 在 LaoFe NDP 每個環節中頻繁出現,其帶來的影響是巨大的。

1. 通過将負載從 CPU 解除安裝到 FPGA 中,并采用 Hash 表查找優化、随機訪存、讀寫分離等方式,快手将單節點參數伺服器的吞吐性能提升了 5-6 倍,整體請求延時則降低 70%-80% ,這有助于提升上層應用的實時性,提供更佳的使用者互動體驗。

2. 由于 FPGA based KVS 方案能夠在單節點伺服器中提供遠超傳統方案的吞吐性能,是以僅需要部署少量的伺服器就能夠滿足特定的性能名額要求(替代比可達 1:5),進而降低參數伺服器的 TCO。

3. 通過使用 FPGA 來進行查表,能夠有效地降 CPU 由于高頻率更新而産生的性能抖動。

總結一下,英特爾® Stratix® 10 FPGA 為快手 LaoFe NDP 架構提供了富于彈性的可程式設計硬體能力,減少延時,實作精确控制,而且其機關算力功耗低、片上記憶體大,能夠适用于延時要求高、批處理(Batch)比較小、并發性和重複性強的應用場景。

複雜場景挑戰下,晶片制造商解決企業算力難題的新姿勢

FPGA based KVS 方案與傳統方案性能對比

英特爾® 至強® 可擴充處理器針對衆多工作負載類型和性能等級而優化的平衡架構,其對于 LaoFe NDP 非常重要,能夠為之提供内置的人工智能加速和進階安全功能,可提供無縫性能基礎,幫助從邊緣到雲加快資料的變革性影響。除此以外它橫跨計算、網絡、存儲的平台創新和硬體增強虛拟化,均支援新型記憶體創新,促進以經濟實惠、靈活、可擴充的方式實作邊緣到雲的傳輸,進而一緻地提供出色的企業對企業(B2B)和企業對消費者(B2C)體驗。同時英特爾硬體增強的安全性有助于抵禦惡意攻擊,同時保持工作負載的完整性和性能。

英特爾® 傲騰™ 持久記憶體集高速、高成本效益、大容量、持久資料保護和進階加密等優勢于一體,在其推出之時便引發了巨大反響。它能夠為 LaoFe NDP 增加全新的記憶體和存儲層級,縮小記憶體和存儲層次架構之間的關鍵差距,進而實作更智能、更靈活的架構。其能實作每台伺服器的記憶體容量翻倍,且每台虛拟機的成本降低達 25%,在進行實時分析和 AI 工作負載等需要處理大量資料集的服務,性能提升可高達 2 倍。除此以外它還提供了記憶體模式(Memory Mode)和應用直接通路模式(App Direct Mode)兩種模式。在記憶體模式下,英特爾® 傲騰™ 持久記憶體可作為經濟高效的 DRAM 替代品。CPU 記憶體控制器會把持久記憶體視作易失性的系統記憶體,表現與 DRAM 類似,同時 CPU 記憶體控制器會将 DRAM 記憶體用作持久記憶體的高速緩存。該模式能夠提供更大的記憶體容量,這對于異構計算的提升效果是巨大的。

軟硬并進,異構即相容

你見,或者不見,算力就在那裡。異構計算衍生發展數十年,其就像一座礦山,等待使用者的去發掘。寶劍贈英雄,開發者們如何充分挖掘現有異構硬體的性能,獲得最優成本效益的 IT 資源才是關鍵。

“軟硬兼施”才能更好的應對異構計算的需求。

在硬體層面,英特爾提出 XPU 戰略,完善在 CPU、GPU、ASIC、FPGA 領域的産品線。不僅通過性能核心和能效核心戰略,使CPU中不同核心負責不同工作負載,實作 CPU 叢集自身的異構,同時通過 AMX、SSE、AVX、AVX-512 等指令集擴充,大幅度提升 CPU 的 AI 運算性能。在全新的第四代英特爾®至強®可擴充處理器中,加入了更多異構加速引擎,比如加速記憶體拷貝的 DSA,加速網絡處理的 DLB,加速大資料分析的 IAA,加速資料加解密、壓縮解壓縮的 QAT,使 CPU 彈性進一步提升,輕松應對多種工作負載的性能加速需求。

除了 CPU,英特爾還提供面向雲遊戲、視訊處理、虛拟桌面和 AI 推理的 Flex 系列 GPU,面向 HPC 和 AI 訓練/推理的 GPU Ponte Vecchio。而針對特定的 AI 加速,英特爾還打造了面向AI訓練和推理的專用人工智能處理器 Habana,豐富 ASIC AI 晶片的生态系統。

針對資料中心部署和應用中的資料流處理、計算加速和存儲加速等問題,英特爾® Stratix® 10 和最新的 Agilex™ FPGA 晶片,以程式設計的靈活性、高并發、高吞吐性能和低延遲特性,被廣泛使用在各大雲計算公司的資料中心中。值得一提的是,為了幫助雲服務提供商轉移基礎設施功能任務,最大化 CPU 資源,獲得更多收入,英特爾還提供能夠清晰隔離基礎設施功能和租戶工作負載的,且基于 FPGA 和 ASIC 的 IPU,以滿足使用者的多樣化需求。

在軟體層面,英特爾也在持續發力,最大化硬體性能。其重磅推出的 oneAPI,作為統一的軟體程式設計架構,可以支援多種異構計算單元, 為上層的軟體開發者提供一套應用開發接口,以解決未來應用功能在 CPU、GPU 等因為分布或是硬體更新後需要重寫軟體代碼的問題。OneAPI 不局限于支援英特爾硬體,也支援其他廠商的硬體。同時提供基于 API 的各種高性能庫,可以在多種異構平台上運作并提供極高的性能,其中很多庫将開源,英特爾鼓勵生态協作創新,共同推動異構計算的發展與演進。

繼續閱讀