日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

探索ChatGLM2在算能BM1684X上INT8量化部署,加速大模型商業(yè)落地

算能開發(fā)者社區(qū) ? 2023-10-10 10:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群


1. 背景介紹

在2023年7月時(shí)我們已通過靜態(tài)設(shè)計(jì)方案完成了ChatGLM2-6B在單顆BM1684X上的部署工作,量化模式F16,模型大小12GB,平均速度約為3 token/s,詳見《算豐技術(shù)揭秘|探索ChatGLM2-6B模型與TPU部署》。為了進(jìn)一步提升模型的推理效率與降低存儲(chǔ)空間,我們對(duì)模型進(jìn)行了INT8量化部署,整體性能提升70%以上,模型大小降低到6.4GB,推理速度達(dá)到6.67 token/s。

2. 量化方案

首先TPU-MLIR原有的INT8量化方案并不適合直接應(yīng)用于LLM。主要是因?yàn)闊o論P(yáng)TQ的校準(zhǔn)或者QAT的訓(xùn)練對(duì)于LLM來說成本過高,對(duì)LLM的一輪PTQ的校準(zhǔn)可能就需要1-2天時(shí)間;另外就是量化帶來的誤差在LLM上無法收斂,最終會(huì)導(dǎo)致模型精度大量損失。

在量化方案上我們沿用了ChatGLM2使用的W8A16策略,即只對(duì)GLMBlock中Linear Layer的權(quán)重進(jìn)行per-channel量化存儲(chǔ),在實(shí)際運(yùn)算時(shí)仍將其反量化回F16進(jìn)行運(yùn)算。因?yàn)長LM中Linear Layer權(quán)重?cái)?shù)值間差異非常小,對(duì)INT8量化較為友好,所以量化過后的結(jié)果與F16計(jì)算結(jié)果在余弦相似度上仍然能保持99%以上,精度上幾乎可以做到0損失。

3d05fb98-6713-11ee-9788-92fbcf53809c.pngW8A16 MatMul

3. TPU-MLIR實(shí)現(xiàn)

在Top到Tpu層的lowering階段,編譯器會(huì)自動(dòng)搜尋模型中右矩陣輸入為權(quán)重,且該矩陣維數(shù)為2的MatMul,將其替換為W8A16MatMul算子。此處主要是為了與左右矩陣都為Acitvation的MatMul算子區(qū)分開(mm, bmm與linear layer在編譯器中會(huì)被統(tǒng)一轉(zhuǎn)換為MatMul算子)。以ChatGLM2中其中一個(gè)MatMul算子為例:L = (max_lengthx4096xf16), R = (4096x27392xf16),量化后的權(quán)重由原來的214MB降為107MB,額外產(chǎn)生的Scale (4096xf16)只占了0.008MB的存儲(chǔ)空間,基本上可以達(dá)到減半的效果。算子替換源碼與權(quán)重量化源碼可在TPU-MLIR倉庫中查看。

3d1228dc-6713-11ee-9788-92fbcf53809c.pngOp Replacement in TPU-MLIR

4. 后端性能提升原理

前一節(jié)介紹的量化只實(shí)現(xiàn)了存儲(chǔ)空間減半的效果,而性能提升主要在于W8A16MatMul后端算子的實(shí)現(xiàn)。如果對(duì)TPU架構(gòu)不熟悉可通過TPU原理介紹(1)TPU原理介紹(2)兩期視頻了解(可關(guān)注b站“算能開發(fā)者”進(jìn)行觀看)按照算能當(dāng)前的TPU架構(gòu),W8A16的計(jì)算過程主要分為5個(gè)步驟:

1. 從Global Memory中加載數(shù)據(jù)到Local Memory
2. 將INT8權(quán)重Cast為F16
3. 與Scale數(shù)據(jù)相乘完成反量化操作
4. 與Input Activation進(jìn)行矩陣乘運(yùn)算
5. 將計(jì)算結(jié)果存儲(chǔ)回Global Memory

3d277ab6-6713-11ee-9788-92fbcf53809c.pngW8A16Matmul Computation on TPU

因?yàn)長ocal Memory空間有限,對(duì)于大型數(shù)據(jù)通常需要進(jìn)行切分,分批對(duì)數(shù)據(jù)進(jìn)行加載、運(yùn)算與存儲(chǔ)。為了提升效率,通常我們會(huì)利用GDMA與BDC指令并行,同時(shí)進(jìn)行數(shù)據(jù)搬運(yùn)與運(yùn)算操作,所以Local Mmeory大致需要被需要被劃分為兩部分區(qū)域,同一個(gè)循環(huán)內(nèi)一個(gè)區(qū)域用于數(shù)據(jù)運(yùn)算,另一個(gè)區(qū)域存儲(chǔ)上一循環(huán)計(jì)算好的結(jié)果以及加載下一循環(huán)需要用到的數(shù)據(jù),如下圖所示。

