哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用FP8新技術(shù)加速大模型訓練

NVIDIA英偉達企業(yè)解決方案 ? 來源:NVIDIA英偉達企業(yè)解決方案 ? 2024-12-09 11:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

利用 FP8 技術(shù)加速 LLM 推理和訓練越來越受到關(guān)注,本文主要和大家介紹如何使用 FP8 這項新技術(shù)加速大模型的訓練。

使用 FP8 進行大模型訓練的優(yōu)勢

7c308e80-b3b3-11ef-93f3-92fbcf53809c.png

FP8 是一種 8 位浮點數(shù)表示法,F(xiàn)P8 的詳細介紹可以參考此鏈接:

https://docs.nvidia.com/deeplearning/transformer-engine/user-guide/examples/fp8_primer.html#Introduction-to-FP8

其中,使用 FP8 進行大模型訓練具有以下優(yōu)勢:

新一代 GPU 如NVIDIA Ada Lovelace、Hopper架構(gòu)配備了最新一代的 Tensor Core,可以支持 FP8 數(shù)據(jù)精度的矩陣運算加速。相比之前的 FP16 或 BF16 的數(shù)據(jù)類型,F(xiàn)P8 的 Tensor Core 可提供兩倍的 TFlops 算力。

除了計算上的性能加速之外,F(xiàn)P8 本身的數(shù)據(jù)類型占用的比特數(shù)比 16 比特或 32 比特更少,針對一些內(nèi)存占用比較大的 Operation,可以降低內(nèi)存占用消耗。

FP8 數(shù)據(jù)類型不僅適用于模型的訓練,同樣也可用于推理加速,相對于以前常見的 INT8 的推理方法,使用 FP8 進行模型的訓練和推理,可以保持訓練和推理階段模型性能及數(shù)據(jù)算法的一致,帶來了更好的精度保持,避免了使用 INT8 進行額外的精度校正。

7c465a4e-b3b3-11ef-93f3-92fbcf53809c.png

當然,F(xiàn)P8 對比 FP16 或者 FP32 在數(shù)值表示范圍上引入了新的挑戰(zhàn),從上面的表格中可以看到,F(xiàn)P8 數(shù)據(jù)類型所能表示的數(shù)值范圍較小,精度較低。因此需要針對 FP8 引入更細粒度的算法改進,如針對每個 Tensor 進行 Scaling 的方法。對于 FP8 訓練中的挑戰(zhàn),NVIDIA 提出了一種 Delayed Scaling 的方法針對 FP8 Tensor 在訓練過程中引入動態(tài) Scaling,使得在 FP8 訓練過程中在加速矩陣運算的同時借助 per-Tensor scaling 的方法保持精度。

7c5ad528-b3b3-11ef-93f3-92fbcf53809c.png

上述方法目前已被 NVIDIA 技術(shù)團隊實現(xiàn),并集成到了Transformer Engine軟件包中。Transformer Engine 是 NVIDIA 提供的開源的訓練工具包,專門針對 FP8 大模型訓練實現(xiàn)了一系列功能,包含針對大模型所常見模型結(jié)構(gòu)如 Transformer 層等,同時針對 FP8 提供了 Delayed Scaling 這一方法的實現(xiàn)。

目前,Transformer Engine 已支持 PyTorch、JAX、Paddle 等主流框架,并與其它框架相兼容,且為了支持大模型訓練,還實現(xiàn)了對模型及 Sequence Level 并行的方法。

使用 Transformer Engine 十分簡單方便,只需調(diào)用 Layer 層或 Transformer 層,并將 FP8 的 Delayed Scaling Recipe 包含在模型的定義的 context 中。剩下的訓練過程中,所有 Tensor 的 Scaling 以及額外的輔助操作都可由 Transformer Engine 進行處理,無需額外操作 (參考上圖右側(cè)的示例)。

7c816440-b3b3-11ef-93f3-92fbcf53809c.png

當前 Transformer Engine 已與NVIDIA NeMo、Megatron-LM以及HuggingFace 等業(yè)界開源社區(qū)訓練框架融合,便于在大模型的訓練中根據(jù)自己的需求方便調(diào)用 FP8 訓練能力。比如:

在 NeMo 中想要打開 FP8 訓練,只需要在配置文件中將 transformer_engine 和 FP8 分別設(shè)為 True,就可以方便的增加 FP8 的支持

在 Megatron-LM 中,只需要將 config 文件中的 FP8 設(shè)置為 hybrid,就可以用 FP8 進行大模型加速訓練的過程。

