原創: ZOL企業站 今天
原創: ZOL企業站 今天
第705期
軟件可優化AI算力
文 | 陳楊 文字校對 | 陳楊
審核 | 李諾 張劍鋒 策劃 | 劉克麗
跑車要想實現高速行駛,除了配備強勁的發動機外,還需要底盤、車身、電氣設備的共同配合。AI算力亦如此,要想實現AI算力的提升,除了靠CPU、GPU等硬件設備外,還需要在軟件層面優化,以體系化的結構滿足應用需求。
CPU使用率不足50%
而若想提升AI場景的算力,通常情況下我們首先會想到的便是藉助CPU、GPU等各種XPU部署異構計算,建設更大規模的服務器集群,總之,便是單純靠硬件堆疊提升算力。
但實際情況是,通過增加硬件的確能提升AI場景所需的算力,但更多的是資源浪費和增加企業成本。做出這樣結論的原因便是原有硬件的性能實際並沒有全部發揮出來。不妨以CPU為例,我們都知道CPU有一個性能理論峰值,但在實際運行過程中,CPU所釋放的性能大概在理論峰值的30-50%,即便再加負載,CPU的使用率依然不能增高,但是靠軟件優化可將CPU使用率提高到80%。
用軟件優化算力
根據芯片開發商的說法,芯片的性能之所以沒能完全發揮出來,源於軟件與硬件系統未能深度融合,某些特定功能不能得以發揮。
以英特爾為例,為了滿足機器學習或者訓練、推理需求,英特爾推出的至強可擴展處理器除了在主頻、核數的提高外,不斷引入AVX-512指令集、DL Boost人工智能加速指令集、DAAL高性能機器學習和數據分析庫、MKL-DNN數學核心函數庫、nGraph編譯器,使得整個硬件平臺更適用於AI場景。但加入的這些指令、函數庫,並非隨便使用深度學習框架便能將其利用起來,需要針對性對框架優化,與CPU適配,才能轉換為計算性能。
AI算力軟化帶來兩好處
放在AI實際應用中亦如此。AI算力其實是一個完整體系,其更像一個軟硬結合體,只有去了解AI算法的運算架構和邏輯,進而針對硬件做深層次優化,提前把計算部分軟化,才能便於AI落地。
這樣的方式,帶來的好處便是,由於算法、軟件與算力深度耦合,模型的部署、調參相應簡化,進而縮短上線時間。同時,這樣的方式使得企業無需另行採購硬件設施,在原有基礎上便可實現算力提升。
AI算力優化對接應用
而在走向應用的過程中,算力、算法、數據絕非是割裂的零散模塊。從定義問題、收集數據,到特徵分析、模型訓練,再到模型評估、模型應用整個AI的全過程,算力、算法、數據三要素時刻都要對接、協同工作。
也因此,若想AI落於實地,算力不足一定是不行,而通過提升算力,也不一定能將此AI場景應用,所以優化過的算力一定要對接算法、應用。
結語
要想提升AI算力,沒有硬件是一定不行的,但全靠硬件也是不靈的。