AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當(dāng)前位置:首頁 > 科技  > 軟件

PyTorch 親自出手,少量代碼讓大模型推理提速10倍!

來源: 責(zé)編: 時間:2023-12-11 17:19:07 268觀看
導(dǎo)讀PyTorch團隊讓大模型推理速度加快了10倍。且只用了不到1000行的純原生PyTorch代碼!項目名為GPT-fast,加速效果觀感是這樣嬸兒的:通暢,屬實通暢!重點是,團隊直接放出了代碼以及詳細“教程”。還是簡筆畫版的那種,特別好理解。

PyTorch團隊讓大模型推理速度加快了10倍。hdp28資訊網(wǎng)——每日最新資訊28at.com

且只用了不到1000行的純原生PyTorch代碼!hdp28資訊網(wǎng)——每日最新資訊28at.com

項目名為GPT-fast,加速效果觀感是這樣嬸兒的:hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

通暢,屬實通暢!hdp28資訊網(wǎng)——每日最新資訊28at.com

重點是,團隊直接放出了代碼以及詳細“教程”。還是簡筆畫版的那種,特別好理解。hdp28資訊網(wǎng)——每日最新資訊28at.com

開發(fā)團隊成員@Horace He表示:hdp28資訊網(wǎng)——每日最新資訊28at.com

我們不把它看作是庫或者框架,更希望大家能把它當(dāng)成個例子,根據(jù)自己的需求“復(fù)制粘貼”。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

網(wǎng)友直接炸開鍋,英偉達AI科學(xué)家Jim Fan評價道:hdp28資訊網(wǎng)——每日最新資訊28at.com

這是自Andrej Karpathy發(fā)布的minGPT以來最棒的教程式repo之一!hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

開源世界需要更多minGPT、GPT-Fast這樣的項目!hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

那么GPT-fast究竟是如何給大模型提速的?hdp28資訊網(wǎng)——每日最新資訊28at.com

開盒大模型“加速包”

總的來說,用到這幾種方法:hdp28資訊網(wǎng)——每日最新資訊28at.com

  • Torch.compile:一個專門為PyTorch模型設(shè)計的編譯器,可以提升模型運行效率。
  • GPU量化:通過減少計算的精度來加速模型的運算速度。
  • 推測性解碼:使用一個較小的模型來預(yù)測較大模型的輸出,以此加快大語言模型的運算。
  • 張量并行性:通過在多個硬件設(shè)備上分布模型的運算來加速處理速度。

下面我們來一一展開。hdp28資訊網(wǎng)——每日最新資訊28at.com

開發(fā)團隊一開始使用簡單的PyTorch來實現(xiàn),但效果不佳(25.5 tok/s):hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

他們查看跟蹤后發(fā)現(xiàn),一個原因是推理性能由于CPU過多占用而受限。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

那么如何解決呢?hdp28資訊網(wǎng)——每日最新資訊28at.com

可以想象這樣一個場景,GPU是一個龐大的工廠(擁有大量可用的算力),而CPU則是一個小推車,來回為工廠“供貨”。hdp28資訊網(wǎng)——每日最新資訊28at.com

在很多情況下,CPU無法足夠快地“喂”GPU。hdp28資訊網(wǎng)——每日最新資訊28at.com

因此,開發(fā)團隊建議給GPU更多的工作量,或者說一次性給它更大“塊”的任務(wù)來處理。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

在推理過程中要做到這一點,可以引入torch.compile。hdp28資訊網(wǎng)——每日最新資訊28at.com

torch.compile能夠捕獲模型中更大的區(qū)域,并將其編譯成單一的編譯區(qū)域。特別是當(dāng)以“reduce-overhead”模式運行時,它非常有效地減少了CPU的開銷。hdp28資訊網(wǎng)——每日最新資訊28at.com

效果立竿見影,性能直接提升了4倍,從25 tok/s提高到107 tok/s:hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

接下來,開發(fā)團隊想進一步提升速度,但遇到了內(nèi)存帶寬瓶頸。hdp28資訊網(wǎng)——每日最新資訊28at.com

開發(fā)團隊計算了模型的帶寬利用率,結(jié)果已經(jīng)達到了72%:hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

也就是說進一步提高速度的空間可能有限。hdp28資訊網(wǎng)——每日最新資訊28at.com

重新審視上面的方程式,團隊發(fā)現(xiàn)雖然實際上不能改變模型參數(shù)量,也不能改變GPU的內(nèi)存帶寬(至少在不花更多錢的情況下),但可以改變存儲每個參數(shù)所用的字節(jié)數(shù)。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

這意味著,雖然無法改變模型的大小或者升級硬件來提高性能,但可以通過減少存儲模型參數(shù)所需的數(shù)據(jù)量來提高效率。hdp28資訊網(wǎng)——每日最新資訊28at.com

