首頁  >  文章  >  科技週邊  >  12秒內AI在手機上完成作畫!谷歌提出擴散模型推理加速新方法

12秒內AI在手機上完成作畫!谷歌提出擴散模型推理加速新方法

WBOY
WBOY轉載
2023-05-12 10:43:051008瀏覽

只要12秒,只憑手機自己的算力,就能拿Stable Diffusion生成一張圖片。

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

12秒內AI在手機上完成作畫!谷歌提出擴散模型推理加速新方法

要知道,現在的擴散模型基本上都超過了10億參數,想要快速產生一張圖片,要嘛基於雲端運算,要嘛就是要本地硬體夠強大了。

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

由此,Google的研究員們帶來了這篇新成果,名字就叫Speed is all you need:透過GPU優化加速大規模擴散模型在設備上的推理速度。

12秒內AI在手機上完成作畫!谷歌提出擴散模型推理加速新方法

三步驟走最佳化加速

此方法是針對Stable Diffusion來做的最佳化,但同時也能適應其他擴散模型。面向的任務是從文字生成圖像。

具體優化可以分成三個部分

  • 設計專門的核心
  • 提升Attention模型效率
  • Winograd卷積加速

首先來看專門設計的內核,它包括了組歸一化和GELU激活函數。

群組歸一化是在整個UNet體系結構中實現,這種歸一化的工作原理是將特徵映射的通道劃分為更小的群組,並對每個群組獨立歸一,使組歸一化較少依賴於批次大小,並且能適應更大範圍的批次大小和網路架構。

研究人員以GPU著色器(shader)的形式設計了一個獨特的核,能在沒有任何中間張量的情況下,在單一GPU指令中執行所有核心。

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

透過一個專用著色器來整合這些數值計算以及伴隨的分割和乘法運算,使得這些計算能放在一個簡單的draw call裡。

Draw call是CPU呼叫影像程式接口,指令GPU進行渲染的操作。

接下來,到了提升Attention模型效率方面,論文介紹了兩種最佳化方法。

其一是部分融合softmax函數。

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

這種方法大幅減少了中間程式的記憶體佔用張量和整體延遲。

12秒內AI在手機上完成作畫!谷歌提出擴散模型推理加速新方法

需要強調的是從A到L、S的計算映射的並行是有限的,因為結果張量中的元素比輸入張量A中的元素數量要少得多。

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

然後在每個block上執行計算,然後將其簡化為最終結果。

利用精心設計的線程和記憶體快取管理,可以在多個部分實現使用單一GPU命令降低延遲。

另一種最佳化方法是FlashAttention。

這是去年火起來的IO感知精確注意力演算法,具體有兩種加速技術:按區塊遞增計算即平鋪、並在後向傳遞中重新計算注意力,將所有註意力操作融合到CUDA內核中。

相較於標準Attention,這種方法能減少HBM(高頻寬記憶體)訪問,並提高整體效率。

不過FlashAttention核心的快取器密集度非常高(register-intensive),所以該團隊是有選擇性地使用這一優化方法。

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

第三部分是Winograd卷積加速。

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

但弊端也很明顯,將會帶來更多的顯存消耗和數值錯誤,尤其是在tile比較大的情況時。

Stable Diffusion的主幹非常依賴3×3卷積層,尤其是在影像解碼器方面,這裡90%的層都是由3×3卷積層構成的。

研究人員分析後發現,在使用4×4大小的tile時,是模型計算效率和顯存利用率的最佳平衡點。

12秒內AI在手機上完成作畫!谷歌提出擴散模型推理加速新方法

實驗結果

為了評估提升效果,研究人員先在手機上進行了基準測試。

12秒內AI在手機上完成作畫!谷歌提出擴散模型推理加速新方法

結果表明,兩部手機在使用了加速演算法後,生成圖片的速度都明顯提升。

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

在三星S23 Ultra上端到端從文字產生一張512×512像素的圖片,迭代20次,耗時在12秒以內。

論文網址:https://www.php.cn/link/ba825ea8a40c385c33407ebe566fa1bc


#

以上是12秒內AI在手機上完成作畫!谷歌提出擴散模型推理加速新方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除