3d378e06-6713-11ee-9788-92fbcf53809c.pngLocal Memory Partition

矩陣乘等式如下:

當(dāng)矩陣乘運(yùn)算中左矩陣數(shù)據(jù)量較小時(shí),性能瓶頸主要在于右矩陣的數(shù)據(jù)加載上,即數(shù)據(jù)加載時(shí)間遠(yuǎn)比數(shù)據(jù)運(yùn)算時(shí)間要長很多。W8A16通過量化能夠?qū)⒂揖仃嚨臄?shù)據(jù)搬運(yùn)總量縮小為原來的一半,而且額外多出的Cast與Scale運(yùn)算時(shí)間可以被數(shù)據(jù)搬運(yùn)時(shí)間覆蓋住,因此并不會(huì)影響到整體runtime,如下圖所示。

3d494614-6713-11ee-9788-92fbcf53809c.pngGDMA and BDC parallel
總而言之,從后端角度來說,當(dāng)越小,越大時(shí),W8A16帶來的性能提升收益越大。

從LLM的角度來看,我們以ChatGLM2為例,一次推理的完整流程分為一輪prefill與多輪decode。在prefill階段,基于我們當(dāng)前的靜態(tài)設(shè)計(jì)方案,輸入詞向量會(huì)被補(bǔ)位為當(dāng)前模型所支持的最大文本長度max_length (e.g., 512, 1024, 2048)。而decode階段則固定只取前一輪生成的一個(gè)token作為輸入。

3d53d2c8-6713-11ee-9788-92fbcf53809c.pngChatGLM2 Inference
因此max_length越長,GLMBlock接收的輸入數(shù)據(jù)量越大,Linear Layer的也就越大,這就會(huì)導(dǎo)致W8A16的性能提升越有限。而decode階段始終保持為1,此時(shí)W8A16就能帶來明顯的性能提升。3d711ad6-6713-11ee-9788-92fbcf53809c.pngMatMuls in ChatGLM2 prefill and decode phase

5. 效果展示

將W8A16量化應(yīng)用于ChatGLM2-6B后,整體性能如下所示:

  1. 性能:整體性能得到70%以上的提升
  2. 精度:與F16下的回答略有不同,但答案正確性仍然可以保證
  3. 模型大?。河?2GB降為6.4GB