通??梢酝ㄟ^量化技術(shù)來實現(xiàn),即減少表示每個參數(shù)所需的位數(shù)。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

由此,開發(fā)團隊引入了下一個技術(shù)——int8量化。hdp28資訊網(wǎng)——每日最新資訊28at.com

采用int8權(quán)重量化減少了內(nèi)存負載,進一步提升了性能(157.4 tok/s):hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

使用量化后還有一個問題:要生成100個token,必須加載(或調(diào)用)模型權(quán)重100次。頻繁加載模型權(quán)重也會導(dǎo)致效率低下。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

乍一看,好像沒有什么解決的法子,因為在自回歸生成模式中存在著嚴格的序列依賴關(guān)系。hdp28資訊網(wǎng)——每日最新資訊28at.com

但開發(fā)團隊指出,通過利用推測性解碼可以打破這種嚴格的序列依賴關(guān)系。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

再來打個比方,想象有一個資深工程師Verity,他在技術(shù)決策上總是正確,但編寫代碼的速度相對較慢。hdp28資訊網(wǎng)——每日最新資訊28at.com

同時,還有一個初級工程師Drake,和Verity相反,不擅長技術(shù)決策,但編寫代碼的速度更快、成本也更低。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

那么如何利用不同人的優(yōu)勢來提高整體效率?hdp28資訊網(wǎng)——每日最新資訊28at.com

方法很簡單,先讓Drake編寫代碼,并在此過程中做出技術(shù)決策。接下來,將代碼交給Verity進行審查,不對的地方就讓Drake重做。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

在Transformer模型推理中,大型的驗證模型即為Verity角色,Drake則是一個更小的、能更快生成文本的草稿模型。hdp28資訊網(wǎng)——每日最新資訊28at.com

開發(fā)團隊使用草稿模型生成8個token,然后使用驗證模型并行處理,丟棄不匹配的部分。hdp28資訊網(wǎng)——每日最新資訊28at.com

由此一來,打破了串行依賴,再次提高速度。hdp28資訊網(wǎng)——每日最新資訊28at.com

值得一提的是,推測性解碼不會改變輸出的質(zhì)量。只要使用草稿模型生成token+驗證這些token所需的時間少于單獨生成這些token所需的時間,這種方法就是有效的。hdp28資訊網(wǎng)——每日最新資訊28at.com

而且使用原生PyTorch實現(xiàn)這種技術(shù)實際上非常簡單,整個實現(xiàn)過程只需要大約50行原生PyTorch代碼。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

由于AMD也支持Triton和torch.compile后端,因此之前在Nvidia GPU上應(yīng)用的所有優(yōu)化也可以在AMD GPU上重新應(yīng)用。hdp28資訊網(wǎng)——每日最新資訊28at.com

開發(fā)團隊觀察到int8量化的加速從22 tok/s達到102 tok/s:hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

之后開發(fā)團隊又用了int4量化,進一步提升速度,但模型準(zhǔn)確性有所下降。hdp28資訊網(wǎng)——每日最新資訊28at.com

因此使用了分組量化和GPTQ降低權(quán)重大小。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

最后在保證準(zhǔn)確性的前提下,速度提升至202.1 tok/s:hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

將以上技術(shù)結(jié)合使用,達到更高速度244.7 tok/s:hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

到目前為止,研發(fā)團隊一直都是在單個GPU上提速。但其實很多情況下是可以使用多個GPU的。hdp28資訊網(wǎng)——每日最新資訊28at.com

而使用多個GPU可以增加內(nèi)存帶寬,從而提高模型的整體性能。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

在選擇并行處理策略時,需要在多個設(shè)備上分割一個token的處理過程,所以需要使用張量并行性。hdp28資訊網(wǎng)——每日最新資訊28at.com

而PyTorch也提供了用于張量并行性的底層工具,可以與torch.compile結(jié)合使用。hdp28資訊網(wǎng)——每日最新資訊28at.com

開發(fā)團隊還透露也正在開發(fā)用于表達張量并行性的更高級別的API。hdp28資訊網(wǎng)——每日最新資訊28at.com

然而,即使沒有更高級別的API,添加張量并行性也很容易,150行代碼即可實現(xiàn),且不需要對模型進行任何改變。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

之前提到的所有優(yōu)化都可以與張量并行性相結(jié)合。將這些優(yōu)化結(jié)合起來,能夠以55 tokens/s的速度為Llama-70B提供int8量化。hdp28資訊網(wǎng)——每日最新資訊28at.com

hdp28資訊網(wǎng)——每日最新資訊28at.com

最后總結(jié)成果,忽略量化,僅用766行代碼(model.py 244行代碼,generate.py 371行代碼,tp.py 151行代碼),就實現(xiàn)了快速推理、推測性解碼和張量并行性。hdp28資訊網(wǎng)——每日最新資訊28at.com

