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

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

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

Arm KleidiAI助力提升PyTorch上LLM推理性能

Arm社區(qū) ? 來源:Arm社區(qū) ? 2024-12-03 17:05 ? 次閱讀

作者:Arm 基礎(chǔ)設(shè)施事業(yè)部軟件工程師 Nobel Chowdary Mandepudi

生成式人工智能 (AI) 正在科技領(lǐng)域發(fā)揮關(guān)鍵作用,許多企業(yè)已經(jīng)開始將大語言模型 (LLM) 集成到云端和邊緣側(cè)的應(yīng)用中。生成式 AI 的引入也使得許多框架和庫得以發(fā)展。其中,PyTorch 作為熱門的深度學(xué)習(xí)框架尤為突出,許多企業(yè)均會選擇其作為開發(fā) AI 應(yīng)用的庫。通過部署 Arm Kleidi 技術(shù),Arm 正在努力優(yōu)化 PyTorch,以加速在基于 Arm 架構(gòu)的處理器上運行 LLM 的性能。Arm 通過將 Kleidi 技術(shù)直接集成到 PyTorch 中,簡化了開發(fā)者訪問該技術(shù)的方式。

在本文中,我們將通過一個演示應(yīng)用來展示 Arm KleidiAI 在 PyTorch 上運行 LLM 實現(xiàn)的性能提升。該演示應(yīng)用在基于 Arm Neoverse V2 的亞馬遜云科技 (AWS) Graviton4 R8g.4xlarge EC2 實例上運行 Llama 3.1。如果你感興趣,可以使用以下 Learning Path,自行重現(xiàn)這個演示。

演示應(yīng)用

我們的演示應(yīng)用是一個基于 LLM 的聊天機器人,可以回答用戶提出的各種問題。該演示使用 Arm 平臺上的 PyTorch 框架運行 Meta Llama 3.1 模型,并被設(shè)計成一個使用 Streamlit 前端的瀏覽器應(yīng)用。Streamlit 將信息提供給 Torchat 框架,后者運行 PyTorch 并作為 LLM 后端。Torchat 輸出的信息進入注意力層并生成詞元 (token)。這些詞元使用 OpenAI 框架流式傳輸功能發(fā)送到前端,并在瀏覽器應(yīng)用上顯示給用戶。該演示的架構(gòu)下圖所示。

ddfecd2a-b151-11ef-93f3-92fbcf53809c.png

圖:演示架構(gòu)

演示應(yīng)用在 LLM 推理結(jié)束后測定并顯示以下性能指標:

生成首個詞元的用時(秒):對于 LLM 推理,需要快速生成首個詞元,以盡量減少延遲并向用戶提供即時輸出。

解碼速度/文本生成(詞元/秒):每秒詞元數(shù)是指生成式 AI 模型生成詞元的速率。生成下一個詞元的時間最長不超過 100 毫秒,這是交互式聊天機器人的行業(yè)標準。這意味著解碼速度至少為 10 個詞元/秒。這對于提升實時應(yīng)用的用戶體驗至關(guān)重要。

生成百萬詞元的成本(美元):根據(jù) AWS 云端 EC2 實例的解碼速度和每小時成本,我們可以計算出生成 100 萬個詞元的成本,這也是一個常用的比較指標。由于每小時成本是固定的,解碼速度越快,生成百萬詞元的成本就越低。

生成提示詞的總用時(秒):這是使用所有詞元生成提示詞所花費的總時間。

生成提示詞的總成本(美元):這是根據(jù)使用所有詞元生成完整提示詞的總時間、解碼速度和云端機器成本計算得出的。

下圖顯示了示例響應(yīng),可作為使用所示指標驗證聊天機器人的示例。生成首個詞元的時間短于 1 秒,解碼速率為 33 個詞元/秒,這兩項數(shù)據(jù)都非常令人滿意,并且滿足交互式聊天機器人的行業(yè)標準。

de70d0e6-b151-11ef-93f3-92fbcf53809c.png

圖:包含示例響應(yīng)和指標的演示

針對 PyTorch 的 KleidiAI 優(yōu)化

KleidiAI 庫為 Arm 平臺提供了多項優(yōu)化。Kleidi 在 Torch ATen 層中提供了一個新算子以加載模型。該層將模型權(quán)重以特定格式打包在內(nèi)存中,使得 KleidiAI GEMM 內(nèi)核可用來提高性能。同樣地,針對模型執(zhí)行的優(yōu)化使用了 ATen 層中的另一個算子。該算子對先前打包的模型權(quán)重進行 matmul 運算的量化。

在我們的演示中,該模型是從 Meta Hugging Face 庫下載的。該模型使用 INT4 內(nèi)核布局打包在內(nèi)存中,然后使用針對 PyTorch 優(yōu)化的 INT4 KleidiAI 內(nèi)核進行量化。該演示的架構(gòu)如下圖所示。

