什么是HPC內存墻,如何跨越它?
高性能計算 (HPC) 內存墻通常是指處理器速度和內存帶寬之間不斷擴大的差距。當處理器性能超過(guò)內存訪(fǎng)問(wèn)速度時(shí),這會(huì )在整體系統性能中造成瓶頸,尤其是在人工智能 (AI) 等內存密集型應用程序中。
本文引用地址:http://dyxdggzs.com/article/202505/470860.htm本文首先探討了內存墻的傳統定義,然后著(zhù)眼于另一種觀(guān)點(diǎn),該視圖將內存容量與 AI 模型中參數數量的增長(cháng)進(jìn)行比較。無(wú)論從哪個(gè)定義來(lái)看,記憶墻已經(jīng)到來(lái),這是一個(gè)嚴重的問(wèn)題。它以一些翻越墻壁或至少降低墻壁高度的技術(shù)結束。
當然,HPC 的定義正在不斷發(fā)展。幾年前被認為是 HPC 的東西不再符合最新的定義。根據處理器在峰值每秒浮點(diǎn)運算數 (FLOP) 與內存帶寬方面的性能比較,這個(gè)問(wèn)題已經(jīng)存在了 25 年多(圖 1)。雖然內存性能顯著(zhù)提高,但訪(fǎng)問(wèn)和傳輸數據的能力并沒(méi)有跟上數據處理者的能力。
圖 1.HPC 內存墻是處理器性能和內存帶寬之間的差距。(圖片:Astera Labs))
由于內存壁,處理器在等待內存上花費的時(shí)間越來(lái)越多。這意味著(zhù)無(wú)法使用昂貴的高性能處理器的某些功能。在涉及大型數據庫和復雜計算的 HPC 應用程序中,這可能是一個(gè)嚴重的問(wèn)題。
AI 視角
HPC 是 AI 的重要工具,尤其是用于訓練 AI 模型。當 AI 在 2015 年左右出現時(shí),典型模型中的參數數量相對較少。它不需要最高的 HPC 性能,因此其他應用程序遇到的內存墻不是問(wèn)題。
這種情況在 2019 年左右發(fā)生了變化,因為 AI 模型復雜性的快速增加超過(guò)了處理器性能的提高(圖 2)。在隨后的幾年里,AI 應用的內存墻高度持續增長(cháng),并可能成為 AI 性能進(jìn)一步進(jìn)步的限制因素。AI 的重要性日益增加,這增加了處理 HPC 內存墻的緊迫性。
圖 2.HPC 內存墻也可以從 AI 模型日益復雜的角度來(lái)看待。(圖片:Ayar Labs))
降低墻體高度
如上圖 1 所示,多代圖形雙倍數據速率 (GDDR) 和高帶寬內存 (HBM) 技術(shù)只是減緩了內存墻的增長(cháng)速度,但并沒(méi)有解決問(wèn)題。
還使用了幾種內存管理方法,包括多級分層緩存,其中常用數據存儲在更靠近處理器的位置,以及預取指令,通過(guò)減少訪(fǎng)問(wèn)主內存的需求來(lái)提高性能。
最大化內存使用的優(yōu)化算法也有助于減輕內存墻的影響。構建數據以更有效地使用可以最大限度地減少緩存未命中并提高性能。
最近的發(fā)展不是原始內存性能的改進(jìn),而是專(zhuān)注于新的計算和內存架構來(lái)擴展墻。
新架構方法的示例包括內存計算 (CIM),也稱(chēng)為內存處理 (PIM) 和內存計算 (IMC)。CIM 是一種基于硬件的架構,可直接在內存存儲中執行計算。這減少了對數據傳輸的需求并加快了計算速度。
IMC 是一種硬件和軟件方法。數據在 RAM 中處理以提高性能,并且可以利用多個(gè)內核和并行處理。CIM 和 IMC 可以從本地內存計算擴展 (CXL) 標準中受益。
用 CXL 征服墻壁
CXL 附加內存通過(guò)實(shí)現高效的內存共享和擴展多個(gè)處理器可用的內存容量和帶寬來(lái)解決 HPC 內存壁問(wèn)題。它利用 PCIe 物理層提供低延遲和高帶寬通信,促進(jìn) CPU 和附加內存之間的高效數據傳輸。
CXL 確保內存訪(fǎng)問(wèn)是一致的,并且所有處理器都具有一致的內存視圖,從而簡(jiǎn)化了內存管理。它為更高效的內存使用提供了結構和工具,幫助 HPC 系統克服了內存墻挑戰。
總結
雖然 HPC 內存墻通常是指提高處理器速度和滯后內存帶寬之間不斷擴大的差距,但它也可以相對于 AI 模型日益復雜來(lái)定義。無(wú)論從哪個(gè)定義來(lái)看,它都在增長(cháng),并且是一個(gè)越來(lái)越嚴峻的挑戰。設計人員可以使用多種工具來(lái)擴展或降低 HPC 內存墻的高度。
評論