對于Llama-7B,使用compile+int4量化+推測性解碼速度達到241 tok/s。對于Llama-70B,通過加入張量并行性,達到80 tok/s。hdp28資訊網(wǎng)——每日最新資訊28at.com

這些性能都接近或超越了當(dāng)前SOTA。hdp28資訊網(wǎng)——每日最新資訊28at.com

參考鏈接:hdp28資訊網(wǎng)——每日最新資訊28at.com

[1]https://pytorch.org/blog/accelerating-generative-ai-2/?utm_cnotallow=273712248&utm_medium=social&utm_source=twitter&hss_channel=tw-776585502606721024hdp28資訊網(wǎng)——每日最新資訊28at.com

[2]https://twitter.com/DrJimFan/status/1730298947376443698hdp28資訊網(wǎng)——每日最新資訊28at.com

[3]https://twitter.com/cHHillee/status/1730293330213531844hdp28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.tebozhan.com/showinfo-26-42214-0.htmlPyTorch 親自出手,少量代碼讓大模型推理提速10倍!

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: Python裝飾器演化過程

下一篇: Python進階指南,面向?qū)ο缶幊?/a>

標(biāo)簽:
  • 熱門焦點
  • K60至尊版剛預(yù)熱 一加Ace2 Pro正面硬剛

    Redmi這邊剛?cè)缁鹑巛钡男麄髁薑60 Ultra的各種技術(shù)和硬件配置,作為競品的一加也坐不住了。一加中國區(qū)總裁李杰發(fā)布了兩條微博,表示在自家的一加Ace2上早就已經(jīng)采用了和PixelWo
  • 對標(biāo)蘋果的靈動島 華為帶來實況窗功能

    繼蘋果的靈動島之后,華為也在今天正式推出了“實況窗”功能。據(jù)今天鴻蒙OS 4.0的現(xiàn)場演示顯示,華為的實況窗可以更高效的展現(xiàn)出實時通知,比如鎖屏上就能看到外賣、打車、銀行
  • 6月iOS設(shè)備性能榜:M2穩(wěn)居榜首 A系列只能等一手3nm來救

    沒有新品發(fā)布,自然iOS設(shè)備性能榜的上榜設(shè)備就沒有什么更替,僅僅只有跑分變化而產(chǎn)生的排名變動,畢竟蘋果新品的發(fā)布節(jié)奏就是這樣的,一年下來也就幾個移動端新品,不會像安卓廠商,一
  • 太卷!Redmi MAX 100英寸電視便宜了:12999元買Redmi史上最大屏

    8月5日消息,從小米商城了解到,Redmi MAX 100英寸巨屏電視日前迎來官方優(yōu)惠,到手價12999元,比發(fā)布價便宜了7000元,在大屏電視市場開卷。據(jù)了解,Redmi MAX 100
  • 2023 年的 Node.js 生態(tài)系統(tǒng)

    隨著技術(shù)的不斷演進和創(chuàng)新,Node.js 在 2023 年達到了一個新的高度。Node.js 擁有一個龐大的生態(tài)系統(tǒng),可以幫助開發(fā)人員更快地實現(xiàn)復(fù)雜的應(yīng)用。本文就來看看 Node.js 最新的生
  • 19個 JavaScript 單行代碼技巧,讓你看起來像個專業(yè)人士

    今天這篇文章跟大家分享18個JS單行代碼,你只需花幾分鐘時間,即可幫助您了解一些您可能不知道的 JS 知識,如果您已經(jīng)知道了,就當(dāng)作復(fù)習(xí)一下,古人云,溫故而知新嘛。現(xiàn)在,我們就開始今
  • 一文搞定Java NIO,以及各種奇葩流

    大家好,我是哪吒。很多朋友問我,如何才能學(xué)好IO流,對各種流的概念,云里霧里的,不求甚解。用到的時候,現(xiàn)百度,功能雖然實現(xiàn)了,但是為什么用這個?不知道。更別說效率問題了~下次再遇到,
  • 網(wǎng)紅炒股不為了賺錢,那就是耍流氓!

    來源:首席商業(yè)評論6月26日高調(diào)宣布入市,網(wǎng)絡(luò)名嘴大v胡錫進居然進軍了股市。在一次財經(jīng)媒體峰會上,幾個財經(jīng)圈媒體大佬就“胡錫進炒股是否知道認真報道”展開討論。有
  • 榮耀Magic4 至臻版 首創(chuàng)智慧隱私通話 強勁影音系統(tǒng)

    2022年第一季度臨近尾聲,在該季度內(nèi),許多品牌陸續(xù)發(fā)布自己的最新產(chǎn)品,讓大家從全新的角度來了解當(dāng)今的手機技術(shù)。手機是電子設(shè)備中,更新迭代十分迅速的一款產(chǎn)品,基
Top