de9e9436-b151-11ef-93f3-92fbcf53809c.png

圖:針對 PyTorch 實現(xiàn)的 KleidiAI 優(yōu)化

使用我們 Learning Path 中包含的補丁[注],可將這些 KleidiAI 優(yōu)化應(yīng)用到 PyTorch、Torchchat 和 Torchao 中。你可以使用這些補丁來查看 Arm 平臺上的 PyTorch 為工作負載帶來的 LLM 推理性能提升。

注:Arm KleidiAI 的 PyTorch 補丁正在與上游 PyTorch 合并,并將在未來的 PyTorch 官方版本中提供。

性能

為了印證 KleidiAI 的性能優(yōu)勢,我們使用 PyTorch 運行相同的聊天機器人應(yīng)用,并測定了 KleidiAI 優(yōu)化前后的每秒生成詞元數(shù)和生成首個詞元的用時,結(jié)果如下圖所示。

dea73276-b151-11ef-93f3-92fbcf53809c.png

圖:性能比較

可以看到,將 KleidiAI 庫應(yīng)用到現(xiàn)有的生成式 AI 技術(shù)棧中可以大大提高詞元生成速率,并縮短為不同生成式 AI 模型生成首個詞元的時間。

結(jié)論

對于聊天機器人等實時工作負載來說,在 CPU 上運行 LLM 推理可行且有效。我們在之前《在基于 Arm Neoverse 的 AWS Graviton3 CPU 上實現(xiàn)出色性能》文章中使用 Llama.cpp 演示了這一點。在本文中,我們展示了如何使用 KleidiAI 庫為 Arm 平臺上的 PyTorch 實現(xiàn)良好的 LLM 推理性能。通過使用搭載 Neoverse V2 核心且基于 AWS Graviton4 的 R8g 實例進行演示,印證了 KleidiAI 為在 Arm 平臺上使用 PyTorch 運行 LLM 推理實現(xiàn)了顯著的性能提升。開發(fā)者現(xiàn)在可以利用 Arm 針對 PyTorch 的 KleidiAI 優(yōu)化來運行新的或現(xiàn)有的 AI 應(yīng)用。

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

    關(guān)注

    68

    文章

    19286

    瀏覽量

    229811
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    134

    文章

    9094

    瀏覽量

    367540
  • 聊天機器人
    +關(guān)注

    關(guān)注

    0

    文章

    339

    瀏覽量

    12312
  • pytorch
    +關(guān)注

    關(guān)注

    2

    文章

    808

    瀏覽量

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

    關(guān)注

    0

    文章

    288

    瀏覽量

    334

原文標題:Arm KleidiAI 助力提升 PyTorch 上 LLM 推理性能

