




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
華為云計算技術有限公司非經本公司書面許可,任何單位和個人不得擅自摘抄、復制本文檔內容的部您購買的產品、服務或特性等應受華為云計算技術有限公司商業合同和條款的約或部分產品、服務或特性可能不在您的購買或使用范圍之內。除非合同另有約地址:貴州省貴安新區黔中大道交興功路華為云數據中心郵編網址:/文檔版本01(2024-03-301)版權所有?華為云計算技術有限公 3 4 4 5 52.2.2DRAM利用率低 6 6 8 10 11 11 12 12 12 13 14 15 16 16 17 18 18 193.5.1Embedding池化存儲 203.5.2Embedding均衡打散 20 21 文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司 基于大模型的生成式AI技術的重大突破推動了人工智能的應用范圍從傳統的分類任務擴展至廣泛的生成任務,引發了AI應用的爆發性增長,并引領IT產業邁入全新的“AI時代”。隨著AI產業的迅猛發展,云計算基礎設施也在從以通用算力為核心向以智能算力為核心轉變。在這種新型云計算基礎設施中,數據的“算力”和“存力”是相輔相成的。盡管云數據中心在智能算力方面取得了顯著進步,但是在存力方面的不足已成為制約效率的關鍵瓶頸。存力問題主要表現在三個方面:持久化存儲性能不足、DRAM利用率低、以及HBM內存墻問題。為解決這些存力問題,華為云推出了全球首創的彈性內存存儲服務EMS(ElasticMemoryService一種以內存為主要存儲介質的云基礎設施服務。通過EMS,華為云將傳統的“計算-存儲”分離的兩層云架構升級為“計算-內存-存儲”分離的三層云架構,其中新增的“內存層”即為EMS。這種新型的三層云架構能有效解決上述存力痛點,從而具有高資源彈性、高資源利用率和高性能等優勢。具體來說,EMS通過以下方式解決三大存力問題:1)作為計算與存儲之間的高性能緩存層,使用DRAM介質緩存來自HDD和SSD的數據,顯著提升數據訪問速度,解決“持久化存儲性能不足”問題;2)將AI服務器中的DRAM資源解耦并池化,形成EMS內存池,實現DRAM資源的按需分配和高效利用,解決“DRAM利用率低”問題;3)擴展AI加速器中的HBM內存,通過DRAM內存容量和帶寬的補充,大幅提升AI訓練和推理的性能,解決“HBM內存墻”問題。EMS的軟件架構主要由分布式內存池、領域專用服務SDK和管理控制面三部分組成,具備易用性、彈性擴展和高可用性。分布式內存池提供跨節點的內存管理、數據負載均衡和數據恢復等功能,確保內存數據存儲的低成本、高擴展性和高可用性。領域專用服務SDK提供針對不同AI場景的內存加速技術,如在AI推理場景中,通過以存代算、顯存擴展和計算卸載技術降低首token時延,提升解碼吞吐量,并支持更長的序列長度。在AI訓練場景中,通過并行訓練拓撲感知的檢查點讀寫技術,實現極低的檢查點操作時延。在推薦模型場景中,通過Embedding存取優化技術,實現高性能訪問。文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司 近年來,隨著基于大模型的生成式AI技術的顯著進步,人工智能的應用領域已從傳統的分類任務擴展至包括文本對話、圖片生成、視頻生成、代碼生成、Copilot、數字人等在內的生成類任務。這一變革推動了IT產業進入了一個全新的時代——“AI時代”,也預示著整個世界正邁向一個更加智能、高效、互聯的未來。據Gartner預測,到2026年,超過80%的企業將采用生成式AI模型或在生產環境中部署支持此類技術的應用;到2028年,75%的企業軟件工程師將依賴AI編碼助手1。此外,AI技術的廣泛應用預計將創造巨大的經濟價值,根據Mckinsey的預測,生成式AI有望為全球經濟貢獻約7萬億美元,其中中國預計將貢獻約2萬億美元2。隨著AI產業的快速發展,云計算基礎設施正從以通用算力為核心轉向以智能算力為核心。OpenAI的統計數據顯示,自2012年以來,最大規模的人工智能訓練任務所需的計算量每3.4個月翻一番,至2018年該指標已增長了30萬倍3。大模型的性能通常遵循規模法則(ScalingLaw)4,即模型參數、訓練數據量和訓練計算量的增加會帶來模型性能的相應提升。這意味著,為了提高大模型的性能,訓練和推理所需的算力將持續大幅增長。在未來,智能算力規模將遠超通用算力規模。IDC預測,2022至2027年間,中國智能算力規模的年復合增長率將達到33.9%,而同期通用算力規模的年復合增長率為16.6%,到2027年,智能算力(FP16)規模將達到1117.4EFLOPS,而通用算力(FP64)規模是117.3EFLOPS5。華為預測,到2030年,全球AI計算(FP16)總量將達到105ZFLOPS,較2020年增長500倍,而通用算力(FP32)總量是3.3ZFLOPS6。在以智能算力為中心的新型云計算基礎設施中,數據的“算力”和“存力”是相輔相成的。一方面,強大的數據算力(包括GPU、NPU等算力單元)需要充足的數據存力(如HBM、DRAM、SSD等存儲單2《生成式AI在中國:2萬億美元的經濟價值》,麥肯錫,2023年9月.3“AIandCompute”,OpenAI,May2018.4Kaplanetal."ScalingLawsforNeuralLanguageModels."arXivpreprintarXiv:2005《中國人工智能計算力發展評估報告,2023-2024》,IDC,2023年16《智能世界2030》,華為,2021年9月.文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司元)來保證數據處理的連續性和穩定性。另一方面,高效的數據存力也需要數據算力的支持,以便對存儲的數據進行有效處理和利用。數據的算力和存力之間存在著緊密的聯系和相互依賴。盡管云數據中心中的AI算力持續增強,數據存力的不足已成為制約其效率的關鍵瓶頸。存力的痛點主要表現在三個方面:持久化存儲性能不足、DRAM利用率低、以及HBM內存墻問題。隨著AI大模型和AI系統技術的迅速發展,傳統的持久化存儲介質已難以滿足大模型訓練和推理的高性能需求。近年來,大模型的參數數量呈指數級增長,導致模型大小急劇增加。例如,GPT-3的參數數量為1750億,而據推測GPT-4的參數數量將達到1.76萬億。若使用FP16格式存儲模型參數,GPT-3的模型大小約為350GB,GPT-4則約為3.52TB。在模型訓練過程中,除了模型參數外,還需存儲如優化器狀態等其它信息,使得模型的Checkpoint大小通常是模型參數大小的6倍左右。在云環境中,這些大模型的參數和Checkpoint通常存儲在持久化存儲服務(如對象存儲服務OBS)中,而云廠商提供的對象存儲服務中單個租戶桶的訪問帶寬一般在幾十Gbps。因此,從對象存儲服務中讀取或寫入一個模型往往需要幾十分鐘到數小時,這種長時間的讀寫延遲是不可接受的,會導致AI集群的計算資源等待,從而大幅增加AI集群的使用成本。圖2-1:持久化存儲的模型讀取耗時與推理和訓練的時延需求對比在模型推理過程中,AI加速器需要將模型參數加載到其HBM內存中進行推理。在Serverless推理場景中,AI加速器還需頻繁切換不同的模型以滿足不同用戶的推理任務需求,這種模型切換的時延需求通常在秒級別。在模型訓練過程中,AI集群的故障是不可避免的。當故障發生時,AI集群需要讀取模型Checkpoint來恢復訓練,此時所有參與訓練的AI加速器(通常在幾千到上萬卡級別)都需要等待文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司Checkpoint的讀取,這種讀取時延需求也在秒級別。此外,在訓練過程中,AI集群還需周期性地保存Checkpoint,Checkpoint的保存頻率越高,故障發生時的訓練時間損失越小。在保存Checkpoint的過程中,通常會造成AI加速器的阻塞,因此對Checkpoint寫入的性能要求更高,寫入時延需求在毫秒級別。如圖2-1所示,AI推理和訓練對大模型參數的讀寫時延需求與當前持久化存儲的實際讀寫耗時之間存在2至4個數量級的差距。2.2.2DRAM利用率低當前的AI集群不僅包含AI加速器,還配備了大量的DRAM內存資源。例如,一臺昇騰910服務器配置了8張NPU卡和1.5TB的DRAM,而NVIDIAGH200服務器中每張GPU卡則配備了512GB的DRAM。然而,在運行流行的大語言模型訓練和推理任務時,這些DRAM資源的利用率卻非常低。一項研究論文分析了兩個較大規模的GPU集群的資源利用率情況,結果顯示其中一個集群在90%的使用時間內DRAM利用率低于25%,另一個集群在76%的使用時間內DRAM利用率同樣低于25%,且在幾乎整個使用過程中,兩個集群的DRAM利用率均未超過50%7。AI集群中DRAM利用率低的主要原因在于,AI服務器上的DRAM資源通常是按照各種負載場景的最大需求進行配置的,以確保能夠運行所有類型的負載。這種配置策略導致在某些特定負載下DRAM利用率較高,而在大多數其它負載下DRAM利用率則較低。例如,在華為云的一個GPU服務器集群上,運行推薦模型訓練時DRAM利用率接近100%,運行CV模型訓練時DRAM利用率可達70%,但在運行大語言模型(LLM)訓練時,DRAM利用率則低于35%。由于目前AI集群主要由LLM負載主導,因此DRAM的整體利用率普遍偏低。AI加速器(如GPU、NPU、TPU等)面臨的HBM內存墻問題,已成為限制AI算力充分發揮的關鍵障礙。HBM內存墻主要包括內存容量墻和內存帶寬墻兩個方面。在內存容量墻方面,AI加速器的HBM內存容量增長速度遠遠落后于大模型存儲需求的增長速度。如圖2-2所示,典型的Transformer大模型的參數量每兩年以240倍的速度增長,而業界典型的商用AI加速器的內存容量僅每兩年翻兩倍。這種大模型參數量與AI加速器HBM內存容量增長速度之間的巨大差距,意味著訓練和推理一個模型需要更多的AI加速器,這將顯著增加AI訓練和推理的成本。此外,增加AI加速器數量的主要目的是為了讓大模型能夠存儲在AI加速器的HBM內存中,這通常會導致AI算力的利7Hu,etal."Characterizationoflargelanguagemodeldevelopmentinthedatacenter."In21stUSENIXSymposiumonNetworkedSystemsDesignandImplementation(文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司圖2-2:SOTA模型的參數量增長趨勢和AI硬件HBM內存容量增長趨勢8在內存帶寬墻方面,AI加速器的HBM內存帶寬的增長速度遠低于其算力的增長速度。如圖2-3所示,過去20年間,單個AI加速器的峰值計算能力增長了9萬倍,而內存訪問帶寬僅提高了30倍。這是因為提升硬件算力的工藝相對容易,而增加內存帶寬的硬件工藝則難度較大。AI加速器內存帶寬與算力增長速度之間的巨大差距,意味著在進行AI計算時,往往需要等待數據從內存中讀取,這導致算力的利8AmirGholami,ZheweiYaoandmemorywall."IEEEMicro(2024).文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司圖2-3:AI加速器的計算能力、內存帶寬和互聯帶寬的增長趨勢8為了解決云基礎設施中存在的上述三大存力痛點,華為云推出了全球首創的彈性內存存儲服務EMS(ElasticMemoryService),一種以內存(如DRAM、HBM等)為主要存儲介質的云基礎設施服務。華為云將傳統的“計算-存儲”分離的兩層架構升級為“計算-內存-存儲”分離的三層架構,如圖2-4所示,其中新增的“內存層”即為彈性內存存儲服務EMS。這種包含EMS的新型三層云基礎設施架構具有高資源彈性、高資源利用率和高性能等優勢,能夠有效解決上述三大存力痛點。首先,針對AI場景中“持久化存儲性能不足”的問題,EMS作為計算層與存儲層之間的高性能緩存層,利用DRAM介質緩存來自HDD和SSD介質的數據,顯著提升數據訪問速度。其次,針對AI場景中“DRAM利用率低”的問題,EMS將AI服務器中的DRAM資源進行解耦并池化,形成EMS內存池。EMS內存池中的DRAM資源根據不同計算任務的需求進行動態分配,從而實現內存資源的高效利用。計算層與內存層之間通過華為專有的高性能網絡總線連接,確保內存資源解耦池化后的高訪問性能。最后,針對AI加速器中的“HBM內存墻”問題,EMS利用內存池中的DRAM資源擴展AI加速器的HBM內存,通過增加DRAM容量來擴展HBM容量,并利用DRAM帶寬補充HBM帶寬,從而大幅提升AI訓練和推理的整體性能。文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司圖2-4:“計算-內存-存儲”分離的新型三層云架構演進文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司 本章將首先闡述EMS的軟件架構,隨后探討EMS內存解耦池化的關鍵技術,最后介紹EMS針對不同AI場景的內存加速關鍵技術。EMS的軟件架構主要由三部分組成:領域專用服務SDK、分布式內存池和管理控制面,如圖3-1所示。EMS的軟件面向高易用性、高彈性擴展性和高可用性設計。圖3-1:EMS軟件架構領域專用服務SDK包含一系列面向不同AI應用場景的插件和接口服務SDK,提供業務系統接入、業務數據布局和近數據處理等功能,實現業務請求的內存加速。目前,該技術主要應用于大語言模型、多模態模型、推薦模型等的訓練和推理,通過分布式內存池提升處理效率并降低成本。領域專用服務SDK的具體技術細節將在第3.3章、第3.4章和第3.5章中詳細介紹。分布式內存池負責跨節點的內存空間管理、數據負載均衡和數據恢復等任務,通過空間池化、共享訪問和故障切換等機制,確保系統具有低成本、高擴展性和高可用性。內存池提供兩種部署模式:a)融合部署,即利用AI服務器中的DRAM,將DRAM內存池化以實現分布式共享,并進行本地親和的調度和訪問;b)分離式部署,即使用獨立內存服務器提供內存池空間,通過高速內存總線實現對內存池空間的訪問。分布式內存池的具體技術將在第3.2章中詳細介紹。文檔版本01(2024-03-301)管理控制面負責服務的部署、監控、升級及運維管理等功能,通過華為云的云原生基礎設施為用戶提供一站式的云上運維解決方案。在AI訓練和推理場景中,AI服務器的數量可達數千至數萬臺,每個服務器上的DRAM內存通常按照最大需求進行配置和預留。然而,實際操作中,服務器間的內存利用率往往不均衡。由于DRAM是AI服務器成本的重要組成部分,池化DRAM以提高利用率和降低成本顯得尤為重要。此外,隨著“HBM內存墻”問題的日益凸顯,EMS通過在HBM和DRAM之間進行卸載及相應的數據管理來解決這一問題。EMS內存池需要滿足池化和卸載兩個關鍵需求,具體技術將在后續章節詳細介紹。圖3-2:內存池融合部署架構內存池融合部署架構通過利用AI服務器內的本地DRAM進行池化管理,提升內存利用率,如圖2-2所示。內存池化還帶來了共享能力,使得卡間能夠進行高效的數據共享,具體技術點如下。1)服務器內DRAM池化:AI加速卡根據需求從內存池中分配DRAM,避免了按卡粒度預留導致的卡間使用不均和利用率低的問題。2)服務器間DRAM池化:整個AI服務器集群形成一個大的內存池,解決了服務器間內存利用率不均的問題,提高了利用率并降低了成本。此外,任意AI節點能夠訪問任意緩存數據的能力,為AI訓練和推理場景下的加速技術(如基于內存checkpoint的故障快速恢復、長文本推理和PD分離等)的應用提供了支持。3)數據訪問親和性調度:在典型場景下(如大模型訓練Checkpoint和KVCache存儲),通過親和感知、動態均衡和預加載的方式,確保訓練和推理過程中的高帶寬內存訪問需求,并在一定程度上解決了內存利用不均衡的問題。文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司基于高速網絡總線加速的分離式內存池,是EMS內存池化和容量卸載的最終形態,如圖3-3所示。通過引入DRAM專有服務器硬件最大化降低成本,在內存使用均衡性、利用率和共享方面都提供了最優解。對外以一個整體展示,即體現在整柜硬件交付,也體現在如全局地址空間的空間管理能力。圖3-3:內存池分離部署架構通過DRAM卸載解決HBM的內存容量墻問題,但在某些場景下,DRAM同樣面臨容量不足和成本過高的問題。EMS進一步將數據卸載到高速持久化存儲介質(如SSD最終形成多級的分層卸載存儲形式,如圖3-4所示。通過引入AI訓練和推理流程感知的算法,進行HBM和DRAM之間、DRAM和SSD之間的主動卸載和取回調度,使得在訓推效率和成本上達成平衡。圖3-4:分級存儲技術示例在云數據中心中,通常擁有成千上萬的AI服務器。EMS為如此大規模的AI服務器提供內存存儲服務,也會具有較大的分布式規模。AI訓練和推理過程中卸載到EMS中的數據如果丟失,將會造成AI任文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司務的中斷或重新執行。EMS內存池提供基于副本和糾刪碼的內存數據冗余能力,以大幅提升數據的可用性,如圖3-5所示。圖3-5:內存數據冗余技術示例在本章節中,將首先探討AI推理的背景及其面臨的問題,隨后詳細介紹EMS針對AI推理的加速技在AI推理過程中,Transformer模型接收用戶的問題輸入,并通過迭代方式生成相應的回答。每個Transformer層由自注意力模塊和前饋網絡模塊組成。在自注意力模塊中,上下文詞元(token)與模型參數結合,生成中間數據K(鍵)和V(值),并進行注意力計算。為避免在迭代生成過程中重復計算KV,生成的KV中間數據被存儲在AI加速器的HBM內存中,形成KV緩存。每個詞元的KV緩存大小取決于模型的維度、層數以及數據精度,計算公式為:單個詞元的KV緩存大小=模型維度*模型層數*數據精度*2。例如,GPT3模型的數據維度和層數分別為12288和96,在雙字節精度下,單個詞元的KV緩存大小為12288*96*2*2字節=4.5MB。在推理過程中,每個推理請求所需的KV緩存大小與上下文長度成線性關系。例如,在GPT3模型的推理中,長度為2048的上下文將占用4.5MB*2048=10GB的AI加速器HBM內存空間。然而,AI加速器通常只能提供幾十GB的HBM容量,其中一部分用于存儲模型參數,僅剩余有效的空間用于KV緩存。例如,使用8張64GB的AI加速器部署GPT3模型,系統HBM總容量為8*64GB=512GB,其中350GB用于模型參數,剩余162GB僅能支持162GB/10GB=16個2048上下文長度的推理請求緩存KV值。因此,AI加速器能夠同時處理的請求數量受限于HBM內存容量。綜上所述,Transformer模型推理中存在嚴重的HBM內存墻問題。為解決這一問題,EMS提供了以下三種技術以加速AI推理:以存帶算、顯存擴展和計算卸載,如圖3-6所示。文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司圖3-6:AI推理場景中的EMS關鍵技術在Transformer模型的推理過程中,由于AI加速器的HBM內存容量限制,現有的推理系統無法在AI加速器的HBM中持續保存多輪對話的KV緩存。為了應對這一問題,系統通常會丟棄已處理對話的KV緩存,以騰出HBM空間來服務新的請求。然而,當這些被丟棄的KV緩存對應的對話再次出現時,系統必須重新計算這些KV緩存,如圖3-7a所示。這種重復計算不僅浪費了計算資源,還增加了推理成本。為了減少成本并提升推理性能,EMS服務引入了以存代算技術CachedAttention9,如圖3-7b所示。該技術利用EMS中的大容量多級內存池來存儲和復用多輪對話中產生的KV緩存,而不是直接丟棄它們。具體操作是,當一個會話變為非活躍狀態時,將相應的KV緩存保存到EMS中。當該對話重新激活時,再從EMS中加載并復用這些KV緩存,從而避免了重復計算。此外,EMS還采用了以下技術來優化緩存系統性能,如圖3-8所示1)采用逐層預加載和異步保存策略,以減少加載和保存KV緩存的時間2)利用多級緩存結構,通過更大容量的存儲介質提供充足的緩存空間3)通過自動感知調度器中的任務隊列信息,實現多層次存儲介質間的緩存調度,以提高訪問效率4)將位置編碼從KV緩存中分離,確保在模型上下文窗口長度溢出時KV緩存的可重用性。通過以存代算技術,EMS有效地避免了多輪對話中的重復計算,顯著降低了首字時延,提高了預填充階段的吞吐量,并降低了端到端的推理成本。9BinGao,ZhuominHe,PuruSharma,QingxuanKang,DjordjeJevdjic,JunboDeng,XingkunYang,ZhouYu,PengfeiZuo,“Cost-EfficientLargeLanguageModelCachedAttention”,inProceedingsofthe2024USENIXAnnualTechn文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司圖3-7:多輪對話中使用EMS圖3-8:EMS以存代算技術由于AI加速器中的HBM內存容量限制,AI加速器可能無法容納大的模型,或者即使能夠容納,也無法使用較大的批處理大小(BatchSize)。為了解決這一問題,EMS采用了顯存擴展技術,以增加AI加速器的可用顯存,從而支持運行超出HBM容量的模型或增加推理的批處理大小。在推理過程中,EMS將HBM中的KV緩存、模型權重等數據動態卸載到一個大容量的共享彈性內存池中,如圖3-9所示。通過利用計算層與內存池之間的高性能網絡總線,EMS實現了數據傳輸與計算過程的流水線并行,有效減少了內存池的訪問開銷。得益于這種大容量、高性能、共享訪問的彈性內存池,EMS的顯存擴展技術能夠增加推理的批處理大小,進而提升AI推理的整體吞吐率。圖3-9:EMS顯存擴展技術文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司針對Transformer模型推理中遇到的HBM內存墻問題,EMS通過計算卸載技術將自注意力模塊相關的KV緩存數據和輕量級算子卸載到內存池中,利用EMS中的DRAM容量擴展HBM的容量,并通過DRAM的內存帶寬補充HBM的帶寬,如圖3-10所示。具體而言,Transformer模型的自注意力模塊需要加載整個推理上下文的KV緩存以完成注意力分數的計算,這一過程涉及大量KV數據的讀取,而相關算子的計算量相對較小。與此相反,前饋網絡模塊主要由計算需求較大的全連接網絡算子構成,對存儲容量的需求較小。EMS根據這些不同的計算特性,將自注意力模塊和前饋網絡模塊分別在計算能力較小但存儲能力較大的CPU側和計算能力較大但存儲能力較小的AI加速器上完成。同時,EMS根據推理任務的服務級別協議(SLA)需求,智能地決定卸載的時機和粒度,通過彈性內存池的大容量和大帶寬優勢緩解了HBM內存墻問題,采用異構推理方案提升了AI推理的端到端性能和性價比。圖3-10:EMS計算卸載技術在AI大模型的訓練場景中,通常需要成千上萬張卡進行并行分布式訓練。由于參與的機器數量眾多,故障率也隨之升高,這成為了提升大模型訓練效率的一個主要障礙。例如,在OPT模型的訓練報告中,平均每天會發生兩次故障。為了確保訓練任務能夠在故障后恢復,訓練過程中必須定期保存檢查點(checkpoint),并在故障發生時加載這些檢查點。因此,檢查點的保存和加載速度對于訓練效率至關重要。傳統的做法是將檢查點直接保存到持久化存儲系統中,而EMS提出了一種新的方案,即使用分布式內存池來保存檢查點,如圖3-11所示。通過將檢查點保存在EMS內存池中的DRAM介質上,故障后可以直接從DRAM內存中快速加載檢查點,顯著提高了保存和加載的速度。EMS內存池的多副本冗余機制確保了檢查點的高可用性。此外,EMS還會根據需要將內存中的檢查點保存到遠程持久化存儲系統,如SFSTurbo或OBS,形成內存與持久化存儲相結合的多級存儲方案,以解決DRAM介質的易失性問題。EMS的全內存檢文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司查點方案包括三項關鍵技術:并行訓練拓撲感知的檢查點保存、基于參數面通信的檢查點恢復和選擇性檢查點持久化。圖3-11:AI訓練場景使用EMS的架構由于DRAM內存的易失性,為了確保在EMS中保存的檢查點數據具有高可用性,必須實施數據冗余策略。為此,EMS采用了一種結合并行訓練和拓撲感知的檢查點保存技術,該技術在實現數據冗余的同時,也大幅提升了保存性能。這種技術利用了數據并行訓練中NPU卡之間的模型重復性,實現了內存檢查點的多副本存儲,也顯著提升了檢查點的保存效率。在數據并行訓練中,模型冗余是自然產生的,這使得我們可以將同一數據并行組內各卡上的檢查點視為相互冗余的副本。例如,當數據并行度設置為32時,意味著有32個相同的模型在并行訓練。如果EMS需要保留3個檢查點副本,那么在同一數據并行組內的32張卡中,每張卡只需保存3/32的檢查點數據。所有卡的數據合起來,就能形成3個完整的檢查點副本,滿足EMS對副本數量的需求。在融合部署架構下,每張卡僅需將檢查點數據寫入到本節點的EMS上。這與傳統的多副本備份方法不同,后者需要跨節點傳輸完整的檢查點數據。而EMS通過在本地保存檢查點數據即可實現多副本,極大地提高了訓練效率,如圖3-12所示。文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司圖3-12:EMS中并行訓練感知的檢查點保存技術在使用數據并行的分布式訓練中(并行度=N),在進行故障恢復時,N個NPU卡需要讀取相同的檢查點。如果通過VPC網絡進行恢復,性能會受到限制。為此,EMS采用了一種基于NPU通信的檢查點恢復方法,如圖3-13所示。該方法首先感知模型訓練的并行拓撲,識別出需要同一檢查點的NPU卡。然后,利用本地內存先讀取檢查點,并根據感知的拓撲結構,通過NPU卡間的參數面通信來補全檢查點。與傳統的跨節點通信方式相比,EMS利用了高速的卡間帶寬來獲取檢查點,從而大大提升了檢查點的恢復效率。圖3-13:EMS基于NPU通信的檢查點恢復技術由于DRAM內存中的檢查點可能因意外而丟失,因此進行持久化存儲是必要的。然而,如果每次都將DRAM內存中的檢查點保存到持久化存儲中,將會嚴重影響性能,并可能阻塞對新的內存檢查點的寫入。為了解決這一問題,EMS采用了選擇性持久化技術,如圖3-14所示。用戶可以指定哪些檢查點需要保存到持久化存儲中,或者配置一個策略來決定檢查點的持久化頻率。這樣,EMS只用將部分版本的檢查點寫入到持久化存儲中,而其它版本的檢查點會在內存中被覆蓋寫。采用此技術,EMS能夠有效降低對持久化存儲的壓力,并防止對內存檢查點寫入的阻塞。另外,EMS采用了雙快照機制來保存檢查點,以保證EMS中總是有一份最新的完整檢查點用于訓練時的故障恢復。具體來說,EMS維護兩個固定的緩沖區用于保存文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司內存級別的檢查點。在這兩個緩沖區中,一個用于存儲正在寫入的檢查點,另一個則負責存儲上一個次已完成寫入的檢查點。兩個緩沖區交替執行寫入操作,確保EMS中的檢查點始終有一份最新的完整檢查圖3-14:EMS中選擇性持久化技術推薦模型在廣告、新聞和視頻推薦等多個領域得到了廣泛應用。與大型語言模型和視覺模型不同,推薦模型的輸入特征中包含大量ID類型的數據,如用戶ID、新聞ID和視頻ID等。這些ID特征通常具有極高的維度且非常稀疏,難以直接被神經網絡處理。為了解決這一問題,推薦模型采用了Embedding加多層感知器(MLP)的架構。通過Embedding技術,ID類型特征被映射到低維向量,從而縮小了與神經網絡之間的差距。推薦模型中包含多個Embedding表,每個表負責將特定類型的ID特征轉換為Embedding。圖3-15展示了推薦模型的前向計算過程:ID特征首先通過Embedding表轉換為Embedding,然后這些Embedding經過池化處理,如求和或平均,最終輸入MLP以生成最終的推薦標簽。由于ID類型特征的基數龐大,推薦模型中Embedding層的參數量非常大。例如,億級的視頻ID特征可能需要一個擁有萬億參數的Embedding表。因此,Embedding通常占據了推薦模型中超過99.9%的參數。與計算機視覺和大語言模型不同,推薦模型訓練面臨的一個主要挑戰是數據更新迅速且特征極其稀疏,例如高維的one-hot或multi-hot向量。此外,新數據的不斷加入可能導致特征向量達到百萬甚至億級,使得模型規模達到萬億字節,難以存儲在單個NPU或單臺機器的內存中。在訓練和在線推理過程中,神經網絡計算中涉及的Embedding數據量相對較小,通常不到總數據量的1%。因此,業界普遍采用一個獨立的全局Embedding存儲服務(或參數服務器)來提供統一的Embedding管理、存儲和計算能力。EMS作為推薦模型訓練和推理過程中的Embedding存儲服務,旨在實現高資源利用率和高的訪問性能。EMS提供Embedding存儲服務的關鍵技術將在下文中介紹。文檔版本01(2024-03-301)版權所有?華為云計算技術有限公司圖3-15:典型的推薦模型結構圖在推薦模型訓練過程中,EMS提供全量的Embedding池化存儲,如圖3-16所示。另外,在每個訓練節點中,本地Embedding模塊用于緩存頻繁訪問的Embedding,并負責與上層推理框架進行交互。當訓練節點需要獲取Embedding時,首先嘗試從本地Embedding緩存中讀取。若緩存未命中,則該節點會從EMS中拉取所需數據。在訓練過程中,梯度更新任務由數據分片(shard)所屬的計算節點執行,并異步將更新后的數據推送回E
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 育嬰師知識更新試題及答案
- 激光技術的市場推廣策略試題及答案
- 衛生管理考試常識知識試題及答案
- 光電工程師證書考試的知識整合與構思技巧試題及答案
- 王牌駕校考試題及答案
- 一個有意義的建軍節
- 校團委考試試題及答案
- 衛生管理領域證書考試的必考試題及答案
- 激光技術工程師能力評估要點試題及答案
- 藥劑學核心概念試題及答案
- DB32T 3985-2021 河湖岸坡植物防護技術規范
- CJJ-T 34-2022 城鎮供熱管網設計標準
- 流體力學(劉鶴年) 全集通用課件
- 配偶戶口調京央屬企事業單位有關規定
- 機動車檢驗員現場操作考核表.docx
- 劍橋國際少兒英語KB2--測試題
- 湘潭電信校園團隊執行手冊
- 《多媒體技術與應用》課程教學大綱
- SJG 68-2019 人行地下通道設計標準
- 品牌CIS導入報價表高端品牌文化理念加設計
- 商業樓工程量清單完整版
評論
0/150
提交評論