3d86cac0-6713-11ee-9788-92fbcf53809c.pngResult Comparison

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

    關(guān)注

    1

    文章

    3831

    瀏覽量

    52285
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1673

    瀏覽量

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

    關(guān)注

    1

    文章

    350

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    拒絕手寫代碼!Openclaw+Skill一鍵部署Qwen3.5到邊緣盒子

    通義千問最新一代多模態(tài)大模型Qwen3.5已成功適配BM1684XBM1688系列TPU芯片,2B、4B、9B三個(gè)版本均已適配,從預(yù)編譯
    的頭像 發(fā)表于 04-18 17:32 ?434次閱讀
    拒絕手寫代碼!Openclaw+Skill一鍵<b class='flag-5'>部署</b>Qwen3.5到<b class='flag-5'>算</b><b class='flag-5'>能</b>邊緣盒子

    量化模型 iMX93 NPU 運(yùn)行,但輸出不正確怎么解決

    我正在使用 MobileNet 的自定義實(shí)現(xiàn),旨在對(duì) spark 進(jìn)行二進(jìn)制分類。轉(zhuǎn)換為 tflite 并將其量化int8 后,模型按預(yù)期 NPU
    發(fā)表于 03-18 07:53

    【瑞薩AI挑戰(zhàn)賽】手寫數(shù)字識(shí)別模型RA8P1 Titan Board部署

    手寫數(shù)字識(shí)別模型RA8P1 Titan Board部署 手寫數(shù)字識(shí)別是計(jì)算機(jī)視覺領(lǐng)域的經(jīng)典入門任務(wù),而瑞薩RA
    發(fā)表于 03-15 20:42

    模型到產(chǎn)品:Qwen2.5-VLBM1684X邊緣計(jì)算部署全攻略

    前言:部署意義與應(yīng)用場(chǎng)景1.1Qwen-2-5-VL與BM1684X的組合行業(yè)意義:?邊緣AI革命:大模型從云端下沉到邊緣設(shè)備是當(dāng)前AI發(fā)展的關(guān)鍵趨勢(shì)。根據(jù)ABIResearch數(shù)據(jù),
    的頭像 發(fā)表于 01-13 14:17 ?5060次閱讀
    從<b class='flag-5'>模型</b>到產(chǎn)品:Qwen2.5-VL<b class='flag-5'>在</b><b class='flag-5'>BM1684X</b>邊緣計(jì)算<b class='flag-5'>部署</b>全攻略

    SAM(通用圖像分割基礎(chǔ)模型)丨基于BM1684X模型部署指南

    在基于BM1684X芯片的嵌入式設(shè)備上進(jìn)行高效推理測(cè)試。一、特性?支持BM1684X平臺(tái)全系列部署方案(x86PCIe、SoC、riscvPCIe)?圖像壓縮(embe
    的頭像 發(fā)表于 01-12 16:17 ?512次閱讀
    SAM(通用圖像分割基礎(chǔ)<b class='flag-5'>模型</b>)丨基于<b class='flag-5'>BM1684X</b><b class='flag-5'>模型</b><b class='flag-5'>部署</b>指南

    ShiMeta BM1684X力盒子丨 技術(shù)解析與方案指南(

    ,導(dǎo)致智能監(jiān)控系統(tǒng)仍停留在"看得見"而不是"看得懂"的階段。一些企業(yè)雖然采購了算法,但配置復(fù)雜、落地受限,難以真正規(guī)?;?b class='flag-5'>部署?;赟hiMeta智慧監(jiān)控管理系統(tǒng)V3
    的頭像 發(fā)表于 01-12 16:06 ?5283次閱讀
    ShiMeta <b class='flag-5'>BM1684X</b><b class='flag-5'>算</b>力盒子丨 技術(shù)解析與方案指南(<b class='flag-5'>上</b>)

    專為邊緣而生:深度解析昆侖芯K100 AI加速卡,釋放128 TOPS極致

    昆侖芯K100邊緣AI加速卡以75W超低功耗實(shí)現(xiàn)128 TOPS的INT8力,重新定義邊緣推理效標(biāo)準(zhǔn)。其半高半長設(shè)計(jì)搭載8GB HBM內(nèi)
    的頭像 發(fā)表于 12-14 11:12 ?3210次閱讀
    專為邊緣而生:深度解析昆侖芯K100 AI<b class='flag-5'>加速</b>卡,釋放128 TOPS極致<b class='flag-5'>能</b>效

    【CIE全國RISC-V創(chuàng)新應(yīng)用大賽】基于 K1 AI CPU 的大模型部署落地

    ” 策略。我們必須使用 Q2_K (2-bit) 量化格式,將模型體積壓縮到 5.5GB 左右,從而在 8GB 內(nèi)存
    發(fā)表于 11-27 14:43

    AI邊緣力盒子TS-SG-SE7系列產(chǎn)品規(guī)格書

    是基于國產(chǎn)嵌入式ARM架構(gòu)、超強(qiáng)力SoC芯片BM1684/BM1684X開發(fā)的AI邊緣
    發(fā)表于 10-27 17:31 ?1次下載

    AI力模組TS-SG-SM7系列產(chǎn)品規(guī)格書

    騰視科技AI力模組TS-SG-SM7搭載了AI芯片BM1684X,支持多模態(tài)大模型,可集成于邊緣計(jì)算盒、智能NVR、機(jī)器人、無人機(jī)等,
    發(fā)表于 10-27 17:15 ?0次下載

    AI力模組TS-SG-SM9系列產(chǎn)品規(guī)格書

    騰視科技AI力模組TS-SG-SM9系列搭載高集成度處理器CV186AH/BM1688片,功耗低、力強(qiáng)、接口豐富、兼容性好。7.2-
    發(fā)表于 10-27 17:12 ?4次下載

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

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

    Qwen3-VL 4B/8B全面適配,BM1684X成邊緣最佳部署平臺(tái)!

    BM1684X完成Qwen3-VL4B/8B模型的適配,推理速度13.7/7.2token
    的頭像 發(fā)表于 10-16 18:00 ?3230次閱讀
    Qwen3-VL 4B/<b class='flag-5'>8</b>B全面適配,<b class='flag-5'>BM1684X</b>成邊緣最佳<b class='flag-5'>部署</b>平臺(tái)!

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

    模型量化部署方案。用戶通過遠(yuǎn)程力平臺(tái)預(yù)置的模型鏡像與AI工具,僅需50%的GPU力即可解
    的頭像 發(fā)表于 07-30 21:44 ?1075次閱讀

    為什么無法GPU使用INT8INT4量化模型獲得輸出?

    安裝OpenVINO? 2024.0 版本。 使用 optimum-intel 程序包將 whisper-large-v3 模型轉(zhuǎn)換為 int 4 和 int8,并在 GPU 使用
    發(fā)表于 06-23 07:11
    襄城县| 吉木乃县| 高安市| 大洼县| 栾城县| 茂名市| 商丘市| 罗定市| 武定县| 子长县| 兰考县| 通州区| 阳朔县| 大港区| 义马市| 甘肃省| 襄汾县| 都江堰市| 彰武县| 万宁市| 清水县| 莱西市| 平乐县| 南岸区| 新兴县| 湘潭市| 施甸县| 巧家县| 麻江县| 九龙县| 沐川县| 连平县| 奎屯市| 美姑县| 利津县| 灯塔市| 新兴县| 工布江达县| 松溪县| 保亭| 临海市|