過(guò)去兩年,推理芯片業(yè)務(wù)異常忙碌。有一段時(shí)間,似乎每隔一周就有另一家公司推出一種新的更好的解決方案。盡管所有這些創(chuàng)新都很棒,但問(wèn)題是大多數(shù)公司不知道如何利用各種解決方案,因?yàn)樗麄儫o(wú)法判斷哪一個(gè)比另一個(gè)表現(xiàn)更好。由于在這個(gè)新市場(chǎng)中沒(méi)有一套既定的基準(zhǔn),他們要么必須快速掌握推理芯片的速度,要么必須相信各個(gè)供應(yīng)商提供的性能數(shù)據(jù)。
大多數(shù)供應(yīng)商都提供了某種類型的性能數(shù)據(jù),通常是任何讓它們看起來(lái)不錯(cuò)的基準(zhǔn)。一些供應(yīng)商談?wù)?TOPS 和 TOPS/Watt 時(shí)沒(méi)有指定型號(hào)、批量大小或工藝/電壓/溫度條件。其他人使用了 ResNet-50 基準(zhǔn),這是一個(gè)比大多數(shù)人需要的簡(jiǎn)單得多的模型,因此它在評(píng)估推理選項(xiàng)方面的價(jià)值值得懷疑。
從早期開始,我們已經(jīng)走了很長(zhǎng)一段路。公司已經(jīng)慢慢發(fā)現(xiàn),在衡量推理芯片的性能時(shí)真正重要的是 1) 高 MAC 利用率,2) 低功耗和 3) 你需要保持一切都很小。
我們知道如何衡量——下一步是什么?
既然我們對(duì)如何衡量一個(gè)推理芯片相對(duì)于另一個(gè)的性能有了相當(dāng)好的了解,公司現(xiàn)在正在詢問(wèn)在同一設(shè)計(jì)中同時(shí)使用多個(gè)推理芯片的優(yōu)點(diǎn)(或缺點(diǎn))是什么。簡(jiǎn)單的答案是,使用多個(gè)推理芯片,當(dāng)推理芯片設(shè)計(jì)正確時(shí),可以實(shí)現(xiàn)性能的線性增長(zhǎng)。當(dāng)我們考慮使用多個(gè)推理芯片時(shí),高速公路的類比并不遙遠(yuǎn)。公司想要單車道高速公路還是四車道高速公路的性能?
顯然,每家公司都想要一條四向高速公路,所以現(xiàn)在的問(wèn)題變成了“我們?nèi)绾卧诓辉斐山煌ê推款i的情況下交付這條四車道的高速公路?” 答案取決于選擇正確的推理芯片。為了解釋,讓我們看一個(gè)神經(jīng)網(wǎng)絡(luò)模型。
神經(jīng)網(wǎng)絡(luò)被分解成層。ResNet-50 等層有 50 層,YOLOv3 有超過(guò) 100 層,每一層都接受前一層的激活。因此,在第 N 層中,它的輸出是進(jìn)入第 N+1 層的激活。它等待該層進(jìn)入,計(jì)算完成,輸出是進(jìn)入第 n+2 層的激活。這會(huì)持續(xù)到層的長(zhǎng)度,直到你最終得到結(jié)果。請(qǐng)記住,此示例的初始輸入是圖像或模型正在處理的任何數(shù)據(jù)集。
當(dāng)多個(gè)芯片發(fā)揮作用時(shí)
現(xiàn)實(shí)情況是,如果您的芯片具有一定的性能水平,總會(huì)有客戶想要兩倍或四倍的性能。如果你分析神經(jīng)網(wǎng)絡(luò)模型,在某些情況下是可以實(shí)現(xiàn)的。您只需要查看如何在兩個(gè)芯片或四個(gè)芯片之間拆分模型。
多年來(lái),這一直是并行處理的一個(gè)問(wèn)題,因?yàn)楹茈y弄清楚如何對(duì)您正在執(zhí)行的任何處理進(jìn)行分區(qū)并確保它們?nèi)肯嗉樱皇窃谛阅芊矫姹粶p去。
與并行處理和通用計(jì)算不同,推理芯片的好處是客戶通常會(huì)提前知道他們是否要使用兩個(gè)芯片,這樣編譯器就不必在運(yùn)行時(shí)弄清楚——它是在編譯時(shí)完成的。使用神經(jīng)網(wǎng)絡(luò)模型,一切都是完全可預(yù)測(cè)的,因此我們可以分析并準(zhǔn)確確定如何拆分模型,以及它是否能在兩個(gè)芯片上運(yùn)行良好。
為了確保模型可以在兩個(gè)或更多芯片上運(yùn)行,重要的是逐層查看激活大小和 MAC 數(shù)量。通常發(fā)生的情況是,最大的激活發(fā)生在最早的層中。這意味著隨著層數(shù)的增加,激活大小會(huì)慢慢下降。
查看 MAC 的數(shù)量以及每個(gè)周期中完成的 MAC 數(shù)量也很重要。在大多數(shù)模型中,每個(gè)循環(huán)中完成的 MAC 數(shù)量通常與激活大小相關(guān)。這很重要,因?yàn)槿绻袃蓚€(gè)芯片并且想要以最大頻率運(yùn)行,則需要為每個(gè)芯片分配相同的工作負(fù)載。如果一個(gè)芯片完成模型的大部分工作,而另一個(gè)芯片只完成模型的一小部分,那么您將受到第一個(gè)芯片的吞吐量的限制。
如何在兩個(gè)芯片之間拆分模型也很重要。您需要查看 MAC 的數(shù)量,因?yàn)檫@決定了工作負(fù)載的分布。您還必須查看芯片之間傳遞的內(nèi)容。在某些時(shí)候,您需要在您傳遞的激活盡可能小的地方對(duì)模型進(jìn)行切片,以便所需的通信帶寬量和傳輸延遲最小。如果在激活非常大的點(diǎn)對(duì)模型進(jìn)行切片,激活的傳輸可能會(huì)成為限制雙芯片解決方案性能的瓶頸。
下圖顯示了 YOLOv3、Winograd、2 百萬(wàn)像素圖像的激活輸出大小和累積的 Mac 操作逐層(繪制了卷積層)。為了平衡兩個(gè)芯片之間的工作負(fù)載,該模型將減少大約 50% 的累積 MAC 操作——此時(shí)從一個(gè)芯片傳遞到另一個(gè)芯片的激活為 1MB 或 2MB。要在 4 個(gè)籌碼之間進(jìn)行拆分,削減率約為 25%、50% 和 75%;請(qǐng)注意,激活大小在開始時(shí)最大,因此 25% 的切點(diǎn)有 4 或 8MB 的激活要通過(guò)。
單擊此處查看大圖
YOLOv3/Winograd/2Mpixel 圖像的激活輸出大小(藍(lán)條)和逐層累積 MAC 操作(紅線),顯示工作負(fù)載如何在多個(gè)芯片之間分配(圖片:Flex Logix)
性能工具
幸運(yùn)的是,現(xiàn)在可以使用性能工具來(lái)確保高吞吐量。事實(shí)上,模擬單個(gè)芯片性能的同一工具可以推廣到模擬兩個(gè)芯片的性能。雖然任何給定層的性能完全相同,但問(wèn)題是數(shù)據(jù)傳輸如何影響性能。建模工具需要考慮這一點(diǎn),因?yàn)槿绻璧膸挷粔颍搸拰⑾拗仆掏铝俊?/p>
如果您正在做四個(gè)芯片,您將需要更大的帶寬,因?yàn)槟P偷谝患径鹊募せ钔笥谀P秃笃诘募せ睢R虼耍顿Y的通信資源量將允許您使用流水線連接的大量芯片,但這將是所有芯片都必須承擔(dān)的間接成本,即使它們是獨(dú)立芯片。
結(jié)論
使用多個(gè)推理芯片可以顯著提高性能,但前提是如上所述正確設(shè)計(jì)神經(jīng)網(wǎng)絡(luò)。如果我們回顧一下高速公路的類比,有很多機(jī)會(huì)通過(guò)使用錯(cuò)誤的芯片和錯(cuò)誤的神經(jīng)網(wǎng)絡(luò)模型來(lái)建立交通。如果你從正確的芯片開始,你就走在了正確的軌道上。請(qǐng)記住,最重要的是吞吐量,而不是 TOPS 或 Res-Net50 基準(zhǔn)。然后,一旦您選擇了正確的推理芯片,您就可以設(shè)計(jì)一個(gè)同樣強(qiáng)大的神經(jīng)網(wǎng)絡(luò)模型,為您的應(yīng)用需求提供最大的性能。
— Geoff Tate 是 Flex Logix 的首席執(zhí)行官
、審核編輯 黃昊宇
-
芯片
+關(guān)注
關(guān)注
457文章
51337瀏覽量
428112 -
Mac
+關(guān)注
關(guān)注
0文章
1110瀏覽量
51754
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
黑芝麻智能芯片加速DeepSeek模型推理
Neuchips展示大模型推理ASIC芯片
Amazon Bedrock推出多個(gè)新模型和全新強(qiáng)大的推理和數(shù)據(jù)處理功能
![Amazon Bedrock推出<b class='flag-5'>多個(gè)</b>新模型和全新強(qiáng)大的<b class='flag-5'>推理</b>和數(shù)據(jù)處理功能](https://file1.elecfans.com//web3/M00/01/79/wKgZPGdUHiaABERBAADLgg5C0l4018.jpg)
高效大模型的推理綜述
![高效大模型的<b class='flag-5'>推理</b>綜述](https://file1.elecfans.com/web1/M00/F5/1C/wKgZoWc2xI2AKaYzAAAlYXaG7es830.png)
FPGA和ASIC在大模型推理加速中的應(yīng)用
![FPGA和ASIC在大模型<b class='flag-5'>推理</b>加速中的應(yīng)用](https://file1.elecfans.com/web2/M00/0B/59/wKgaomcgfcaAXbbKAAA3sbCK-zU385.png)
AMD助力HyperAccel開發(fā)全新AI推理服務(wù)器
![AMD助力HyperAccel開發(fā)全新AI<b class='flag-5'>推理</b>服務(wù)器](https://file1.elecfans.com/web2/M00/07/9F/wKgaombqLxCAdBaIAAGAxEvslZA335.png)
【飛凌嵌入式OK3576-C開發(fā)板體驗(yàn)】rkllm板端推理
星凡科技獲近億元Pre-A輪融資,加速大模型推理芯片研發(fā)
LLM大模型推理加速的關(guān)鍵技術(shù)
如何加速大語(yǔ)言模型推理
DRP芯片在多個(gè)領(lǐng)域的應(yīng)用
深度探討VLMs距離視覺(jué)演繹推理還有多遠(yuǎn)?
![深度探討VLMs距離視覺(jué)演繹<b class='flag-5'>推理</b>還有多遠(yuǎn)?](https://file1.elecfans.com/web2/M00/C5/E2/wKgaomX5MuGAeQD3AABFo3t6BJg098.png)
評(píng)論