文章出處:【微信號:Arm社區(qū),微信公眾號:Arm社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    英特爾FPGA 助力Microsoft Azure機器學(xué)習(xí)提供AI推理性能

    Machine Learning SDK 相集成以供預(yù)覽。客戶可以使用 Azure 大規(guī)模部署的英特爾? FPGA(現(xiàn)場可編程邏輯門陣列)技術(shù),為其模型提供行業(yè)領(lǐng)先的人工智能 (AI) 推理性能。
    的頭像 發(fā)表于 05-16 17:25 ?6383次閱讀

    NVIDIA擴大AI推理性能領(lǐng)先優(yōu)勢,首次在Arm服務(wù)器取得佳績

    最新MLPerf基準測試表明,NVIDIA已將其在AI推理性能和能效方面的高標準擴展到Arm以及x86計算機。
    發(fā)表于 09-23 14:18 ?2624次閱讀
    NVIDIA擴大AI<b class='flag-5'>推理性能</b>領(lǐng)先優(yōu)勢,首次在<b class='flag-5'>Arm</b>服務(wù)器<b class='flag-5'>上</b>取得佳績

    NVIDIA打破AI推理性能記錄

     NVIDIA憑借A100進一步擴大了在MLPerf基準測試中的領(lǐng)先優(yōu)勢,實現(xiàn)了比CPU快237倍的AI推理性能,助力企業(yè)將AI研究轉(zhuǎn)化為生產(chǎn)力。
    發(fā)表于 10-22 14:07 ?811次閱讀

    充分利用Arm NN進行GPU推理

    的是要知道它提供的選項來提高推理性能。作為開發(fā)人員,您會尋找可以壓縮的每一毫秒,尤其是在需要實現(xiàn)實時推理時。讓我們看一下Arm NN中可用的優(yōu)化選項之一,并通過一些實際示例評估它可能產(chǎn)生
    發(fā)表于 04-11 17:33

    Arm Neoverse V1的AWS Graviton3在深度學(xué)習(xí)推理工作負載方面的作用

    實現(xiàn)的 BERT-Large 實時推理性能。越高越好。結(jié)論我們的 MLPerf BERT-large 和 Resnet50-v1.5 基準分析表明,Amazon EC2 c7g實例(使用 Arm
    發(fā)表于 08-31 15:03

    求助,為什么將不同的權(quán)重應(yīng)用于模型會影響推理性能?

    生成兩個 IR文件(相同的 .xml 文件,但不同的 .bin 文件) 具有不同重量的類似模型,以不同的 fps (27fps 和 6fps) 運行 更多樣化的權(quán)重是否會影響 Myriad X 推理性能?
    發(fā)表于 08-15 07:00

    如何提高YOLOv4模型的推理性能?

    使用 PyTorch 對具有非方形圖像的 YOLOv4 模型進行了訓(xùn)練。 將 權(quán)重轉(zhuǎn)換為 ONNX 文件,然后轉(zhuǎn)換為中間表示 (IR)。 無法確定如何獲得更好的推理性能
    發(fā)表于 08-15 06:58

    Nvidia 通過開源庫提升 LLM 推理性能

    加利福尼亞州圣克拉拉——Nvidia通過一個名為TensorRT LLM的新開源軟件庫,將其H100、A100和L4 GPU的大型語言模型(LLM)推理性能提高了一倍。 正如對相同硬件一輪又一輪改進
    的頭像 發(fā)表于 10-23 16:10 ?658次閱讀

    用上這個工具包,大模型推理性能加速達40倍

    作者: 英特爾公司 沈海豪、羅嶼、孟恒宇、董波、林俊 編者按: 只需不到9行代碼, 就能在CPU實現(xiàn)出色的LLM推理性能。 英特爾 ?Extension for Transformer 創(chuàng)新
    的頭像 發(fā)表于 12-01 20:40 ?1155次閱讀
    用上這個工具包,大模型<b class='flag-5'>推理性能</b>加速達40倍

    自然語言處理應(yīng)用LLM推理優(yōu)化綜述

    當前,業(yè)界在將傳統(tǒng)優(yōu)化技術(shù)引入 LLM 推理的同時,同時也在探索從大模型自回歸解碼特點出發(fā),通過調(diào)整推理過程和引入新的模型結(jié)構(gòu)來進一步提升推理性能
    發(fā)表于 04-10 11:48 ?588次閱讀
    自然語言處理應(yīng)用<b class='flag-5'>LLM</b><b class='flag-5'>推理</b>優(yōu)化綜述

    魔搭社區(qū)借助NVIDIA TensorRT-LLM提升LLM推理效率

    “魔搭社區(qū)是中國最具影響力的模型開源社區(qū),致力給開發(fā)者提供模型即服務(wù)的體驗。魔搭社區(qū)利用NVIDIA TensorRT-LLM,大大提高了大語言模型的推理性能,方便了模型應(yīng)用部署,提高了大模型產(chǎn)業(yè)應(yīng)用效率,更大規(guī)模地釋放大模型的應(yīng)用價值。”
    的頭像 發(fā)表于 08-23 15:48 ?453次閱讀

    開箱即用,AISBench測試展示英特爾至強處理器的卓越推理性能

    近期,第五代英特爾?至強?可擴展處理器通過了中國電子技術(shù)標準化研究院組織的人工智能服務(wù)器系統(tǒng)性能測試(AISBench)。英特爾成為首批通過AISBench大語言模型(LLM推理性能測試的企業(yè)
    的頭像 發(fā)表于 09-06 15:33 ?342次閱讀
    開箱即用,AISBench測試展示英特爾至強處理器的卓越<b class='flag-5'>推理性能</b>

    Arm成功將Arm KleidiAI軟件庫集成到騰訊自研的Angel 機器學(xué)習(xí)框架

    KleidiAI 技術(shù)融入騰訊混元自研的 Angel 機器學(xué)習(xí)框架。這一合作旨在提高移動端人工智能 (AI) 服務(wù)的推理性能和效率,為用戶提供卓越
    的頭像 發(fā)表于 11-24 15:33 ?684次閱讀

    解鎖NVIDIA TensorRT-LLM的卓越性能

    Batching、Paged KV Caching、量化技術(shù) (FP8、INT4 AWQ、INT8 SmoothQuant 等) 以及更多功能,確保您的 NVIDIA GPU 能發(fā)揮出卓越的推理性能
    的頭像 發(fā)表于 12-17 17:47 ?154次閱讀

    利用Arm Kleidi技術(shù)實現(xiàn)PyTorch優(yōu)化

    PyTorch 是一個廣泛應(yīng)用的開源機器學(xué)習(xí) (ML) 庫。近年來,Arm 與合作伙伴通力協(xié)作,持續(xù)改進 PyTorch推理性能。本文將詳細介紹如何利用
    的頭像 發(fā)表于 12-23 09:19 ?132次閱讀
    利用<b class='flag-5'>Arm</b> Kleidi技術(shù)實現(xiàn)<b class='flag-5'>PyTorch</b>優(yōu)化