FP8 旨在提升模型訓練速度,目前已在 Hopper GPU 上對 Llama 系列模型進行 FP8 訓練性能測評,結(jié)果顯示在 7B、13B 到 70B 等不同大小的模型下,使用 FP8 進行訓練吞吐對比 BF16 其性能可提升 30% 至 50%。

FP8 在大模型訓練中的特點,可簡單總結(jié)為以下幾點:

與之前的一些更高精度的方法相比,比如 FP32、TF32、FP16、BF16 等格式,F(xiàn)P8 具有更高的 Flops 數(shù)值。理論估計 FP8 相比 FP32 有四倍的算力提升,比 BF16 有兩倍的提升。在下面的表格中可以看到,在實際端到端訓練任務(wù)的過程中,在不同的模型規(guī)模下,訓練速度可以獲得約 1.37 倍到 1.52 倍的加速。

7c9ad588-b3b3-11ef-93f3-92fbcf53809c.png

與更高精度的表示方法相比,F(xiàn)P8 有 E5M2 和 E4M3 兩種表示方式 (其中 E 為指數(shù)位,M 為尾數(shù)位)。E5M2 的指數(shù)位更多,意味著其數(shù)值表示范圍更大,梯度通常數(shù)值跨度更大,因此 E5M2 更適合用在 backward 當中。而 E4M3 是一種精度更高但動態(tài)范圍較小的表達方式,因此它更適合在 forward 過程中處理 weights 和 activations。這種混合形式,可以在大模型的訓練過程中根據(jù)情況靈活的運用這兩種方式。對比以前進行的混合精度或低精度訓練,TF32 可以無縫替換 FP32,但到了 BF16 的 AMP 階段,我們不僅需要處理計算的低精度,還需對整個 Loss 和梯度進行 scaling。在 FP16 AMP 中,我們會針對整個網(wǎng)絡(luò)維護一個 loss scale factor,而精度降至 8 比特時,就需要更精細地制定一套 recipe 來維護 FP8 的精度表現(xiàn),即在 FP8 訓練過程中,我們需要進行 per-tensor scaling。但是在進行 per-tensor 時,會引入數(shù)值不穩(wěn)定的問題,因此我們需要謹慎處理。

7cb3e9f6-b3b3-11ef-93f3-92fbcf53809c.png

NVIDIA Transformer Engine 為用戶提供了相應(yīng)的 recipe,通過簡單傳入?yún)?shù),即可方便地利用 FP8 的高算力,同時保持模型收斂性的表現(xiàn)。需要注意的是,并不是訓練中的每個算子都要使用到 FP8,其主要應(yīng)用于線性層中的前向與后向矩陣乘運算中。而對于某些精度敏感的層,我們?nèi)詴褂酶呔扔嬎悖热缣荻雀?、softmax 激活等。Transformer Engine 集成了很多 FP8 所需的可以保證精度的 recipe,并且 Transformer Engine 還集成到如 PyTorch、TensorFlow、Jax、Paddlepaddle 等更上層的訓練框架,同時一些針對 LLM 訓練的框架,如 Megatron-LM、NeMo Framework、DeepSpeed 等,也都集成了 FP8 能力。

7cc504e8-b3b3-11ef-93f3-92fbcf53809c.png

7ce1b214-b3b3-11ef-93f3-92fbcf53809c.png

我們也針對大模型訓練的不同場景,對 FP8 的收斂性進行了測試和驗證。


上圖展示了一個從零開始預(yù)訓練的損失曲線驗證,使用 Llama2 7B 模型,在 Pile 的 300 billion tokens 預(yù)訓練數(shù)據(jù)集上,分別進行了 FP8 和 BF16 兩種精度下的模型訓練,可以看到兩種精度的損失曲線吻合度極高,數(shù)值差異不到 1%。

7d01d3b4-b3b3-11ef-93f3-92fbcf53809c.png

此外,我們還使用 NVIDIA 開發(fā)的一個 8B 模型進行了繼續(xù)預(yù)訓練測試,數(shù)據(jù)集同樣為 300 billion tokens,也可以看到 FP8 精度下和 BF16 的損失曲線差距也是很小的。同時在包括 MMLU 等多個下游任務(wù)上,也可以看到兩種精度所訓練的模型的下游精度也是比較吻合的。

7d1842e8-b3b3-11ef-93f3-92fbcf53809c.png

除了預(yù)訓練階段,我們也對 SFT 階段的 FP8 訓練精度進行了驗證,包括對 Llama2 7B、13B、70B 模型分別進行了 SFT (使用 NeMo 框架,數(shù)據(jù)集為開源社區(qū)中三個流行的英文數(shù)據(jù)集,MT-Bench 作為 SFT 精度驗證)。


