【#區(qū)塊鏈# #Llama2推理RTX3090勝過4090,延遲吞吐量占優(yōu),但被A800遠遠甩開#】
這是為數(shù)不多深入比較使用消費級 GPU(RTX 3090、4090)和服務器顯卡(A800)進行大模型預訓練、微調和推理的論文。
原文來源:機器之心
圖片來源:由無界 AI?生成
大型語言模型 (LLM) 在學界和業(yè)界都取得了巨大的進展。但訓練和部署 LLM 非常昂貴,需要大量的計算資源和內存,因此研究人員開發(fā)了許多用于加速 LLM 預訓練、微調和推理的開源框架和方法。然而,不同硬件和軟件堆棧的運行時性能可能存在很大差異,這使得選擇最佳配置變得困難。
最近,一篇題為《Dissecting the Runtime Performance of the Training, Fine-tuning, and Inference of Large Language Models》的新論文從宏觀和微觀的角度詳細分析了 LLM 訓練、微調、推理的運行時性能。
論文地址:https://arxiv.org/pdf/2311.03687.pdf
具體來說,該研究首先在三個 8-GPU 上對不同規(guī)模(7B、13B 和 70B 參數(shù))的 LLM,面向預訓練、微調、服務進行端到端的性能基準測試,涉及具有或不具有單獨優(yōu)化技術的平臺,包括 ZeRO、量化、重新計算、FlashAttention。然后,該研究進一步提供了子模塊的詳細運行時分析,包括 LLM 中的計算和通信運算符。
方法介紹
該研究的基準測試采用自上而下的方法,涵蓋 Llama2 在三個 8-GPU 硬件平臺上的端到端步驟時間性能、模塊級時間性能和運算符時間性能,如圖 3 所示。
三個硬件平臺分別為 RTX4090、RTX3090 和 A800,具體規(guī)格參數(shù)如下表 1 所示。
在軟件方面,該研究比較了 DeepSpeed 和 Megatron-LM 在預訓練和微調方面的端到端步驟時間。為了評估優(yōu)化技術,該研究使用 DeepSpeed 逐一啟用如下優(yōu)化:ZeRO-2、ZeRO-3、offloading、激活重計算、量化和 FlashAttention,以衡量性能改進以及時間和內存消耗方面的下降。
在 LLM 服務方面,存在三個高度優(yōu)化的系統(tǒng),vLLM、LightLLM 和 TGI,該研究在三個測試平臺上比較了它們的性能(延遲和吞吐量)。
為了保證結果的準確性和可重復性,該研究計算了 LLM 常用數(shù)據集 alpaca 的指令、輸入和輸出的平均長度,即每個樣本 350 個 token,并隨機生成字符串以達到 350 的序列長度。
在推理服務中,為了綜合利用計算資源并評估框架的魯棒性和效率,所有請求都以突發(fā)模式調度。實驗數(shù)據集由 1000 個合成句子組成,每個句子包含 512 個輸入token。該研究在同一 GPU 平臺上的所有實驗中始終保持「最大生成 token 長度」參數(shù),以保證結果的一致性和可比性。
端到端性能
該研究通過預訓練、微調和推理不同尺寸 Llama2 模型(7B、13B 和 70B)的步驟時間、吞吐量和內存消耗等指標,來衡量在三個測試平臺上的端到端性能。同時評估了三個廣泛使用的推理服務系統(tǒng):TGI、vLLM 和 LightLLM,并重點關注了延遲、吞吐量和內存消耗等指標。
模塊級性能
LLM 通常由一系列模塊(或層)組成,這些模塊可能具有獨特的計算和通信特性。例如,構成 Llama2 模型的關鍵模塊是 Embedding、LlamaDecoderLayer、Linear、SiLUActivation 和 LlamaRMSNorm。
預訓練結果
在預訓練實驗環(huán)節(jié),研究者首先分析了三個測試平臺上不同尺寸模型(7B、13B 和 70B)的預訓練性能(迭代時間或吞吐量、內存消耗),然后進行了模塊和操作層面的微基準測試。
端到端性能
研究者首先進行實驗來比較 Megatron-LM 和 DeepSpeed 的性能,二者在 A800- 80GB 服務器上預訓練 Llama2-7B 時沒有使用任何內存優(yōu)化技術(比如 ZeRO)。
他們使用的序列長度為 350,并為 Megatron-LM 和 DeepSpeed 提供了兩組批大小,從 1 到最大批大小。結果如下表 II 所示,以訓練吞吐量(tokens / 秒)和消費級 GPU 內存(單位 GB)為基準。
結果表明,當批大小都為 1 時,Megatron-LM 稍快于 DeepSpeed。不過當批大小達到最大時,DeepSpeed 在訓練速度上最快。當批大小相同時,DeepSpeed 消耗了比基于張量并行的 Megatron-LM 更多的 GPU 內存。即使批大小很小,這兩個系統(tǒng)都消耗了大量的 GPU 內存,導致 RTX4090 或 RTX3090 GPU 服務器的內存溢出。
在訓練 Llama2-7B(序列長度為 350,批大小為 2)時,研究者使用了帶有量化的 DeepSpeed 來研究不同硬件平臺上的擴展效率。結果如下圖 4 所示,A800 幾乎是線性擴展,RTX4090 和 RTX3090 的擴展效率略低,分別為 90.8% 和 85.9%。在 RTX3090 平臺上,NVLink 連接比沒有 NVLink 時的擴展效率提升了 10%。
研究者使用 DeepSpeed 來評估不同內存和計算高效方法下的訓練性能。為公平起見,所有評估設置成序列長度為 350,批大小為 1,默認加載模型權重為 bf16。
對于具有卸載功能的 ZeRO-2 和 ZeRO-3,他們分別將優(yōu)化器狀態(tài)和優(yōu)化器狀態(tài) + 模型卸載到 CPU RAM。對于量化,他們使用了具有雙重量化的 4bits 配置。此外報告了 NVLink 失效時 RTX3090 的性能(即所有數(shù)據通過 PCIe 總線傳輸)。結果如下表 III 所示。
研究者通過最大化每種方法的批大小以獲得最大吞吐量,進一步利用不同 GPU 服務器的計算能力。結果如下表 IV 所示,表明了增加批大小可以很容易改進訓練過程。因此,具有高帶寬和大內存的 GPU 服務器比消費級 GPU 服務器更適合做全參數(shù)混合精度訓練。
模塊級分析
下表 V 展示了單步預訓練 Llama2-7B 模型的前向、后向和優(yōu)化器的整體及計算核心時間成本。對于后向階段,由于總時間包含了非重疊時間,計算核心時間遠遠小于前向階段和優(yōu)化器。如果非重疊時間從后向階段中移除,該值變成 94.8。
重計算和 FlashAttention 的影響
加速預訓練的技術大致可以分為兩類:節(jié)省內存增加批大小、加速計算核心。如下圖 5 所示,GPU 在前向、后向和優(yōu)化器階段有 5-10% 的時間處于閑置狀態(tài)。
研究者認為這種閑置時間是批大小較小造成的,因此他們測試了所有技術可以使用的最大批大小。最終利用重計算來增加批大小,利用 FlashAttention 來加速計算核心分析。
如下表 VII 所示,隨著批大小的增加,前向和后向階段的時間大幅增加,GPU 閑置時間幾乎沒有。
下表 VIII 顯示出,F(xiàn)lashAttention 分別可以將前向和后向的注意力模塊加速 34.9% 和 24.7%。
微調結果
在微調環(huán)節(jié),研究者主要討論參數(shù)高效微調方法(PEFT),展示 LoRA 和 QLoRA 在各種模型大小和硬件設置下的微調性能。使用序列長度為 350,批大小為 1,默認將模型權重加載到 bf16。
結果如下表 IX 所示,使用 LoRA 和 QLoRA 微調 Llama2-13B 的性能趨勢與 Llama2-7B 保持一致。與 lama2-7B 相比,微調 Llama2-13B 的吞吐量下降了約 30%。
不過當結合所有優(yōu)化技術時,即使 RTX4090 和 RTX3090 也可以微調 Llama2-70B,實現(xiàn) 200 tokens / 秒的總吞吐量。
推理結果
端到端性能
下圖 6 顯示了各種硬件平臺和推理框架下吞吐量的全面分析,其中省略了 Llama2-70B 的相關推理數(shù)據。其中 TGI 框架展現(xiàn)了卓越的吞吐量,尤其是 RTX3090 和 RTX4090 等具有 24GB 內存的 GPU。此外 LightLLM 在 A800 GPU 平臺上的性能顯著優(yōu)于 TGI 和 vLLM,吞吐量幾乎翻倍。
這些實驗結果表明,TGI 推理框架在 24GB 內存 GPU 平臺上具有卓越的性能,而 LightLLM 推理框架在 A800 80GB GPU 平臺上表現(xiàn)出最高的吞吐量。這一發(fā)現(xiàn)表明 LightLLM 專門針對 A800/A100 系列高性能 GPU 進行了優(yōu)化。
不同硬件平臺和推理框架下的延遲表現(xiàn)如下圖 7、8、9、10 所示。
綜上所示,A800 平臺在吞吐量和延遲方面均顯著優(yōu)于 RTX4090 和 RTX3090 兩款消費級平臺。并且在兩款消費級平臺中,RTX3090 比 RTX4090 略有優(yōu)勢。當在消費級平臺上運行時,TGI、vLLM 和 LightLLM 三個推理框架在吞吐量方面沒有表現(xiàn)出實質性差異。相比之下,TGI 在延遲方面始終優(yōu)于其他兩個。在 A800 GPU 平臺上,LightLLM 在吞吐量方面表現(xiàn)最好,其延遲也非常接近 TGI 框架。
相關文章
更多>>資訊排行
同類軟件下載
熱門標簽