導語
1.“數(shù)據(jù)、算法、算力”是數(shù)字經濟時代的三大核心要素,其中算力是數(shù)字經濟的物理承載。
2.目前,算力已經成為全球戰(zhàn)略競爭的新焦點和國家經濟發(fā)展的重要引擎。世界各國的算力水平與經濟發(fā)展水平呈正相關。
3.下面通過四個模塊,從微觀到宏觀,詳細分析與性能和算力相關的因素以及算力平臺。盡可能直面當前算力提升所面臨的挑戰(zhàn)和困難,展望未來算力的發(fā)展趨勢。
1 算力綜述
隨著數(shù)字經濟時代的到來,各種各樣的應用都需要強大的算力支持。無論從單個設備角度,還是萬千設備組成的宏觀算力角度,都需要持續(xù)的算力來支撐數(shù)字經濟的繁榮發(fā)展。
根據(jù)馮·諾依曼架構,可以繪制出一個典型服務器模型。一個服務器,由核心的處理邏輯、分層級的寄存器、緩存、內存、本地外存四級的暫存存儲(云服務器本地存儲也是暫存,關鍵的數(shù)據(jù)必須存儲到遠程存儲集群)、以及通過網絡的輸入/輸出三部分組成。
站在處理器中處理邏輯部分角度,不管是從各級暫存還是從網絡 I/O,都是數(shù)據(jù)的輸入/輸出。因此,計算模型可以簡單的分為兩部分:數(shù)據(jù)處理和數(shù)據(jù)輸入輸出。并且,系統(tǒng)性能 = 最小值(數(shù)據(jù)處理能力,數(shù)據(jù)輸入/輸出能力)。
隨著更大規(guī)模計算需求的發(fā)展,逐漸形成復雜的存儲分層結構。計算和 I/O 之間的不匹配導致復雜的存儲分層結構,而復雜的存儲分層結構一方面增加功耗,另一方面限制性能進一步提升。
影響性能的三個主要因素
這里說的性能,指的是單位處理器的性能。衡量一個處理器的性能,通常有三個因素:
一、“指令”復雜度,類似于單位時間加工的零件數(shù)量,指的是單個指令中計算的密度。
指令是軟件和硬件的媒介,指令的復雜度(單位計算密度)決定系統(tǒng)的軟硬件解耦程度。按照指令的復雜度,典型的處理器平臺大致分為CPU、協(xié)處理器、GPU、FPGA、DSA、ASIC。任務在CPU運行,則定義為軟件運行;任務在協(xié)處理器、GPU、FPGA、DSA或ASIC運行,則定義為硬件加速運行。
魚和熊掌不可兼得,指令復雜度和編程靈活性是兩個互反的特征:指令越簡單,編程靈活性越高,因此才說軟件有更高的靈活性;指令越復雜,性能越高,因此而受到的限制越多,只能用于特定場景的應用,其軟件靈活性越差。
二、運行速度,即運行頻率,類似于一個小時的單位時間數(shù)量,指的是1秒鐘時鐘周期變化的數(shù)量。
頻率越高,計算速度越快。不考慮其他因素制約,計算速度和頻率是正比關系。而頻率受電路中的關鍵路徑(延遲最大路徑)約束,兩者呈反比關系:關鍵路徑越短,頻率則越高。頻率受關鍵路徑制約,而關鍵路徑與兩個因素有關:
關鍵路徑所包含門的數(shù)量,即從前一級寄存器到后一級寄存器之間的最長路徑所包含的邏輯門數(shù)量
單個邏輯門延遲時間,邏輯門延遲時間跟半導體生產工藝相關,一般情況下,工藝尺寸越小,單個邏輯門延遲越小
因此,想要優(yōu)化頻率,就要優(yōu)化關鍵路徑:一個是優(yōu)化關鍵路徑的邏輯門數(shù)量,另一個則是優(yōu)化單個邏輯門延遲。當邏輯門延遲越小,或兩級寄存器之間的邏輯門數(shù)量越少,則頻率越高,計算速度也越快。
三、并行度,類似于團隊的成員數(shù)量,指的是多個并行的處理。
并行設計在硬件邏輯設計里非常常見。如:
指令流水線:指令流水線是一種時間并行,在同時有多條指令處理流水線的不同階段,相當于有多條指令在并行處理
指令多發(fā)射(Multiple Issue):一條流水線,從指令緩沖區(qū)一次發(fā)送到譯碼階段就有多條指令,然后在執(zhí)行階段也是多條指令并行
超線程(Hyper-Thread):在一個處理器核內部,多組不同的指令流處理,分時共享處理器核內部的各種硬件資源,達到更佳的資源利用率,提升整體性能
多總線:如,指令、數(shù)據(jù)總線分開,多數(shù)據(jù)總線等設計,進一步增加處理器的數(shù)據(jù)處理帶寬
多核技術:通過一些內部互聯(lián)總線,把多個處理器核集成到一塊芯片內,以此來提升綜合性能
多處理器芯片:受限于芯片工藝、功耗水平、設計架構,單芯片內的多核互聯(lián)不能無限制增加下去,也可以通過一些芯片間互聯(lián)技術,把多個 CPU Socket 連成一個NUMA系統(tǒng),當前比較常見的是2-8個 Socket 互聯(lián)架構
總線:對并行總線來說,增加數(shù)據(jù)線的寬度,對增加總線的帶寬是顯而易見的,并行總線一般用于芯片內部邏輯通信;串行總線,例如 PCIe,相比 PCI 并行總線,一方面可以快速提升頻率,還可以通過很多組串行線組合通信來提升傳輸性能,串行總線一般用于芯片間數(shù)據(jù)通信。
異構計算單元:CPU 和 GPU、xPU 以及各種硬件加速器組成異構多處理單元共同協(xié)作完成工作任務,CPU 更多的是承擔控制和數(shù)據(jù)交互的角色。
多服務器集群:現(xiàn)在大型的互聯(lián)網系統(tǒng)需要成百上千的服務器,分為業(yè)務處理、網絡處理、存儲和數(shù)據(jù)庫處理等不同功能分工的服務器,共同組成一個性能強大并且運行穩(wěn)定的系統(tǒng)對外提供服務。
通過不同方向、不同層次的并行技術,都可以提升硬件系統(tǒng)的性能。把不同復雜度的單位處理都當作“指令”。那么,我們就可以通過 IPC(Instruction per Cycle)來評價并行度。對一個 CPU 核來說,IPC 代表每個周期執(zhí)行的指令數(shù);對一個硬件加速模塊來說,IPC 則代表一個周期所能進行的單位處理的數(shù)量。
簡潔明了的用公式表示性能和三者的關系:
(單個處理器)性能 = 指令的復雜度(單位計算密度) x 頻率 x 并行度
宏觀的算力
性能是微觀的概念,代表單個個體計算能力。而算力則是宏觀的概念,算力是很多個體計算能力總和。為了避免混淆,我們采用總算力的叫法。
在前面已經介紹單個個體的性能(在泛I/O不拖后腿的情況下):
(單個處理器)性能 = 指令的復雜度(單位計算密度) x 頻率 x 并行度
那么總算力則和單個處理器性能以及處理器的數(shù)量成正比:
總算力 = (單個處理器)性能 x 處理器的數(shù)量
雖然總算力可以很高,但如果因為各方面原因,其利用率不高,則也不夠好。因此:
實際總算力 = 總算力 x 利用率
= 指令的復雜度(單位計算密度) x 頻率 x 并行度 x 處理器的數(shù)量 x 利用率
相關的若干因素總結一下,要提高宏觀的實際總算力,就必須要:
1.提高指令的復雜度(單位計算密度)。新的 DSA 架構創(chuàng)新,均衡考慮不同的算力平臺,以及通過異構和超異構計算,融合多種平臺一起協(xié)作,完成系統(tǒng)級計算。
2.提高運行頻率。優(yōu)化設計,選擇最優(yōu)的流水線級數(shù)以及工藝等的持續(xù)進步,優(yōu)化系統(tǒng)的運行頻率。
3.提高并行度。更高的擴展性(Scalibility),更高性能的各層級互聯(lián)總線,并行更多處理引擎。
4.優(yōu)化 I/O 和處理的匹配度。通過工藝和封裝優(yōu)化,實現(xiàn)更加匹配計算和 I/O 匹配。
5.實現(xiàn)處理器芯片更大規(guī)模落地。均衡芯片整體性能和靈活可編程能力,實現(xiàn)宏觀總算力最大化。
6.進一步優(yōu)化宏觀算力利用率。算力上規(guī)模后,通過云計算、邊緣計算、超云、云網融合等手段,持續(xù)優(yōu)化算力利用率,降低算力成本。
簡單來說說,算力提升核心就兩個方面:
1.增大規(guī)模(Scale out),通過擴大算力基礎設施建設,以及“東數(shù)西算”等方式,構建更大規(guī)模并且低能耗的現(xiàn)代化數(shù)據(jù)中心。
2.提升單個計算節(jié)點性能(Scale up),構建新一代創(chuàng)新計算范式,要把算力再持續(xù)提升1-2個數(shù)量級,并且能夠提供非常好的易用編程能力,來持續(xù)應對未來10年更加復雜系統(tǒng)的算力需求爆炸挑戰(zhàn)。
藍海大腦作為領先的數(shù)字基建提供商,將積極發(fā)揮產品和技術優(yōu)勢,提供先進算力支持。
2 三大主流計算平臺CPU、GPU和DSA
CPU
在手機端已經非常成熟的SOC實現(xiàn),為什么在數(shù)據(jù)中心端沒有大規(guī)模應用?為什么直到現(xiàn)在,數(shù)據(jù)中心依然是以CPU為主的計算平臺?這主要源于越是復雜的場景,對軟件靈活性的要求越高,而只有CPU能夠提供云場景所需的靈活性。
超大規(guī)模復雜計算場景對硬件靈活性的要求,主要體現(xiàn)在四個方面:
靈活性。硬件處理引擎要能夠很好地支持軟件快速迭代。CPU 其靈活基礎指令編程的特點,可以認為是最適合云計算的處理引擎。
通用性。廠家購買服務器,很難預測服務器會運行哪類任務。最好的辦法是采用完全通用服務器。CPU 其通用性,成為云計算場景最優(yōu)選擇。
利用率。云計算通過虛擬化把資源切分,實現(xiàn)資源共享,以此提高資源利用并降低成本。而目前,只有 CPU 能夠實現(xiàn)非常友好的硬件級別的虛擬化支持。
一致性。云計算場景,軟硬件相互脫離。同一軟件實體會在不同的硬件實體遷移,同一硬件實體也需要運行不同的軟件實體。而 CPU,是一致性最好的硬件平臺。
GPU與NP
網絡處理器(Network Processor,簡稱NP)跟 GPU 在技術理念上有很多相似之處:都是通過特定優(yōu)化的、高效能的小 CPU 核組成的眾核系統(tǒng),并行的完成計算任務。根據(jù)“指令”復雜度,從 CPU 到 ASIC 的劃分,NP 和 GPU 處于相同的位置。
NP 具有如下的一些不足:
性能。雖然相比 GPU,性能是在同一層級,但相比 ASIC/DSA 性能不夠。
場景。NP主要用于網絡場景的處理,沒有像 GPU 那樣作為通用并行計算,GPU可以用于非常多的高性能場景。
開發(fā)和生態(tài)。GPU 由于 NVIDIA CUDA 的強大生態(tài),框架、工具鏈、開發(fā)庫都非常成熟。而 NP 由于生態(tài)的不成熟,以及各家 NP 之間也基本互不兼容,開發(fā)者需要了解底層的硬件細節(jié),致使編程難度很大。
NP 在網絡領域有一定范圍采用,但網絡領域更主要的處理引擎是網絡 ASIC,這些年還興起網絡數(shù)據(jù)面可編程的網絡 DSA,都是相比 NP 架構具有更極致的性能。正因為 NP相比 ASIC/DSA 的性能不足,以及相比 GPU 覆蓋的場景有限,這樣的 “高不成,低不就”,導致其一直沒能成為(相比 GPU 而言)主流的通用計算平臺。
DSA
DSA 針對特定應用場景定制處理引擎甚至芯片,支持部分軟件可編程。DSA 與 ASIC 在同等晶體管資源下性能接近,兩者最大的不同在于是否可軟件編程。ASIC 由于其功能確定,軟件只能通過一些簡單的配置控制硬件運行,其功能比較單一。而 DSA 則支持一些可編程能力,使得其功能覆蓋的領域范圍相比 ASIC 要大很多。
DSA,一方面可以實現(xiàn) ASIC 一樣的極致性能,另一方面,可以像通用 CPU 一樣執(zhí)行軟件程序。當然,DSA 只會加速某些特定領域應用程序。例如:用于深度學習的神經網絡處理器以及用于 SDN 網絡可編程處理器。
CPU、GPU和DSA的優(yōu)劣勢分析
藍海大腦液冷GPU服務器搭載于 NVIDIA 4 × A100 / 3090 / P6000 / RTX6000;使用 NVLink + NVSwitch 的最高GPU通信;4個用于 GPU Direct RDMA 的 NIC(1:1 GPU比率);最高4 x NVMe 用于 GPU 系統(tǒng)盤,帶有 AIOM;雙電源冗余供電系統(tǒng)、防雷擊、防浪涌保護。
3 面向未來十年的新一代計算架構
未來十年的新一代計算架構的一些設計目標——基于軟硬件融合架構(CASH,Converged Architecture of Software and Hardware)的超異構計算:
1.性能。讓摩爾定律繼續(xù),性能持續(xù)不斷地提升。相比 GPU,性能再提升100+倍;相比 DSA,性能再提升10+倍。
2.資源效率。實現(xiàn)單位晶體管資源消耗下的最極致性能,極限接近于 DSA/ASIC 架構的資源效率。
3.靈活性。給開發(fā)者呈現(xiàn)出的是極限接近于 CPU 的靈活性、通用性及軟件可編程性。
4.設計規(guī)模。通過軟硬件融合的設計理念和系統(tǒng)架構,駕馭 10+ 倍并且仍持續(xù)擴大的更大規(guī)模設計。
5.架構。基于軟硬件融合的超異構計算:CPU + GPU + DSA + 其他各類可能的處理引擎。
6.生態(tài)。開放的平臺及生態(tài),開放、標準的編程模型和訪問接口,融合主流開源軟件。
4 宏觀算力建設
數(shù)字經濟時代,不斷增強算力,不斷降低算力成本。一方面,我們可以以相同的價格,可以獲得更多更豐富的算力;另一方面,是降低算力獲取門檻,實現(xiàn)算力普惠。
持續(xù)不斷的提升算力,降低成本,實現(xiàn)算力普惠
隨著數(shù)字經濟建設逐步深入,對算力需求不斷提高。在功耗和成本不變情況下,通過架構創(chuàng)新,提升芯片性能。如果我們能夠把芯片性能提升10倍,在同樣規(guī)模下,意味著10倍的宏觀算力提升,也意味著單位算力成本和功耗均降低到1/10。也就意味著,對用戶來說,可以以同樣價格獲得更多更豐富算力資源。
芯片一次性成本極高,芯片通用性可以確保芯片大規(guī)模復制。而大規(guī)模復制的芯片,就意味著無限攤薄芯片的研發(fā)成本。性能提升,成本降低,一里一外的優(yōu)勢,確保芯片核心競爭力。
并且,通過算力提升,以及成本和功耗降低,可以降低算力使用門檻,使得更多用戶能夠享受算力的便捷。在數(shù)字經濟世界里,大家共享技術發(fā)展帶來價值紅利。
建設宏觀經濟,首先需要的是IT基礎設施。藍海大腦作為中國領先的IT基礎設施提供商,可以提供服務器、存儲、網絡、5G云網融合產品等IT基礎設施。
審核編輯:湯梓紅
評論
查看更多