可以看到對比了三種不同大小模型在兩種精度下的 SFT Loss 曲線,可以看到 Loss 曲線吻合度非常高,并隨著模型大小的增大,損失曲線明顯下降。

除了 Loss 曲線,也可以看到在 MT-Bench 測評集上三個模型在兩種精度下的 Score 也非常接近。

7d36d1d6-b3b3-11ef-93f3-92fbcf53809c.png

上圖是一個 SFT 模型生成效果的對比示例,可以看到在使用 13B 模型時,Prompt 為一個簡單編程任務(wù)的情況下,可以看到 FP8 和 BF16 生成的內(nèi)容也是非常接近和類似。

FP8 訓練案例分享

零一萬物的雙語 LLM 模型:

FP8 端到端訓練與推理的卓越表現(xiàn)

零一萬物是一家專注于大語言模型的獨角獸公司,他們一直致力于在 LLM 模型,及其基礎(chǔ)設(shè)施和應(yīng)用的創(chuàng)新。其可支持 200K 文本長度的開源雙語模型,在 HuggingFace 預(yù)訓練榜單上,與同等規(guī)模的模型中對比表現(xiàn)出色[1]。在零一萬物發(fā)布的千億模型 AI Infra 技術(shù)上,他們成功地在 NVIDIA GPU 上進行了端到端 FP8 訓練和推理,并完成了全鏈路的技術(shù)驗證,取得了令人矚目的成果。

零一萬物的訓練框架是基于 NVIDIA Megatron-LM 開發(fā)的 Y 訓練框架, 其 FP8 訓練基于 NVIDIA Transformer Engine。在此基礎(chǔ)上,零一萬物團隊進一步的設(shè)計了訓練容錯方案:由于沒有 BF16 的 baseline 來檢查千億模型 FP8 訓練的 loss 下降是否正常,于是,每間隔一定的步數(shù),同時使用 FP8 和 BF16 進行訓練,并根據(jù) BF16 和 FP8 訓練的 loss diff 和評測指標的差異,決定是否用 BF16 訓練修正 FP8 訓練。

由于 FP8 訓練的過程中需要統(tǒng)計一定歷史窗口的量化信息,用于 BF16 到 FP8 的數(shù)據(jù)裁切轉(zhuǎn)換,因此在 BF16 訓練過程中,也需要在 Transformer Engine 框架內(nèi)支持相同的統(tǒng)計量化信息的邏輯,保證 BF16 訓練可以無縫切換到 FP8 訓練,且不引入訓練的效果波動。在這個過程中,零一萬物基于 NVIDIA 軟硬結(jié)合的技術(shù)棧,在功能開發(fā)、調(diào)試和性能層面,與 NVIDIA 團隊合作優(yōu)化,完成了在大模型的 FP8 訓練和驗證。其大模型的訓練吞吐相對 BF16 得到了 1.3 倍的性能提升。

7d5b6492-b3b3-11ef-93f3-92fbcf53809c.png

在推理方面,零一萬物基于NVIDIA TensorRT-LLM開發(fā)了 T 推理框架。這個框架提供了從 Megatron 到 HuggingFace 模型的轉(zhuǎn)化,并且集成了 Transformer Engine 等功能,能夠支持 FP8 推理,大大減小了模型運行時需要的顯存空間,提高了推理速度,從而方便社區(qū)的開發(fā)者來體驗和開發(fā)。具體過程為:

將 Transformer Engine 層集成到 Hugging Face 模型定義中。

開發(fā)一個模型轉(zhuǎn)換器,將 Megatron 模型權(quán)重轉(zhuǎn)換為 HuggingFace 模型。

加載帶有校準額外數(shù)據(jù)的 HuggingFace 模型,并使用 FP8 精度進行基準測試。取代 BF16 張量以節(jié)省顯存占用,并在大批量推理中獲得 2 至 5 倍的吞吐提升。

7d73e5a8-b3b3-11ef-93f3-92fbcf53809c.png

Inflection AI 的 FP8 訓練

Inflection AI 是一家專注于 AI 技術(shù)創(chuàng)新的公司,他們的使命是創(chuàng)造人人可用的 AI,所以他們深知大模型的訓練對于 AI 生成內(nèi)容的精準性和可控性至關(guān)重要。因此,在他們推出的 Inflection-2 模型中,采用了 FP8 技術(shù)對其模型進行訓練優(yōu)化。

與同屬訓練計算類別的 Google 旗艦?zāi)P?PaLM 2 相比,在包括知名的 MMLU、TriviaQA、HellaSwag 以及 GSM8k 等多項標準人工智能性能基準測試中,Inflection-2 展現(xiàn)出了卓越的性能,成功超越了 PaLM 2,彰顯了其在模型訓練方面的領(lǐng)先性,同時也印證了 FP8 混合精度訓練策略能夠保證模型正常收斂并取得良好的性能[2]。

