来源:新智元
一切计算皆AI已成为行业共识。大模型参数规模从千亿走向万亿,从单一走向MoE,对算力的需求愈加庞大。我们需要理清的是,单芯片所带来的算力驱动已无法满足LLM发展。
国内AI不行,是因为芯片不行?
我们跟国外的差距,是因为和$英伟达 (NVDA.US)$芯片的差距过大?
最近,圈内有许多这样的论调。
其实深挖下去,就会发现事实完全不是这样。即使是英伟达最先进的芯片,依然无法满足当下人工智能在算力上的需求。
随着模型参数量和数据量的增加,智慧不断涌现,我们对更大集群的需求,也更加迫切。无论是国外,还是在国内,大家离终点都很遥远。
算力≠芯片
如今,大规模神经网络的训练现状是这样的。
新鲜出炉的8B和70B参数的Llama 3训练,需要24576块H100组成的集群。
而据称有1.8万亿参数的GPT-4,是在10000-25000张A100上完成了训练。
爆火的Sora训练参数量可能仅有30亿,爆料称,估计使用了4200-10500块H100训了1个月。
$特斯拉 (TSLA.US)$FSD V12,则是在1000万个海量视频片段进行训练,需要用大概10000块H100,耗资3亿美元。
就连奥特曼最近在20VC的采访中,提及了OpenAI目前增长的「核心瓶颈」:
我们有世界上最优秀的研究人员和研究文化。如果计算资源不足,将会拖慢我们的步伐。
一句话概括就是:给我算力!
然而,由于摩尔定律限制,从14nm到7nm再到5nm的制程进步,所带来的性能增益越来越有限。
我们需要有这样一个认知,即AI对算力的需求无穷尽,不能仅依靠AI芯片去满足算力需求。
那该怎么办?
瓶颈何解?
其实,英伟达在GTC 24大会上推出的由DGX GB200系统构建的全新DGX SuperPOD,早已给出了答案。
通过在加速计算、网络和软件方面同时发力,新集群为万亿参数模型的训练和推理,提供了稳定的支持。
而且与上一代产品相比,新一代DGX SuperPOD架构的网络计算能力提升了4倍。
也就是说,刚刚的问题就迎刃而解了——通过更大的集群来突破算力的瓶颈。
然而,随着集成的芯片越来越多,我们不得不应对算法效率不高、计算资源不足、互联带宽受限等众多技术挑战。
计算资源不足
一方面,AI系统的性能主要源于GPU等加速器,因此需要其具备强大的异构扩展能力。
但是,传统的计算机体系结构将加速计算模块作为CPU的配属,通过PCI-e总线接入系统,只支持有限数量的异构单元,限制了异构加速器的扩展性。
并且,同CPU的通信带宽也十分有限。
互联带宽受限
另一方面,互联成为了新的瓶颈。
AI集群早已从千卡、增长到万卡、十万卡,节点间并行所产生的海量通信需求,严重挑战了现有的互联能力。
比如,刚刚提到的GPT-4集群有2.5万块A100,而算力利用率(MFU)仅在32%到36%之间。
可见利用率非常之低,不过在当前技术条件下,几乎触顶了。
部分原因是故障数量过多,需要从checkpoint重新启动训练。
如果OpenAI在云端使用A100的成本是1美元/h,那么仅这一次的训练,成本就会高达6300万美元。
算法效率不高
当然,系统不是全部,AI训练是一个超级复杂的计算系统。
如果模型算法结构与硬件结构匹配不合理、并行化处理不科学等都会导致整个计算平台的利用率偏低。
除此以外,机柜之间若想实现高速的互联,不仅耗电,且散热不够的挑战也需要面对。
总而言之,解决以上难题,我们需要创新:用系统性开创思维去应对AI的挑战。
万卡集群
如今很多人都爱说,AI产业的发展「缺芯少魂」,仿佛AI发展不起来,都是芯片制造业的责任。
但实际上呢?
稍微一分析就会知道,如今AI的算力设计已经到了万卡级别,其中某一张卡的性能,并没有决定性的作用。
对于动辄千亿、万亿参数的大模型来说,单机、单卡的效率不再那么重要了。这时要看的,是算力平台的整体效率。
就拿GPT-3来说,它的训练算法效率MFU只有21.3%,近79%的算力,都被浪费掉了。
之所以有如此严重的浪费,就是因为在大规模计算中,单点效率很有限。因此算力再强都没有用,接近80%的时间,都是在等。
为什么?一是由于互联带宽的限制,二是由于算法没有考虑带宽的优化,导致效率奇低。
在这种情况下,系统的互联优化、高效组织协调、算法优化,重要性也愈发凸显。
硬件
为此,$浪潮信息 (000977.SZ)$在去年发布了「融合架构3.0」。
这是一个全新的大规模计算架构,通过高速互联总线,对计算存储进行了解耦。
当GPU算力不足时,需要构建一个GPU池,这样一台服务器可以对接不仅仅是8卡,可也以是16卡、32卡。
同时,用相对比较低的算力堆积也存在瓶颈,因为CPU和GPU之间需要有个最佳的配比。
针对不同模型的类型、以及模型之间的交互量,有些GPU发挥的作用大一些,有些小一些。
通过高速的系统总线将多个节点连接,CPU、GPU、内存全部基于池化去做,实现了融合架构和算法模型之间的适配。
这种全新的架构,不以芯片为核心的单机系统,而是以万卡集群为设计出发点、以系统为核心的架构。
在未来,AI计算领域重要的创新点,就落在了如何发挥系统价值、提升系统效率上。
而这个系统里,接下来要解决的问题,就是如何互联。
互联
显然,从千卡走向万卡,系统集群之间的高速互联变得愈加重要。
以往单一任务的AI工厂模式,早已不能满足需求。
集群不仅仅是面向大模型训练,还需提供服务,正是AICloud模式所能解决的。
但过去面向超级计算的专用网络,无法很好地支持多用户、多任务、多租户的灵活需求。
提升GPU与GPU之间的高速互联,英伟达闭源NVLink网络成为最典型的代表。
英伟达在DGX SuperPOD,利用了第五代NVLink链接,同时采用了Quantum-X800 InfiniBand网络,可为系统中每个GPU提供高达每秒1800GB/s的带宽。
可以看到,GPU点对点的通信效率已从2017年32GB/S,过渡到了如今最高的1800GB/S,提升了56倍。
而在未来大模型训练中,浪潮信息笃定的以「超级AI以太网」来支撑——相比于传统RoCE可以实现1.6倍的效率提升。
为什么这么说?
因为,它能够实现「端网协同」,为模型训练带来极致的计算效率。
端网协同,是指AI交换机和智能网卡之间,能够实现紧密配合,并结合开放技术为网络引入创新功能。
多路径负载均衡功能,便是其中的一个最佳应用。
交换机(网侧)可以部署逐包喷洒技术,最大地提升带宽利用率,但会导致数据包乱序。
这个问题,是很难仅靠交换机本身去解决。
而智能网卡(端侧)却拥有足够的算力和资源进行乱序重排,将不可能变成可能,大大释放了网络潜力。
具体来说,通过报文保序(乱序重组)技术,可将乱序达到的报文,重新编排顺序上交到上层AI应用,将带宽效率从60%提升到95%以上。
正是超级AI以太网的出现,实现了交换机和网卡更加紧耦合的配合。
一边,交换机可以对网络数据包进行精细化的路由调度。另一边,智能网卡提供保序服务,实现了网络流量的高效均衡。
与此同时,网卡可以针对交换机上标注出的多维遥测信息,进行动态可编程的拥塞控制,实现全程无阻塞、零丢包。
由交换机+智能网卡实现高效的网络,便是「超级AI以太网」很典型的特点。
可见,若要真正发挥网络的性能,不仅需要提供大带宽,更重要的是通过良好的调度,提高「有效带宽」。
软件
有了如此复杂的系统,就要开发相应的调度软件,包括业务感知,资源自动调度和弹性扩展。
此外,在大模型开发过程中,故障隔离自愈变得越来越重要。
对于这一点,同样可以通过软件系统实现断点续算——一旦出现故障,就可以无缝退回到上一个checkpoint。
散热
与此同时,在万卡集群里面,要提升效率,就要使得每个节点的计算力越来越强。
所以,高密度AI计算是必然趋势,这样机柜供电就要从12-16千瓦走到120千瓦,散热将逐渐走向液冷。
无独有偶,英伟达也在最新的DGX SuperPOD中,采用的也是液冷散热。
算法
而且,算力是驱动不仅仅是源于芯片,也要靠算法。
从2017年,Transformer诞生之日至今,如果按照摩尔定律(18个月芯片性能翻一番)来算,芯片性能只提升了8倍。
然而实际上,AI计算的性能,已经提升了超过1000倍。
这就绝不仅仅是由于芯片制程的优化,而是源于整个系统的提升。
从算法层面来看,过去的大模型精度是FP32,后来变成了FP16,到今年已经进入了FP8,在未来还会走向FP4。
这种变化之下,算法对算力的需求会急剧减小,但对创新会很饥渴。
而浪潮信息正是基于包括算法并行、参数并行等技术上的优化,让算力效率提升了33%之多。
具体来说,浪潮信息在源2.0上采用了非均匀流水并行+优化器参数并行(ZeRO)+ 数据并行 + Loss计算分块的方法,相比于经典的3D并行方法,对带宽的需求更小,同时还能获得高性能。
举个例子,在均匀流水并行的时候,24层模型分到8个计算设备上,每个设备上会平均分到3层。
从下图中可以看到,这时内存在第一阶段就已经达到了GPU的上限。由此,模型的训练便需要更多设备、更长的流水并行线路,从而导致更低的算力效率。
而采用非均匀流水并行的方法,就可以根据模型每层对于内存的需求,结合内存的容量进行均衡分配,这样就能在有限的算力资源里把模型训起来了。
不过,流水线并行策略下,整个阶段依然是比较长的。
针对这个问题,团队通过引了优化器参数并行,进一步降低各个节点上内存的开销。
内存空间省下来了,就可以合并成更大的流水线,减少节点使用数量,节省算力资源。
算法创新的理念,在大模型领域也有一个佐证——MoE。
一个千亿级模型很难做到万亿级,是因为运算量和计算时间都远远超过了承载,效率奇低。
但混合专家系统MoE架构中,则是若干个千亿参数模型的混合。
而且,这样的专家调度系统,反而更符合人类大脑这种复杂的协同智慧涌现系统。
亲身尝试
发展AI应当「以系统为核心」的创新策略,正是浪潮信息多年来,在算力、大模型等领域深耕的结果。
早在2021年,ChatGPT还未出世之前,浪潮信息已然成为大模型的践行者之一,并发布了「源1.0」。
经过两年多的迭代,千亿级参数基础大模型「源2.0」全面开源。
从某种角度上来讲,他们做大模型,并不是希望成为一个靠大模型「吃饭」的公司。
而只是为了探索:LLM对计算的需求多大?万卡互联中什么最重要?应用场景是什么?创新的价值点在哪?
因为,只有亲身尝试去做,才能找到答案,获得深刻的理解。
IPF 2024大会上,浪潮信息董事长彭震给举了一个栗子:
团队曾在国产平台上做大模型训练时,发现了互联带宽速率并不理想。为了克服这个的难题,工程师们在算法层做了大量的优化,采用了算法并行、参数并行,使得整个算力效率提升了33%。
要知道,一个芯片的性能提升30%,至少要制程迭代一次才行。但通过实践,浪潮信息发现,软件算法很快就可以解决这个问题。
再比如,在近2500亿参数「源1.0」的开发中,团队们获得了一个认知大模型的基础,即参数量的增加,LLM精度也得到了提升。
所以说,创新不是站在岸边去想在水里怎么游泳,而是要投入其中,真干实干。
从解决问题的过程中,找到创新的路径。
这便是浪潮信息一直以来所践行的理念,通过技术、框架和规范的全方位创新构建计算系统,开辟AI新时代!
编辑/lambor
來源:新智元
一切計算皆AI已成爲行業共識。大模型參數規模從千億走向萬億,從單一走向MoE,對算力的需求愈加龐大。我們需要理清的是,單芯片所帶來的算力驅動已無法滿足LLM發展。
國內AI不行,是因爲芯片不行?
我們跟國外的差距,是因爲和$英偉達 (NVDA.US)$芯片的差距過大?
最近,圈內有許多這樣的論調。
其實深挖下去,就會發現事實完全不是這樣。即使是英偉達最先進的芯片,依然無法滿足當下人工智能在算力上的需求。
隨着模型參數量和數據量的增加,智慧不斷湧現,我們對更大集群的需求,也更加迫切。無論是國外,還是在國內,大家離終點都很遙遠。
算力≠芯片
如今,大規模神經網絡的訓練現狀是這樣的。
新鮮出爐的8B和70B參數的Llama 3訓練,需要24576塊H100組成的集群。
而據稱有1.8萬億參數的GPT-4,是在10000-25000張A100上完成了訓練。
爆火的Sora訓練參數量可能僅有30億,爆料稱,估計使用了4200-10500塊H100訓了1個月。
$特斯拉 (TSLA.US)$FSD V12,則是在1000萬個海量視頻片段進行訓練,需要用大概10000塊H100,耗資3億美元。
就連奧特曼最近在20VC的採訪中,提及了OpenAI目前增長的「核心瓶頸」:
我們有世界上最優秀的研究人員和研究文化。如果計算資源不足,將會拖慢我們的步伐。
一句話概括就是:給我算力!
然而,由於摩爾定律限制,從14nm到7nm再到5nm的製程進步,所帶來的性能增益越來越有限。
我們需要有這樣一個認知,即AI對算力的需求無窮盡,不能僅依靠AI芯片去滿足算力需求。
那該怎麼辦?
瓶頸何解?
其實,英偉達在GTC 24大會上推出的由DGX GB200系統構建的全新DGX SuperPOD,早已給出了答案。
通過在加速計算、網絡和軟件方面同時發力,新集群爲萬億參數模型的訓練和推理,提供了穩定的支持。
而且與上一代產品相比,新一代DGX SuperPOD架構的網絡計算能力提升了4倍。
也就是說,剛剛的問題就迎刃而解了——通過更大的集群來突破算力的瓶頸。
然而,隨着集成的芯片越來越多,我們不得不應對算法效率不高、計算資源不足、互聯帶寬受限等衆多技術挑戰。
計算資源不足
一方面,AI系統的性能主要源於GPU等加速器,因此需要其具備強大的異構擴展能力。
但是,傳統的計算機體系結構將加速計算模塊作爲CPU的配屬,通過PCI-e總線接入系統,只支持有限數量的異構單元,限制了異構加速器的擴展性。
並且,同CPU的通信帶寬也十分有限。
互聯帶寬受限
另一方面,互聯成爲了新的瓶頸。
AI集群早已從千卡、增長到萬卡、十萬卡,節點間並行所產生的海量通信需求,嚴重挑戰了現有的互聯能力。
比如,剛剛提到的GPT-4集群有2.5萬塊A100,而算力利用率(MFU)僅在32%到36%之間。
可見利用率非常之低,不過在當前技術條件下,幾乎觸頂了。
部分原因是故障數量過多,需要從checkpoint重新啓動訓練。
如果OpenAI在雲端使用A100的成本是1美元/h,那麼僅這一次的訓練,成本就會高達6300萬美元。
算法效率不高
當然,系統不是全部,AI訓練是一個超級複雜的計算系統。
如果模型算法結構與硬件結構匹配不合理、並行化處理不科學等都會導致整個計算平台的利用率偏低。
除此以外,機櫃之間若想實現高速的互聯,不僅耗電,且散熱不夠的挑戰也需要面對。
總而言之,解決以上難題,我們需要創新:用系統性開創思維去應對AI的挑戰。
萬卡集群
如今很多人都愛說,AI產業的發展「缺芯少魂」,彷彿AI發展不起來,都是芯片製造業的責任。
但實際上呢?
稍微一分析就會知道,如今AI的算力設計已經到了萬卡級別,其中某一張卡的性能,並沒有決定性的作用。
對於動輒千億、萬億參數的大模型來說,單機、單卡的效率不再那麼重要了。這時要看的,是算力平台的整體效率。
就拿GPT-3來說,它的訓練算法效率MFU只有21.3%,近79%的算力,都被浪費掉了。
之所以有如此嚴重的浪費,就是因爲在大規模計算中,單點效率很有限。因此算力再強都沒有用,接近80%的時間,都是在等。
爲什麼?一是由於互聯帶寬的限制,二是由於算法沒有考慮帶寬的優化,導致效率奇低。
在這種情況下,系統的互聯優化、高效組織協調、算法優化,重要性也愈發凸顯。
硬件
爲此,$浪潮信息 (000977.SZ)$在去年發佈了「融合架構3.0」。
這是一個全新的大規模計算架構,通過高速互聯總線,對計算存儲進行了解耦。
當GPU算力不足時,需要構建一個GPU池,這樣一臺服務器可以對接不僅僅是8卡,可也以是16卡、32卡。
同時,用相對比較低的算力堆積也存在瓶頸,因爲CPU和GPU之間需要有個最佳的配比。
針對不同模型的類型、以及模型之間的交互量,有些GPU發揮的作用大一些,有些小一些。
通過高速的系統總線將多個節點連接,CPU、GPU、內存全部基於池化去做,實現了融合架構和算法模型之間的適配。
這種全新的架構,不以芯片爲核心的單機系統,而是以萬卡集群爲設計出發點、以系統爲核心的架構。
在未來,AI計算領域重要的創新點,就落在瞭如何發揮系統價值、提升系統效率上。
而這個系統裏,接下來要解決的問題,就是如何互聯。
互聯
顯然,從千卡走向萬卡,系統集群之間的高速互聯變得愈加重要。
以往單一任務的AI工廠模式,早已不能滿足需求。
集群不僅僅是面向大模型訓練,還需提供服務,正是AICloud模式所能解決的。
但過去面向超級計算的專用網絡,無法很好地支持多用戶、多任務、多租戶的靈活需求。
提升GPU與GPU之間的高速互聯,英偉達閉源NVLink網絡成爲最典型的代表。
英偉達在DGX SuperPOD,利用了第五代NVLink鏈接,同時採用了Quantum-X800 InfiniBand網絡,可爲系統中每個GPU提供高達每秒1800GB/s的帶寬。
可以看到,GPU點對點的通信效率已從2017年32GB/S,過渡到了如今最高的1800GB/S,提升了56倍。
而在未來大模型訓練中,浪潮信息篤定的以「超級AI以太網」來支撐——相比於傳統RoCE可以實現1.6倍的效率提升。
爲什麼這麼說?
因爲,它能夠實現「端網協同」,爲模型訓練帶來極致的計算效率。
端網協同,是指AI交換機和智能網卡之間,能夠實現緊密配合,並結合開放技術爲網絡引入創新功能。
多路徑負載均衡功能,便是其中的一個最佳應用。
交換機(網側)可以部署逐包噴灑技術,最大地提升帶寬利用率,但會導致數據包亂序。
這個問題,是很難僅靠交換機本身去解決。
而智能網卡(端側)卻擁有足夠的算力和資源進行亂序重排,將不可能變成可能,大大釋放了網絡潛力。
具體來說,通過報文保序(亂序重組)技術,可將亂序達到的報文,重新編排順序上交到上層AI應用,將帶寬效率從60%提升到95%以上。
正是超級AI以太網的出現,實現了交換機和網卡更加緊耦合的配合。
一邊,交換機可以對網絡數據包進行精細化的路由調度。另一邊,智能網卡提供保序服務,實現了網絡流量的高效均衡。
與此同時,網卡可以針對交換機上標註出的多維遙測信息,進行動態可編程的擁塞控制,實現全程無阻塞、零丟包。
由交換機+智能網卡實現高效的網絡,便是「超級AI以太網」很典型的特點。
可見,若要真正發揮網絡的性能,不僅需要提供大帶寬,更重要的是通過良好的調度,提高「有效帶寬」。
軟件
有了如此複雜的系統,就要開發相應的調度軟件,包括業務感知,資源自動調度和彈性擴展。
此外,在大模型開發過程中,故障隔離自愈變得越來越重要。
對於這一點,同樣可以通過軟件系統實現斷點續算——一旦出現故障,就可以無縫退回到上一個checkpoint。
散熱
與此同時,在萬卡集群裏面,要提升效率,就要使得每個節點的計算力越來越強。
所以,高密度AI計算是必然趨勢,這樣機櫃供電就要從12-16千瓦走到120千瓦,散熱將逐漸走向液冷。
無獨有偶,英偉達也在最新的DGX SuperPOD中,採用的也是液冷散熱。
算法
而且,算力是驅動不僅僅是源於芯片,也要靠算法。
從2017年,Transformer誕生之日至今,如果按照摩爾定律(18個月芯片性能翻一番)來算,芯片性能只提升了8倍。
然而實際上,AI計算的性能,已經提升了超過1000倍。
這就絕不僅僅是由於芯片製程的優化,而是源於整個系統的提升。
從算法層面來看,過去的大模型精度是FP32,後來變成了FP16,到今年已經進入了FP8,在未來還會走向FP4。
這種變化之下,算法對算力的需求會急劇減小,但對創新會很飢渴。
而浪潮信息正是基於包括算法並行、參數並行等技術上的優化,讓算力效率提升了33%之多。
具體來說,浪潮信息在源2.0上採用了非均勻流水並行+優化器參數並行(ZeRO)+ 數據並行 + Loss計算分塊的方法,相比於經典的3D並行方法,對帶寬的需求更小,同時還能獲得高性能。
舉個例子,在均勻流水並行的時候,24層模型分到8個計算設備上,每個設備上會平均分到3層。
從下圖中可以看到,這時內存在第一階段就已經達到了GPU的上限。由此,模型的訓練便需要更多設備、更長的流水並行線路,從而導致更低的算力效率。
而採用非均勻流水並行的方法,就可以根據模型每層對於內存的需求,結合內存的容量進行均衡分配,這樣就能在有限的算力資源裏把模型訓起來了。
不過,流水線並行策略下,整個階段依然是比較長的。
針對這個問題,團隊通過引了優化器參數並行,進一步降低各個節點上內存的開銷。
內存空間省下來了,就可以合併成更大的流水線,減少節點使用數量,節省算力資源。
算法創新的理念,在大模型領域也有一個佐證——MoE。
一個千億級模型很難做到萬億級,是因爲運算量和計算時間都遠遠超過了承載,效率奇低。
但混合專家系統MoE架構中,則是若干個千億參數模型的混合。
而且,這樣的專家調度系統,反而更符合人類大腦這種複雜的協同智慧湧現系統。
親身嘗試
發展AI應當「以系統爲核心」的創新策略,正是浪潮信息多年來,在算力、大模型等領域深耕的結果。
早在2021年,ChatGPT還未出世之前,浪潮信息已然成爲大模型的踐行者之一,併發布了「源1.0」。
經過兩年多的迭代,千億級參數基礎大模型「源2.0」全面開源。
從某種角度上來講,他們做大模型,並不是希望成爲一個靠大模型「吃飯」的公司。
而只是爲了探索:LLM對計算的需求多大?萬卡互聯中什麼最重要?應用場景是什麼?創新的價值點在哪?
因爲,只有親身嘗試去做,才能找到答案,獲得深刻的理解。
IPF 2024大會上,浪潮信息董事長彭震給舉了一個栗子:
團隊曾在國產平台上做大模型訓練時,發現了互聯帶寬速率並不理想。爲了克服這個的難題,工程師們在算法層做了大量的優化,採用了算法並行、參數並行,使得整個算力效率提升了33%。
要知道,一個芯片的性能提升30%,至少要製程迭代一次才行。但通過實踐,浪潮信息發現,軟件算法很快就可以解決這個問題。
再比如,在近2500億參數「源1.0」的開發中,團隊們獲得了一個認知大模型的基礎,即參數量的增加,LLM精度也得到了提升。
所以說,創新不是站在岸邊去想在水裏怎麼游泳,而是要投入其中,真幹實幹。
從解決問題的過程中,找到創新的路徑。
這便是浪潮信息一直以來所踐行的理念,通過技術、框架和規範的全方位創新構建計算系統,開闢AI新時代!
編輯/lambor