1、算力由性能、規模和利用率三部分組成
算力 = (單芯片)性能 x 規模(即數量) x 利用率。
算力是由性能、規模、利用率三部分共同組成的,相輔相成,缺一不可:
有的算力芯片,可能可以做到性能狂飆,但較少考慮芯片的通用性易用性,然后芯片銷量不高落地規模小,那就無法做到宏觀算力的真正提升。
有的算力提升方案,重在規模投入,攤大餅有一定作用,但不是解決未來算力需求數量級提升的根本。
有的解決方案,通過各種資源池化和跨不同的邊界算力共享,來提升算力利用率,但改變不了目前算力芯片性能瓶頸的本質。
性能、規模、利用率,宏觀微觀,牽一發而動全身。管中窺豹終有偏,既要考慮多種因素協同設計,更要宏觀的統籌算力問題。
2、最核心的,通過超異構實現芯片性能的數量級提升
一方面,超異構可以通過集成更多的加速引擎來實現相比CPU、GPU的性能的數量級提升,但更多的計算是在DSA架構引擎完成的,從單位晶體管資源的性能效率視角看,是和DSA在一個量級的。
工藝進步、3D封裝、Chiplet封裝等各種創新,支持數量級提升的設計規模。但要想充分利用這些價值,就需要創新的系統架構。超異構計算,通過分布式系統設計,可以駕馭數量級提升的更大的設計規模。因此,可以做到相比傳統DSA再繼續10倍甚至100倍的性能提升。
3、在超異構的約束下,實現規模化落地
3.1 芯片要更好地支持規模化
從微服務的視角,云計算是由不同的服務組成的分層服務體系:每一層就是一個服務族,然后不同層次的服務族組成整個云計算服務體系,這就是我們所熟悉的云計算三層服務IaaS、PaaS和SaaS。
更詳細的軟件堆棧如上圖所示,從非云系統所有的“服務”堆棧都需要用戶自己擁有并維護,經過IaaS、CaaS、PaaS、FaaS,再到最后的SaaS,一切都由供應商運營維護。從左到右的過程,就是“服務”堆棧的下層layer不斷地由云運營商接管的過程。
這是一個鮮明的“二八定律”案例:80%的任務由云運營商負責,20%的任務由用戶負責;站在用戶的角度,20%自己負責的任務價值占到80%,而運營商負責的部分只占到到20%的價值。
因此,基于二八定律,我們可以把整個系統分為三部分:
基礎設施層。基礎設施層的任務都相對確定,適合DSA和ASIC處理引擎處理。
應用層可加速部分任務。基礎設施層是CSP使用,而應用層則是給到用戶應用。用戶的應用多種多樣,因此應用層的加速也需要一定程度的彈性。這樣,GPU和FPGA就相對比較合適。
應用層的不可加速部分。主要是一些通用的處理,如控制以及一些細粒度的計算。協處理器是CPU的一部分。因此,CPU適合各類通用任務處理,CPU負責兜底。
如上圖所示,整個系統的處理有點像塔防游戲:DSA負責干粗活累活,大量的計算任務在DSA中完成;GPU是性能和靈活性折中一些,負責一些彈性加速的計算任務;CPU啥都能干,但性能較差,因此負責兜底,也就是其他處理引擎都干不了的,都放在CPU。
這樣,CPU+GPU+DSA+etc.的超異構計算架構就可以實現“包治百病”的、相對通用的計算架構和平臺,就可以實現在云、網、邊、端等大算力場景以及用戶的絕大部分覆蓋。
更多場景和更多用戶的覆蓋,這樣才能真正實現芯片的規模化落地。芯片的大規模落地之后,又進一步攤薄一次性研發成本,進一步降低成本,形成良性循環。
3.2 宏觀算力建設實現芯片規模化
要想持續不斷地增加算力,不可避免的就是建設更多的數據中心。2022年2月,國家發改委、中央網信辦、工業和信息化部、國家能源局聯合印發通知,同意在京津冀、長三角、粵港澳大灣區、成渝、內蒙古、貴州、甘肅、寧夏等8地啟動建設國家算力樞紐節點,并規劃了10個國家數據中心集群。至此,全國一體化大數據中心體系完成總體布局設計,“東數西算”工程正式全面啟動。
“東數西算”通過構建數據中心、云計算、大數據一體化的新型算力網絡體系,將東部算力需求有序引導到西部,優化數據中心建設布局,促進東西部協同聯動。“東數西算”工程有三個總體思路:一是推動全國數據中心適度集聚、集約發展。通過在全國布局8個算力樞紐,引導大型、超大型數據中心向樞紐內集聚,形成數據中心集群。二是促進數據中心由東向西梯次布局、統籌發展。三是實現“東數西算”循序漸進、快速迭代。
除了大型云數據中心建設之外,也需要更多的邊緣數據中心和服務器、更多的超高算力的智慧終端,以及更智慧的網絡核心設備,來共同提升宏觀總算力。
4、在超異構的約束下,提升算力利用率
4.1 提升算力利用率的手段
云計算出現之前,部署一套互聯網系統,一般有兩種方式:小規模的時候,自己購買物理的服務器,然后租用運營商的機房;超過一定規模的時候,就需要自己建機房,租用運營商的網絡,自己運維數據中心的軟件和硬件。這個時候的算力資源是一個個孤島,整個業務的模式也非常之重,成本很高而且彈性不足。如果算力資源配置比較多,就意味著資源浪費和利用率低;如果算力資源配置比較少,就意味著無法支撐業務的發展,丟失關鍵的商業機會。
云計算通過互聯網按需提供IT資源,并且采用按使用量付費的方式。用戶可以根據需要從云服務商那里獲得技術服務,例如計算能力、存儲和數據庫,而無需購買、擁有和維護物理數據中心及服務器。云服務使用多少支付多少,可以幫助用戶降低運維成本,用戶可以根據業務需求的變化快速調整服務的使用。
其他如基于分布式云的邊緣計算、跨不同云廠家的MSP、算力網絡以及云網邊端融合等,都是盡可能的把算力資源整合成一個巨大的資源池,然后可以靈活的根據各種完全動態變化的需求來提供合適的算力。
我們分析一下,要想提升算力利用率,肯定不能是算力的孤島:
第一個階段,所有的設備是孤島,各自要實現各自的所有功能。軟件應用也是單機版,算力利用率很低,應用的規模受單個硬件規格的限制;
第二階段,有了互聯網,不同的設備可以進行協作。可以通過C/S架構實現跨設備的軟件應用協作。這樣,應用的規模就突破了單個設備的約束。
第三階段,所有的算力資源形成一個整體。可以自動的、任意的切分算力資源。軟件也升級成了MicroService架構。這樣可以根據設備的規格大小,運行合適大小合適數量的微服務。只有資源形成巨大的資源池,然后通過各種運營管理,才能真正提高算力的利用率。
4.2 芯片視角看算力利用率
資源池化是提升算力利用率的根本途徑,但資源要想池化,對硬件有很高的要求:
不同設備架構/接口一致。比如CPU等引擎架構一致(比如都是x86架構平臺),那么軟件可以運行在任何一個設備上,硬件也可以支持各種不同的軟件運行。比如NVMe SSD,可以被不同的用戶訪問,也可以同時或分時地支持多種用戶的工作。
支持虛擬化。一方面是資源粒度的問題,另一方面是資源自由和動態分配的問題,都可以通過虛擬化技術解決。虛擬化還可以實現不同架構/接口的抽象,屏蔽硬件差異。
通常,算力的平臺都是CPU,而且目前x86架構CPU占據了絕大部分市場份額,并且x86 CPU對虛擬化的支持也非常的好。CPU對資源池化的支持,或者說對算力更高利用率的支持,是相當的友好。
但是,隨著性能需求越來越高,不得不通過超異構計算來數量級提升算力的時候,問題出現了。在超異構的架構下,如何實現更高的靈活性,如何實現更高的擴展性,如何實現各類資源的輕松便捷地池化和共享,則是一個全新的挑戰:
處理引擎要支持虛擬化和高可擴展性;
軟件可以跨不同廠家的、不同架構處理引擎;
軟件可以跨跨CPU、GPU、DSA等不同類型處理引擎;
軟件可以跨云網邊端。
5、展望,云網邊端大融合
在虛擬化的加持下,軟件可以實現完全高可用:軟件可以脫離硬件實體,隨意的尋找合適的平臺運行,自適應的在云、網、邊、端運行。
隨著CPU的性能瓶頸,I/O虛擬化技術完全硬件化的情況下,硬件接口直接暴露給軟件,這就需要云數據中心內部,以及跨云邊端的硬件平臺一致性。
要想實現跨云網邊端、跨不同廠家的芯片平臺、跨不同類型不同架構的處理引擎,就需要芯片、系統、框架和庫、以及上層應用的多方協同,就需要開源開放的超異構計算生態。
萬物互聯,當所有的設備算力資源匯集成一個大的共享資源池,算力資源將取之不盡用之不竭。
原文標題:再來聊聊大家都經常聊的算力話題
文章出處:【微信公眾號:Imagination Tech】歡迎添加關注!文章轉載請注明出處。
-
處理器
+關注
關注
68文章
19165瀏覽量
229129 -
芯片
+關注
關注
453文章
50406瀏覽量
421829 -
cpu
+關注
關注
68文章
10825瀏覽量
211150 -
算力
+關注
關注
1文章
928瀏覽量
14744
原文標題:再來聊聊大家都經常聊的算力話題
文章出處:【微信號:Imgtec,微信公眾號:Imagination Tech】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論