編者按
算力網絡的概念逐漸深入人心,算力網絡的愿景是“讓算力無處不在,唾手可得”。這個愿景非常的令人向往。
在本篇文章中,我們提到兩個概念:復雜系統和復雜計算。復雜系統指的是多個系統融合而成的宏系統;復雜計算,則是復雜系統的計算范式。
1 從宏觀算力講起
什么是性能?什么是算力?這兩個概念是統一的,性能是微觀的概念,而算力是宏觀的概念。
性能和算力的關系,如下面這個簡化公式:總算力 = 芯片性能 x 芯片數量 x 算力利用率。
這三個參數,也對應了算力優化的微觀、中觀和宏觀的三個層次:
微觀層次,即單芯片的性能,主要是通過工藝進步、Chiplet封裝以及架構和微架構創新來提升。
中觀層次,芯片要能夠支持大規模落地。這里講一個反面案例,由于AI的算法眾多并且快速多變,AI芯片落地存在困難,難以大規模量產。無法量產的芯片,對宏觀算力的提升,沒有多大意義。
最后是宏觀層次,算力的利用率。我們有了這么多芯片,但如果是孤島,有的系統性能不夠用,而大部分系統的算力又嚴重浪費,那就沒有充分利用這些算力資源。有過統計,云計算,算力利用率通常在6%左右,要是有辦法,把算力資源利用率提升到90%以上,這將是非常巨大的價值。要提升利用率,在芯片層面也要做很多的工作,宏觀上也要做很多的工作。
對宏觀算力影響最大最直接的,就是算力的利用率。需要把宏觀的遍布在云網邊端的所有計算的資源,連成一個宏大的資源池,統一調度。
2 從虛擬化到資源池化
按照虛擬化層次,虛擬化分為計算機虛擬化、操作系統虛擬化和函數虛擬化。綜合這三類虛擬化的共性價值:
虛擬化按照一定時間或空間的粒度,把資源切分和組合;
虛擬化屏蔽架構/接口差異性,為上層軟件提供一致性的硬件/軟件;
虛擬化為上層軟件系統提供多種下層資源不同比例組合的運行平臺;
上層軟件系統和下層硬件/軟件系統解耦,上層軟件系統作為運行實體,可以創建/銷毀、運行/掛起、復制、遷移等;
多系統隔離/共存:資源共享的同時,數據隔離、性能隔離、故障隔離、安全隔離;
提升系統靈活性,提升資源利用率,提升硬件負載均衡性,提升軟件高可用性。
以VM為例,假設有100臺服務器,一臺物理的服務器虛擬出10臺VM,1000個邏輯的(或虛擬的)VM分屬于50個不同大小的私有集群(通過VPC)。
多集群多系統動態共存體現在:
硬件集群:供系統調度的一組硬件設備的集合,可以從數臺到數千臺,甚至百萬臺的規模;
軟件多系統:通過虛擬化機制,實現單個硬件上的多個不同規格的軟件系統共存;
軟件多系統集群:一組軟件系統組成軟件集群,多組軟件集群混合交叉部署在一組硬件集群之上;
動態性:宏觀地看,這些硬件集群和軟件集群的配置一直處于頻繁的變更中。
很多加速芯片,專注于特定領域:只考慮局部,而沒有考慮全局。
數據中心硬件是預配置的,購買時不確定運行什么軟件;以不變應萬變,優先考慮足夠通用的、綜合性的硬件。
此外,站在云計算公司的運營管理視角,需要盡可能地減少硬件的型號,最理想情況是:硬件規格是一致性的,只有一種型號的硬件,然后通過虛擬化機制實現“軟件運行平臺”的差異性。
從虛擬化到資源池化:
虛擬化是池化的基礎:虛擬化側重于硬件個體,池化側重宏觀整體;
虛擬化:把資源切分成合適的粒度,再通過虛擬化實例的創建和遷移實現資源的調度;
資源池化的微觀機制是虛擬化,通過云操作系統堆棧,甚至跨云網邊端的操作系統堆棧,實現虛擬化資源的統一管理、使用和回收等;
微觀的虛擬化實現了軟件運行平臺的高可用,宏觀的資源池化實現硬件資源的高利用率;
可被池化的(顯式可見的)底層硬件資源包括CPU、內存、GPU/DSA等加速器、存儲等。
3 復雜系統的宏觀特征
我們先了解一下,復雜計算面向的系統具有哪些宏觀的特征呢?
第一,系統要干什么,不知道。傳統我們做芯片和系統設計,通常是要去理解場景,然后根據場景的需求來設計我們的芯片和系統。現在的挑戰是,場景的需求是完全不確定的,不但芯片公司不了解,客戶自己也“不了解”。未來,需要“無的放矢”。
第二,由于系統要什么不清楚,也因此系統要包羅萬象,啥都能干。
第三,系統干任何事情,都要足夠專業而高效。我們通常說“專業的人做專業的事”。言下之意就是說:專業的人只能做本專業的事情,而通才則意味著在每個領域都不夠高效。那么復雜計算的系統,則要求:既通又專(啥都能干,干啥都高效)。
第四,系統要“三頭六臂”,同時能做好千千萬不同領域和場景、不同客戶訴求的工作。
第五,系統提供的算力等資源無處不在,唾手可得。在用戶最需要的地方,最需要的時刻,隨叫隨到;并且,以最合適的形態,最合適的方式出現;還給用戶創造更多的價值,給用戶更好的體驗。
最后,關鍵的一點,系統要持續演進,適應用戶需求的快速變化。
當然,這并不是說單個芯片的能力能夠支撐如此強大的系統。而是要發揮數以千計萬計的個體芯片協同甚至融合的能力,來共同支撐宏觀大系統的更強大的能力。
4 復雜計算的定義
復雜計算的定義:①基于一組硬件集群,②運行多系統集群的、 ③動態的、 ④交叉混合計算。展開說明:
單個硬件支持多個不同規格系統的計算;
單個硬件集群支持多個系統集群的計算,并且系統集群交叉混布;
數以萬計甚至百萬級的計算設備規模,完全動態的、非常頻繁的軟硬件配置變更;
硬件需要足夠的一致性(盡可能少的型號和規格),在一致性硬件基礎上實現軟件平臺的差異性;
盡可能滿足所有場景的、足夠通用的、綜合性的計算平臺和系統。
5 復雜計算的場景
5.1 從云計算來,到云網邊端去
云計算行業的朋友,看到復雜系統和復雜計算的概念,肯定會說,這不就是云計算嗎?沒錯,復雜計算的確是從云計算的基礎特征中提取出來的。
云計算的這些基礎的特征,在邊緣計算、軟件定義的網絡計算、超級終端計算等場景,都有類似的特征存在。
我們試圖歸納總結這些特征,把它提煉成復雜計算這個概念,用這個概念:
從個體視角看,指導底層的芯片的功能定義和系統架構的設計;
從宏觀視角看,指導宏觀算力資源和其他相關資源的統籌,為全局資源的池化、編排等提供能力支持,并且進一步提升宏觀算力的利用率。
5.2 云計算場景
云計算主要是由IaaS、PaaS和SaaS組成的分層服務體系。云計算的各種XaaS服務,本質上是系統堆棧逐步由云運營商接管的過程。用戶只需要關心自己最核心的應用/功能即可。
5.3 邊緣計算場景
CDN(Content Delivery Network,內容分發網絡)是一種利用最靠近用戶的服務器,更快、更可靠地將音樂、圖片、視頻、應用程序及其他文件發送給用戶,提供高性能、可擴展性及低成本的網絡內容傳遞服務。
邊緣計算和CDN有很多相似之處,均通過DNS修改調用地址,提供類似緩存的機制,做到客戶端無感。
CDN和邊緣計算的本質區別在于:
CDN是只讀模式,不管是服務器推送靜態內容或者動態內容;
邊緣計算同樣需要支持多租戶多系統運行,其系統堆棧跟云端有一定相似(可復用)之處。
5.4 超級終端場景
北京時間2022年9月21凌晨,NVIDIA GTC 2022秋季發布會上,CEO黃仁勛發布了其2024年將推出的自動駕駛芯片。因為其2000TFLOPS的性能過于強大,英偉達索性直接把它全新命名為Thor,代替了之前1000TOPS的Altan。
Thor SoC能夠實現多域計算,它可以為自動駕駛和車載娛樂劃分任務。通常,這些各種類型的功能由分布在車輛各處的數十個控制單元控制。制造商可以利用Thor實現所有功能的融合,來整合整個車輛,而不是依賴這些分布式的ECU/DCU。
超級終端與傳統終端最大的區別在于:支持虛擬化,支持多系統運行,支持微服務。手機、平板、個人電腦等傳統AP是一個系統:部署好OS,上面運行各種應用,軟件附屬于硬件而存在。而自動駕駛等超級終端,需要通過虛擬化將硬件切分成不同規格,供不同形態的多個系統運行,并且各個系統之間需要做到環境、應用、數據、性能、故障、安全等方面的隔離。
自動駕駛汽車,通常需要支持五個主要的功能域,包括:動力域、車身域、自動駕駛域、底盤域、信息娛樂域,每個域會占用一個或多個VM。
5.5 未來,更多的場景需要復雜計算
芯片工藝越來越先進,能支撐的系統規模越來越大;上層的軟件應用,層出不窮,已有的應用持續快速演進。系統從單個系統變成了多個系統混合甚至融合的復雜系統。
系統越來越復雜,支持系統計算的硬件也越來越復雜;復雜的系統越多,需要復雜計算覆蓋的場景也就越多。
6 復雜計算的挑戰
底層計算的資源主要是CPU、內存、網絡和存儲等I/O,以及GPU、DSA等加速器。復雜計算的核心挑戰在于:如何把種類繁多并且架構/接口不一致的資源匯集成池。
個體的硬件,需要支持非常好的擴展性。個體硬件包括各種異構的處理器資源,可以形成小的資源池;并且支持數以萬計的個體資源連成一片,形成更大的資源池。
硬件個體需要支持系統的連接和融合,根據程度的高低,分為四個階段:
階段一,孤島。所有設備各自獨立的工作;
階段二,互聯。把設備連到一起,設備和設備之間可以通信;
階段三,協同。C/S架構是典型的協同;有了協同,也就有了云網邊端。
階段四,融合。協同通常是靜態的,隨著時間推移,初始任務劃分不一定能適應系統的發展;融合代表著動態以及更多自適應性;協同代表著多個系統的協同,而融合代表了多個系統融合成一個大系統。
站在宏觀大系統的視角,云服務器、邊緣服務器、終端設備,以及網絡設備,都是一致性的硬件。通過軟件編排,選擇盡可能最優的資源,組成最適合軟件運行的邏輯平臺。
算力芯片是水滴,算力網絡是海洋。我們要思考的是,這滴水如何設計的更好,更好地融入到這片海洋,讓海洋更加浩瀚宏大。
審核編輯:劉清
-
加速器
+關注
關注
2文章
802瀏覽量
37933 -
DSA
+關注
關注
0文章
49瀏覽量
15188 -
CDN
+關注
關注
0文章
314瀏覽量
28822 -
vpc
+關注
關注
0文章
17瀏覽量
8491
原文標題:什么是復雜計算?
文章出處:【微信號:bdtdsj,微信公眾號:中科院半導體所】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論