国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
用FP6跑Llama,單卡比雙卡還快
重新設(shè)計(jì)內(nèi)核方案
首頁 科技周邊 人工智能 單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

Apr 29, 2024 pm 04:55 PM
數(shù)據(jù) 模型 開源 數(shù)據(jù)訪問 排列

FP8和更低的浮點(diǎn)數(shù)量化精度,不再是H100的“專利”了!

老黃想讓大家用INT8/INT4,微軟DeepSpeed團(tuán)隊(duì)在沒有英偉達(dá)官方支持的條件下,硬生生在A100上跑起FP6

單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

測(cè)試結(jié)果表明,新方法TC-FPx在A100上的FP6量化,速度接近甚至偶爾超過INT4,而且擁有比后者更高的精度。

在此基礎(chǔ)之上,還有端到端的大模型支持,目前已經(jīng)開源并集成到了DeepSpeed等深度學(xué)習(xí)推理框架中。

這一成果對(duì)大模型的加速效果也是立竿見影——在這種框架下用單卡跑Llama,吞吐量比雙卡還要高2.65倍。

一名機(jī)器學(xué)習(xí)研究人員看了后表示,微軟的這項(xiàng)研究簡(jiǎn)直可以用crazy來形容。

單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

表情包也第一時(shí)間上線,be like:

英偉達(dá):只有H100支持FP8。

微軟:Fine,我自己搞定。

單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

那么,這個(gè)框架到底能實(shí)現(xiàn)什么樣的效果,背后又采用了什么樣的技術(shù)呢?

用FP6跑Llama,單卡比雙卡還快

在A100上使用FP6精度,帶來的是內(nèi)核級(jí)的性能提升

研究人員選取了不同大小的Llama模型和OPT模型之中的線性層,在NVIDIA A100-40GB GPU平臺(tái)上,使用CUDA 11.8進(jìn)行了測(cè)試。

結(jié)果相比于英偉達(dá)官方的cuBLAS(W16A16)和TensorRT-LLM(W8A16),TC-FPx(W6A16)度提升的最大值分別是2.6倍和1.9倍。

相比于4bit的BitsandBytes(W4A16)方法,TC-FPx的最大速度提升則是達(dá)到了8.9倍。

(W和A分別代表權(quán)重量化位寬和激活量化位寬)

單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

△歸一化數(shù)據(jù),以cuBLAS結(jié)果為1

同時(shí),TC-FPx內(nèi)核還減少了對(duì)DRAM內(nèi)存的訪問,并提高了DRAM帶寬利用率和Tensor Cores利用率,以及ALU和FMA單元的利用率。

單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

在TC-FPx基礎(chǔ)之上設(shè)計(jì)的端到端推理框架FP6-LLM,也給大模型帶來了顯著的性能提高。

以Llama-70B為例,用FP6-LLM在單卡上的運(yùn)行吞吐量,比FP16在雙卡上還要高出2.65倍,在16以下的批大小中的延遲也低于FP16。

單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

而對(duì)于參數(shù)量小一些的模型OPT-30B(FP16也使用單卡),F(xiàn)P6-LLM同樣帶來了明顯的吞吐量提升和延遲降低。

而且單卡FP16在這種條件下最多支持的批大小只有4,F(xiàn)P6-LLM卻可以在批大小為16的情況下正常運(yùn)行。

單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

那么,微軟團(tuán)隊(duì)是怎樣實(shí)現(xiàn)在A100上運(yùn)行FP16量化的呢?

重新設(shè)計(jì)內(nèi)核方案

為了實(shí)現(xiàn)對(duì)包括6bit在內(nèi)精度的支持,TC-FPx團(tuán)隊(duì)設(shè)計(jì)了一個(gè)統(tǒng)一的內(nèi)核方案,可以支持不同位寬的量化權(quán)重。

相比于傳統(tǒng)的雙內(nèi)核方法,TC-FPx通過將去量化和矩陣乘法融合在單個(gè)內(nèi)核中,減少了內(nèi)存訪問次數(shù),提高了性能。

實(shí)現(xiàn)低精度量化的核心奧義則是通過去量化方式,將FP6精度的數(shù)據(jù)“偽裝”成FP16,然后按照FP16的格式交給GPU進(jìn)行運(yùn)算。

單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

同時(shí)團(tuán)隊(duì)還利用了位級(jí)預(yù)打包技術(shù),解決GPU內(nèi)存系統(tǒng)對(duì)非2的冪次位寬(如6-bit)不友好的問題。

具體來說,位級(jí)預(yù)打包是在模型推理之前對(duì)權(quán)重?cái)?shù)據(jù)進(jìn)行重新組織,包括將6-bit量化的權(quán)重重新排列,以便它們能夠以GPU內(nèi)存系統(tǒng)友好的方式進(jìn)行訪問。

此外,由于GPU內(nèi)存系統(tǒng)通常以32位或64位的塊進(jìn)行數(shù)據(jù)訪問,位級(jí)預(yù)打包技術(shù)將還會(huì)6-bit權(quán)重打包,使得它們能夠以這些對(duì)齊的塊的形式存儲(chǔ)和訪問。

單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

預(yù)打包完成后,研究團(tuán)隊(duì)使用SIMT核心的并行處理能力,對(duì)寄存器中的FP6權(quán)重執(zhí)行并行去量化,生成FP16格式的權(quán)重。

去量化后的FP16權(quán)重在寄存器中被重構(gòu),然后送入Tensor Core,使用重構(gòu)后的FP16權(quán)重執(zhí)行矩陣乘法運(yùn)算,完成線性層的計(jì)算。

在此過程中,團(tuán)隊(duì)利用了SMIT核心的位級(jí)并行性,提高了整個(gè)去量化過程的效率。

