自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

12秒內(nèi)AI在手機(jī)上完成作畫!谷歌提出擴(kuò)散模型推理加速新方法

人工智能
谷歌的研究員們帶來了這篇新成果,名字就叫Speed is all you need:通過GPU優(yōu)化加速大規(guī)模擴(kuò)散模型在設(shè)備上的推理速度。

只需12秒,只憑手機(jī)自己的算力,就能拿Stable Diffusion生成一張圖像。

而且是完成了20次迭代的那種。

圖片

要知道,現(xiàn)在的擴(kuò)散模型基本都超過了10億參數(shù),想要快速生成一張圖片,要么基于云計(jì)算,要么就是要本地硬件夠強(qiáng)大了。

而隨著大模型應(yīng)用逐漸普及開來,在個(gè)人電腦、手機(jī)上跑大模型很可能是未來的新趨勢。

由此,谷歌的研究員們帶來了這篇新成果,名字就叫Speed is all you need:通過GPU優(yōu)化加速大規(guī)模擴(kuò)散模型在設(shè)備上的推理速度。

圖片

三步走優(yōu)化加速

該方法是針對Stable Diffusion來做的優(yōu)化,但同時(shí)也能適應(yīng)其他擴(kuò)散模型。面向的任務(wù)是從文本生成圖像。

具體優(yōu)化可以分成三個(gè)部分

  • 設(shè)計(jì)專門的內(nèi)核
  • 提升Attention模型效率
  • Winograd卷積加速

首先來看專門設(shè)計(jì)的內(nèi)核,它包括了組歸一化和GELU激活函數(shù)。

組歸一化是在整個(gè)UNet體系結(jié)構(gòu)中實(shí)現(xiàn),這種歸一化的工作原理是將特征映射的通道劃分為更小的組,并對每個(gè)組獨(dú)立歸一,使組歸一化較少依賴于批大小,并且能適應(yīng)更大范圍的批處理大小和網(wǎng)絡(luò)架構(gòu)。

研究人員以GPU著色器(shader)的形式設(shè)計(jì)了一個(gè)獨(dú)特的核,能在沒有任何中間張量的情況下,在單個(gè)GPU命令中執(zhí)行所有內(nèi)核。

GELU激活函數(shù)中,包含大量的數(shù)值計(jì)算,如懲罰、高斯誤差函數(shù)等。

通過一個(gè)專用著色器來整合這些數(shù)值計(jì)算以及伴隨的分割和乘法操作,使得這些計(jì)算能放在一個(gè)簡單的draw call里。

Draw call是CPU調(diào)用圖像編程接口,命令GPU進(jìn)行渲染的操作。

接下來,到了提升Attention模型效率方面,論文介紹了兩種優(yōu)化方法。

其一是部分融合softmax函數(shù)。

為了避免在大矩陣A上執(zhí)行整個(gè)softmax計(jì)算,該研究設(shè)計(jì)了一個(gè)GPU著色器來計(jì)算L和S向量以減少計(jì)算,最終得到一個(gè)大小為N×2的張量。然后將softmax計(jì)算和矩陣V的矩陣乘法融合。

這種方法大幅減少了中間程序的內(nèi)存占用張量和總體延遲。

圖片

需要強(qiáng)調(diào)的是從A到L、S的計(jì)算映射的并行是有限的,因?yàn)榻Y(jié)果張量中的元素比輸入張量A中的元素?cái)?shù)量要少得多。

為了增加并行、進(jìn)一步降低延遲,該研究將A中的元素組成block,將歸約操作(reduction operations)切分為多個(gè)部分進(jìn)行。

然后在每個(gè)block上執(zhí)行計(jì)算,然后將其簡化為最終結(jié)果。

利用精心設(shè)計(jì)的線程和內(nèi)存緩存管理,可以在多個(gè)部分實(shí)現(xiàn)使用單個(gè)GPU命令降低延遲。

另一種優(yōu)化方法是FlashAttention。

這是去年火起來的IO感知精確注意力算法,具體有兩種加速技術(shù):按塊遞增計(jì)算即平鋪、并在后向傳遞中重新計(jì)算注意力,將所有注意力操作融合到CUDA內(nèi)核中。

相較于標(biāo)準(zhǔn)Attention,這種方法能減少HBM(高帶寬內(nèi)存)訪問,提高整體效率。

不過FlashAttention內(nèi)核的緩存器密集度非常高(register-intensive),所以該團(tuán)隊(duì)是有選擇性地使用這一優(yōu)化方法。

他們在注意力矩陣d=40的Adreno GPU和Apple GPU上使用FlashAttention,其他情況下使用部分融合softmax函數(shù)。

第三部分是Winograd卷積加速。

它的原理簡單來說就是使用更多的加法計(jì)算來減少乘法計(jì)算,從而降低計(jì)算量。

但弊端也很明顯,將會(huì)帶來更多的顯存消耗和數(shù)值錯(cuò)誤,尤其是在tile比較大的情況時(shí)。

Stable Diffusion的主干非常依賴3×3卷積層,尤其是在圖像解碼器方面,這里90%的層都是由3×3卷積層構(gòu)成的。

研究人員分析后發(fā)現(xiàn),在使用4×4大小的tile時(shí),是模型計(jì)算效率和顯存利用率的最佳平衡點(diǎn)。

圖片

實(shí)驗(yàn)結(jié)果

為了評估提升效果,研究人員先在手機(jī)上進(jìn)行了基準(zhǔn)測試。

圖片

結(jié)果表明,兩部手機(jī)在使用了加速算法后,生成圖片的速度都明顯提升。

其中三星S23 Ultra的延遲降低了52.2%,iPhone 14 Pro Max上的延遲降低了32.9%。

在三星S23 Ultra上端到端從文本生成一張512×512像素的圖片,迭代20次,耗時(shí)在12秒以內(nèi)。

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


責(zé)任編輯:武曉燕 來源: 量子位
相關(guān)推薦

2023-04-27 15:32:48

谷歌模型

2022-12-08 13:00:10

AI性別偏見

2025-01-10 14:00:00

3D模型生成

2024-12-30 07:11:00

大型視覺語言模型VLMs人工智能

2023-12-03 22:51:35

谷歌論文

2019-12-30 09:41:59

機(jī)器學(xué)習(xí)人工智能計(jì)算機(jī)

2018-03-02 10:58:17

人工智能AI律師

2020-05-14 14:21:50

谷歌AI數(shù)據(jù)

2021-02-18 14:55:06

FuchsiaAndroidLinux

2023-07-05 14:01:50

AI技術(shù)

2025-02-25 10:04:10

2023-12-27 18:12:50

2022-07-25 10:27:06

谷歌模型

2024-10-23 19:47:54

2024-11-08 17:34:38

2023-12-29 13:18:23

模型NeRFTICD

2025-01-09 12:32:18

2025-02-06 07:26:35

2024-02-21 12:10:00

模型數(shù)據(jù)

2021-02-20 16:07:27

神經(jīng)網(wǎng)絡(luò)AI算法
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號