隨著人工智能的爆炸式增長,人們?cè)絹碓疥P(guān)注能夠提供人工智能所需性能的新型專業(yè)推理引擎。因此,在過去六個(gè)月中,我們看到了一系列神經(jīng)推理硬件公告,所有這些都承諾提供比市場上任何其他產(chǎn)品更好的加速。然而,挑戰(zhàn)在于沒有人真正知道如何衡量一個(gè)與另一個(gè)。這是一項(xiàng)新技術(shù),就像任何新技術(shù)一樣,我們需要指標(biāo),我們需要真正重要的指標(biāo)。
一切都與吞吐量有關(guān)
當(dāng)推理引擎的性能出現(xiàn)時(shí),供應(yīng)商會(huì)拋出諸如 TOPS(Tera-Operations/Second)性能和 TOPS/Watt 之類的基準(zhǔn)。研究這些的系統(tǒng)/芯片設(shè)計(jì)人員很快意識(shí)到這些數(shù)字通常毫無意義。真正重要的是推理引擎可以為模型、圖像大小、批量大小和過程以及 PVT(過程/電壓/溫度)條件提供多少吞吐量。這是衡量其性能表現(xiàn)的第一個(gè)衡量標(biāo)準(zhǔn),但令人驚訝的是,很少有供應(yīng)商提供它。
TOPS 的最大問題是,當(dāng)一家公司說他們的引擎執(zhí)行 X TOPS 時(shí),他們通常會(huì)引用這一點(diǎn)而沒有說明條件是什么。在不知道這些信息的情況下,他們錯(cuò)誤地認(rèn)為 X TOPS 意味著它可以執(zhí)行 X 萬億次操作。實(shí)際上,報(bào)價(jià) 130 TOPS 的公司可能僅提供 27 TOPS 的可用吞吐量。
另一個(gè)正在使用但不太常用的基準(zhǔn)是 ResNet-50。這個(gè)基準(zhǔn)的問題是大多數(shù)引用它的公司都沒有給出批量大小。如果他們不這樣做,芯片設(shè)計(jì)人員可以假設(shè)這將是一個(gè)大批量,以最大限度地提高他們的硬件利用率。這使得 ResNet-50 作為基準(zhǔn)不是很有幫助。相比之下,例如 YOLOv3 需要 100 倍以上的操作來處理 2 兆像素的圖像。在“真實(shí)世界”模型中,硬件利用率將面臨更大挑戰(zhàn)。
如何正確測量神經(jīng)推理引擎
在評(píng)估神經(jīng)推理引擎時(shí),需要注意幾個(gè)關(guān)鍵事項(xiàng)。以下是最重要的考慮因素以及它們?yōu)楹握嬲匾脑颉?/p>
定義什么是操作:一些供應(yīng)商將乘法(通常為 INT 8 乘以 INT 8)計(jì)為一次操作,將累加(加法,通常為 INT 32)計(jì)為一次操作。因此,一次乘法累加等于 2 次操作。但是,一些供應(yīng)商在其 TOPS 規(guī)范中包含其他類型的操作,因此必須在開始時(shí)進(jìn)行澄清。
詢問 操作條件是什么: 如果供應(yīng)商提供 TOPS 而不提供條件,他們通常使用室溫、標(biāo)稱電壓和典型工藝。通常他們會(huì)提到他們所指的工藝節(jié)點(diǎn),但不同供應(yīng)商的運(yùn)行速度不同,大多數(shù)工藝提供2、3或更多的標(biāo)稱電壓。由于性能是頻率的函數(shù),而頻率是電壓的函數(shù),因此芯片設(shè)計(jì)人員在 0.9V 時(shí)可以獲得比在 0.6V 時(shí)高兩倍以上的性能。頻率因條件/假設(shè)而異。有關(guān)這方面的更多信息,請(qǐng)參閱此應(yīng)用說明。
看看批量大小:即使供應(yīng)商提供最壞情況的 TOPS,芯片設(shè)計(jì)人員也需要弄清楚所有這些操作是否真的有助于計(jì)算他們的神經(jīng)網(wǎng)絡(luò)模型。實(shí)際上,實(shí)際利用率可能非常低,因?yàn)闆]有推理引擎始終 100% 地使用所有 MAC。這就是批量大小很重要的原因。批處理是為給定層加載權(quán)重并同時(shí)處理多個(gè)數(shù)據(jù)集。這樣做的原因是為了提高吞吐量,但放棄的是更長的延遲。ResNet-50 擁有超過 2000 萬個(gè)權(quán)重;YOLOv3 擁有超過 6000 萬個(gè)權(quán)重;并且必須為每個(gè)圖像獲取每個(gè)權(quán)重并將其加載到 MAC 結(jié)構(gòu)中。權(quán)重太多,無法讓它們都駐留在 MAC 結(jié)構(gòu)中。
找出你的 MAC 利用率:并非所有神經(jīng)網(wǎng)絡(luò)的行為都相同。您需要以您需要的批量大小找出您想要部署的神經(jīng)網(wǎng)絡(luò)模型的神經(jīng)推理引擎的實(shí)際 MAC 利用率。
深入TOPS
如果您是一名正在研究神經(jīng)推理引擎的設(shè)計(jì)師,希望這篇文章能夠闡明要尋找的內(nèi)容。請(qǐng)記住——重要的是吞吐量。重要的是不要陷入諸如 TOPS 和 ResNet-50 之類的毫無意義的基準(zhǔn)測試中,除非您知道圍繞這些問題要問的問題。首先提出以下問題:在批量大小 = A 和 XYZ PVT 條件下,可以為特定模型(例如 YOLOv3)處理多少圖像/秒。一旦您開始指定條件和假設(shè),您將開始了解任何神經(jīng)推理在現(xiàn)實(shí)世界中的表現(xiàn)如何。歸根結(jié)底,這才是最重要的。
審核編輯:郭婷
-
芯片
+關(guān)注
關(guān)注
456文章
50936瀏覽量
424677 -
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4773瀏覽量
100890 -
人工智能
+關(guān)注
關(guān)注
1792文章
47409瀏覽量
238924
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論