單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

而為了權(quán)重重構(gòu)任務(wù)能夠并行運(yùn)行,團(tuán)隊(duì)還使用了一種并行權(quán)重拼接技術(shù)。

具體來說,每個(gè)權(quán)重被分割成幾個(gè)部分,每個(gè)部分的位寬是2的冪次(如把6分割成2 4或4 2)。

在去量化之前,權(quán)重首先從共享內(nèi)存加載到寄存器中。由于每個(gè)權(quán)重被分割成多個(gè)部分,需要在運(yùn)行時(shí)在寄存器級(jí)別重構(gòu)完整的權(quán)重。

為了減少運(yùn)行時(shí)的開銷,TC-FPx提出了一種并行提取和拼接權(quán)重的方法。這種方法使用兩組寄存器來存儲(chǔ)32個(gè)FP6權(quán)重的片段,并行地重構(gòu)這些權(quán)重。

同時(shí),為了并行提取和拼接權(quán)重,需要確保初始數(shù)據(jù)布局滿足特定的順序要求,因此TC-FPx通過在運(yùn)行前對(duì)權(quán)重片段進(jìn)行重排。

單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

此外,TC-FPx還設(shè)計(jì)了一個(gè)軟件流水線,將去量化步驟與Tensor Core的矩陣乘法操作融合在一起,通過指令級(jí)并行性提高了整體的執(zhí)行效率。

單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源

論文地址:https://arxiv.org/abs/2401.14112

以上是單卡跑Llama 70B快過雙卡,微軟硬生生把FP6搞到了A100里 | 開源的詳細(xì)內(nèi)容。更多信息請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請(qǐng)聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動(dòng)的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機(jī)

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強(qiáng)大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)代碼編輯軟件(SublimeText3)

熱門話題

Laravel 教程
1601
29
PHP教程
1502
276
mysql 和 mariadb 可以共存嗎 mysql 和 mariadb 可以共存嗎 Apr 08, 2025 pm 02:27 PM

MySQL 和 MariaDB 可以共存,但需要謹(jǐn)慎配置。關(guān)鍵在于為每個(gè)數(shù)據(jù)庫分配不同的端口號(hào)和數(shù)據(jù)目錄,并調(diào)整內(nèi)存分配和緩存大小等參數(shù)。連接池、應(yīng)用程序配置和版本差異也需要考慮,需要仔細(xì)測(cè)試和規(guī)劃以避免陷阱。在資源有限的情況下,同時(shí)運(yùn)行兩個(gè)數(shù)據(jù)庫可能會(huì)導(dǎo)致性能問題。

Bootstrap圖片居中需要用到flexbox嗎 Bootstrap圖片居中需要用到flexbox嗎 Apr 07, 2025 am 09:06 AM

Bootstrap 圖片居中方法多樣,不一定要用 Flexbox。如果僅需水平居中,text-center 類即可;若需垂直或多元素居中,F(xiàn)lexbox 或 Grid 更合適。Flexbox 兼容性較差且可能增加復(fù)雜度,Grid 則更強(qiáng)大且學(xué)習(xí)成本較高。選擇方法時(shí)應(yīng)權(quán)衡利弊,并根據(jù)需求和偏好選擇最適合的方法。

wordpress文章列表怎么調(diào) wordpress文章列表怎么調(diào) Apr 20, 2025 am 10:48 AM

有四種方法可以調(diào)整 WordPress 文章列表:使用主題選項(xiàng)、使用插件(如 Post Types Order、WP Post List、Boxy Stuff)、使用代碼(在 functions.php 文件中添加設(shè)置)或直接修改 WordPress 數(shù)據(jù)庫。

如何理解C  中的ABI兼容性? 如何理解C 中的ABI兼容性? Apr 28, 2025 pm 10:12 PM

C 中的ABI兼容性是指不同編譯器或版本生成的二進(jìn)制代碼能否在不重新編譯的情況下兼容。1.函數(shù)調(diào)用約定,2.名稱修飾,3.虛函數(shù)表布局,4.結(jié)構(gòu)體和類的布局是主要涉及的方面。

Bootstrap如何讓圖片在容器中居中 Bootstrap如何讓圖片在容器中居中 Apr 07, 2025 am 09:12 AM

綜述:使用 Bootstrap 居中圖片有多種方法?;痉椒ǎ菏褂?mx-auto 類水平居中。使用 img-fluid 類自適應(yīng)父容器。使用 d-block 類將圖片設(shè)置為塊級(jí)元素(垂直居中)。高級(jí)方法:Flexbox 布局:使用 justify-content-center 和 align-items-center 屬性。Grid 布局:使用 place-items: center 屬性。最佳實(shí)踐:避免不必要的嵌套和樣式。選擇適合項(xiàng)目的最佳方法。注重代碼的可維護(hù)性,避免犧牲代碼質(zhì)量來追求炫技

如何利用Redis緩存方案高效實(shí)現(xiàn)產(chǎn)品排行榜列表的需求? 如何利用Redis緩存方案高效實(shí)現(xiàn)產(chǎn)品排行榜列表的需求? Apr 19, 2025 pm 11:36 PM

Redis緩存方案如何實(shí)現(xiàn)產(chǎn)品排行榜列表的需求?在開發(fā)過程中,我們常常需要處理排行榜的需求,例如展示一個(gè)?...

在后端開發(fā)中,如何區(qū)分service層和dao層的職責(zé)? 在后端開發(fā)中,如何區(qū)分service層和dao層的職責(zé)? Apr 19, 2025 pm 01:51 PM

探討后端開發(fā)中的分層架構(gòu)在后端開發(fā)中,分層架構(gòu)是一種常見的設(shè)計(jì)模式,通常包括controller、service和dao三層?...

See all articles