7d8d568c-b3b3-11ef-93f3-92fbcf53809c.png

此圖片由Inflection AI 制作,

如果您有任何疑問或需要使用此圖片,

結(jié)語

FP8 技術(shù)在推動 AI 模型的高效訓練和快速推理方面有巨大的潛力,NVIDIA 的技術(shù)團隊也在和我們的客戶一起不斷探索完善應(yīng)用 FP8 訓練和推理方法,未來我們也會持續(xù)為大家進行介紹以及最佳實踐分享。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 大模型
    +關(guān)注

    關(guān)注

    2

    文章

    3746

    瀏覽量

    5268
  • LLM
    LLM
    +關(guān)注

    關(guān)注

    1

    文章

    350

    瀏覽量

    1391

原文標題:如何使用 FP8 加速大模型訓練

文章出處:【微信號:NVIDIA-Enterprise,微信公眾號:NVIDIA英偉達企業(yè)解決方案】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    海光DCU完成階躍星辰基座模型Step 3.5 Flash推理適配

    近日,海光DCU正式完成對階躍星辰旗艦開源基座模型Step 3.5 Flash的全流程適配與深度調(diào)優(yōu)。得益于新一代海光DCU原生支持FP8精度、超越主流旗艦產(chǎn)品的更大顯存等核心優(yōu)勢,高效完成Step 3.5 Flash FP8
    的頭像 發(fā)表于 03-26 09:48 ?591次閱讀

    訓練到推理:大模型算力需求的新拐點已至

    在大模型產(chǎn)業(yè)發(fā)展的早期階段,行業(yè)焦點主要集中在大模型訓練所需的算力投入。一個萬億參數(shù)大模型訓練可能需要數(shù)千張GPU芯片連續(xù)運行數(shù)月,成本高
    的頭像 發(fā)表于 02-05 16:07 ?997次閱讀
    從<b class='flag-5'>訓練</b>到推理:大<b class='flag-5'>模型</b>算力需求的新拐點已至

    RA8P1部署ai模型指南:從訓練模型到部署?|?本周六

    在嵌入式邊緣AI中,如何把“訓練好的模型”穩(wěn)定地“跑在板子上”,決定了項目能否落地。我們帶你基于RA8P1平臺,跑通從數(shù)據(jù)準備、模型訓練、量
    的頭像 發(fā)表于 11-20 18:06 ?2336次閱讀
    RA<b class='flag-5'>8</b>P1部署ai<b class='flag-5'>模型</b>指南:從<b class='flag-5'>訓練</b><b class='flag-5'>模型</b>到部署?|?本周六

    在Ubuntu20.04系統(tǒng)中訓練神經(jīng)網(wǎng)絡(luò)模型的一些經(jīng)驗

    本帖欲分享在Ubuntu20.04系統(tǒng)中訓練神經(jīng)網(wǎng)絡(luò)模型的一些經(jīng)驗。我們采用jupyter notebook作為開發(fā)IDE,以TensorFlow2為訓練框架,目標是訓練一個手寫數(shù)字識
    發(fā)表于 10-22 07:03

    小白必讀:到底什么是FP32、FP16、INT8?

    網(wǎng)上關(guān)于算力的文章,如果提到某個芯片或某個智算中心的算力,都會寫:在FP32精度下,英偉達H100的算力大約為0.9PFlops。在FP16精度下,某智算中心的算力是6.7EFlops。在INT8
    的頭像 發(fā)表于 10-20 14:34 ?1627次閱讀
    小白必讀:到底什么是<b class='flag-5'>FP</b>32、<b class='flag-5'>FP</b>16、INT<b class='flag-5'>8</b>?

    Cognizant加速AI模型企業(yè)級開發(fā)

    -Cognizant推出AI Training Data Services,助力企業(yè)級AI模型加速開發(fā) Cognizant是數(shù)據(jù)與AI模型訓練合作伙伴,長期深受大型數(shù)字原生先鋒企業(yè)信賴
    的頭像 發(fā)表于 07-31 17:25 ?796次閱讀

    積算科技上線赤兔推理引擎服務(wù),創(chuàng)新解鎖FP8模型算力

    模型輕量化部署方案。用戶通過遠程算力平臺預(yù)置的模型鏡像與AI工具,僅需50%的GPU算力即可解鎖大模型推理、企業(yè)知識庫搭建、智能體開發(fā),加速模型
    的頭像 發(fā)表于 07-30 21:44 ?1020次閱讀

    摩爾線程“AI工廠”:五大核心技術(shù)支撐,打造大模型訓練超級工廠

    演講中表示,為應(yīng)對生成式AI爆發(fā)式增長下的大模型訓練效率瓶頸,摩爾線程將通過系統(tǒng)級工程創(chuàng)新,構(gòu)建新一代AI訓練基礎(chǔ)設(shè)施,致力于為AGI時代打造生產(chǎn)先進模型的“超級工廠”。 ? “AI工
    的頭像 發(fā)表于 07-28 11:28 ?4818次閱讀
    摩爾線程“AI工廠”:五大核心<b class='flag-5'>技術(shù)</b>支撐,打造大<b class='flag-5'>模型</b><b class='flag-5'>訓練</b>超級工廠

    【「DeepSeek 核心技術(shù)揭秘」閱讀體驗】書籍介紹+第一章讀后心得

    )機制和多 token 預(yù)測的詳細解讀,幫助讀者全面了解 DeepSeek-V3 在技術(shù)上的先進性和創(chuàng)新性。同時,對訓練框架的并行策略、FP8 混合精度訓練及推理階段的優(yōu)化等內(nèi)容的深入
    發(fā)表于 07-17 11:59

    計算精度對比:FP64、FP32、FP16、TF32、BF16、int8

    本文轉(zhuǎn)自:河北人工智能計算中心在當今快速發(fā)展的人工智能領(lǐng)域,算力成為決定模型訓練與推理速度的關(guān)鍵因素之一。為了提高計算效率,不同精度的數(shù)據(jù)類型應(yīng)運而生,包括FP64、FP32、
    的頭像 發(fā)表于 06-26 11:09 ?3206次閱讀
    計算精度對比:<b class='flag-5'>FP</b>64、<b class='flag-5'>FP</b>32、<b class='flag-5'>FP</b>16、TF32、BF16、int<b class='flag-5'>8</b>

    將Whisper大型v3 fp32模型轉(zhuǎn)換為較低精度后,推理時間增加,怎么解決?

    將 openai/whisper-large-v3 FP32 模型轉(zhuǎn)換為 FP16、INT8 和 INT4。 推理所花費的時間比在 FP
    發(fā)表于 06-24 06:23

    make sence成的XML文件能上傳到自助訓練模型上嗎?

    make sence成的XML文件能上傳到自助訓練模型上嗎
    發(fā)表于 06-23 07:38

    NVIDIA GTC巴黎亮點:全新Cosmos Predict-2世界基礎(chǔ)模型與CARLA集成加速智能汽車訓練

    全新的 Cosmos Predict-2 世界基礎(chǔ)模型與 CARLA 的集成加速了智能汽車訓練。 輔助駕駛堆棧正在從許多不同的模型演變?yōu)榻y(tǒng)一的端到端架構(gòu),端到端架構(gòu)可直接根據(jù)傳感器數(shù)據(jù)
    的頭像 發(fā)表于 06-12 10:00 ?1208次閱讀

    【書籍評測活動NO.62】一本書讀懂 DeepSeek 全家桶核心技術(shù):DeepSeek 核心技術(shù)揭秘

    MoE 訓練中的通信瓶頸,實現(xiàn)了高效穩(wěn)定的訓練。DeepSeek-V3 是業(yè)界率先使用 FP8 進行混合精度訓練的開源模型。 在推理部署方
    發(fā)表于 06-09 14:38

    摩爾線程發(fā)布Torch-MUSA v2.0.0版本 支持原生FP8和PyTorch 2.5.0

    , 支持原生FP8數(shù)據(jù)類型,支持PyTorch 2.5.0 ,并通過多項針對MUSA計算平臺的性能優(yōu)化,進一步提升了對AI模型和大規(guī)模數(shù)據(jù)處理的支持能力。 FP8原生支持,國產(chǎn)GPU的技術(shù)
    的頭像 發(fā)表于 05-11 16:41 ?1844次閱讀
    满城县| 蓬莱市| 交口县| 义乌市| 平潭县| 吴江市| 河东区| 宁强县| 田林县| 含山县| 安国市| 古蔺县| 光泽县| 福海县| 永善县| 鄢陵县| 密山市| 岫岩| 天峨县| 泗阳县| 洛南县| 临湘市| 广宗县| 徐闻县| 朔州市| 攀枝花市| 桓台县| 油尖旺区| 华池县| 惠安县| 泾阳县| 四平市| 海口市| 莫力| 漳州市| 汉源县| 彰化市| 泰兴市| 筠连县| 新和县| 文水县|