從云端走向邊緣,AI需要這樣的芯片
人工智能(AI)在自動(dòng)駕駛、物聯(lián)網(wǎng)和機(jī)器人技術(shù)中的應(yīng)用離不開數(shù)據(jù)處理。目前終端設(shè)備需要將采集的大量數(shù)據(jù),包括圖像、視頻、音頻等,通過網(wǎng)絡(luò)傳輸至數(shù)據(jù)中心進(jìn)行AI相關(guān)的處理,然后再將結(jié)果返回至終端設(shè)備。這就帶來了網(wǎng)絡(luò)帶寬、數(shù)據(jù)傳輸穩(wěn)定性及安全性等問題。
因此,AI從云端走向邊緣終端設(shè)備是大勢所趨,AI邊緣推理芯片應(yīng)運(yùn)而生。
Intel、Google、Nvidia及Flex Logix邊緣推理芯片
目前的AI邊緣推理芯片有Intel的Myriad、Google的Edge TPU、Nvidia的Jetson Nano及Flex Logix的InferX X1等。
(圖片來源:Flex Logix)
(圖片來源:Flex Logix)
Flex Logix的InferXtm X1邊緣推理芯片是在業(yè)界領(lǐng)先的eFPGA互連技術(shù)上,結(jié)合專為AI推理運(yùn)算而優(yōu)化的nnMAXtm乘加器(MAC)而開發(fā)。
Flex Logix公司稱,在通常只有一個(gè)攝像頭或傳感器、需要完成小批量數(shù)據(jù)處理的邊緣應(yīng)用中,InferX X1的性能接近數(shù)據(jù)中心推理芯片,并且只需一個(gè)DRAM即可在邊緣應(yīng)用中提供高吞吐量,同時(shí)保持系統(tǒng)功耗和成本。
“設(shè)計(jì)邊緣神經(jīng)網(wǎng)絡(luò)推理芯片的一個(gè)難題是如何降低大量的數(shù)據(jù)交換及降低功耗,而我們的可編程互連技術(shù)是接近完美的解決方案。”Flex Logix公司CEO Geoff Tate說。
Tate表示,InferX X1基于低DRAM帶寬,與高端數(shù)據(jù)中心服務(wù)器的黃金標(biāo)準(zhǔn)Nvidia的Tesla T4相比,每瓦吞吐量提高了四倍,每美元吞吐量提高了三倍。
Tate提到,InferX在YoloV2,YoloV3和GoogleNet等推理基準(zhǔn)方面優(yōu)于其它供應(yīng)商的邊緣推理芯片,如Intel的Myriad X和Nvidia的Jetson Nano。
圖:InferX X1與Nvidia Tesla T4的價(jià)格/性能比和性能/瓦特比。(圖片來源:Flex Logix)
Tate強(qiáng)調(diào)InferX雖然不具Tesla T4的吞吐量,但其最終售價(jià)將僅為T4價(jià)格的幾分之一。
“我們的InferX X1 AI邊緣推理芯片專注于AI推理,而Intel及Nvidia等邊緣推理產(chǎn)品除了推理還提供AI訓(xùn)練,因此可以說Flex Logix的邊緣推理芯片做得更專更精。”Flex Logix的銷售總監(jiān)Jim Jian在接受《電子工程專輯》記者的采訪時(shí)談到。
Jim還特別提到,目前幾乎沒有哪個(gè)邊緣推理產(chǎn)品的供應(yīng)商公布其產(chǎn)品的Benchmark,“我們決定將InferX X1的Benchmark公之于眾,方便客戶在不同的供應(yīng)商之間進(jìn)行比較和選擇。”顯示出Flex Logix對(duì)InferX X1 AI邊緣推理芯片的信心。
(圖片來源:Flex Logix)
高算力,低成本,InferX X1是怎樣做到的?
InferX AI芯片的核心技術(shù)源自Flex Logix擁有專利的現(xiàn)有eFPGA IP里的可編程互連技術(shù),同時(shí)結(jié)合專為AI推理而設(shè)計(jì)的乘加器(MAC)和存儲(chǔ)單元。這些乘加器支持INT8、INT16、BF16等AI算法里常見的精度數(shù)字。
(圖片來源:Flex Logix)
“在運(yùn)算一層網(wǎng)絡(luò)的時(shí)候,我們利用可編程互連將InferX的MAC根據(jù)這一層網(wǎng)絡(luò)的dataflow來連接,等于是專為這一層運(yùn)算配置了一個(gè)ASIC。同時(shí)對(duì)下一層網(wǎng)絡(luò)進(jìn)行pre-load,以實(shí)現(xiàn)在這一層運(yùn)算完后可以最快速地配置下一層。同樣的可編程互連也與片上的SRAM連接,將這一層的輸出,快速配置成下一層的輸入,從而避免了大量的數(shù)據(jù)交換。所以InferX只需要一顆x32 DRAM就夠了。這讓我們可以將芯片設(shè)計(jì)得更小,大大降低了功耗和成本。”Flex Logix公司CEO Geoff Tate指出。
InferX X1芯片可以通過擴(kuò)展口來連接數(shù)個(gè)芯片以增加算力。Flex Logix同時(shí)還提供搭載InferX X1的半高半長PCIe卡給Edge Server和gateway客戶。
(圖片來源:Flex Logix)
正是因?yàn)閼?yīng)用了核心的可編程互連技術(shù),并在InferX芯片產(chǎn)品中引入其它新技術(shù),才使得InferX X1能在提供高算力的同時(shí)提供低功耗和低成本,并且適用于任何神經(jīng)網(wǎng)絡(luò)。
InferX X1應(yīng)用在哪些領(lǐng)域?
InferX X1是專為邊緣推理應(yīng)用而設(shè)計(jì)的,適用于邊緣終端設(shè)備,特別是需要實(shí)時(shí)處理數(shù)據(jù)的設(shè)備和應(yīng)用,例如L3~L5的汽車自動(dòng)駕駛、視頻監(jiān)控和識(shí)別、自然語音處理等。除此之外,還可用于機(jī)器人、無人機(jī)、醫(yī)療設(shè)備,甚至云端的推理服務(wù)器。
(圖片來源:Flex Logix)
InferX X1可以支持語音,圖像,視頻等任何基于TensorFlow-Lite或ONNX的模型和算法,特別適用于大型的模型算法和實(shí)時(shí)識(shí)別。例如YOLOv3實(shí)時(shí)物體識(shí)別算法,InferX X1在batch=1的情況下,可以對(duì)1Megapixel圖像達(dá)到25.4幀每秒(fps)的吞吐量,而對(duì)2Megapixel高清圖像則達(dá)到12.7幀每秒(fps)。
工程師在使用InferX X1時(shí)應(yīng)當(dāng)注意什么?
當(dāng)《電子工程專輯》記者問到工程師在使用InferX X1時(shí)應(yīng)當(dāng)特別注意什么時(shí),Jim Jian說,F(xiàn)lex Logix的eFPGA的用戶主要是設(shè)計(jì)芯片的硬件工程師,而InferX X1芯片用于AI推理,所以客戶主要是算法工程師。算法工程師不需要了解芯片內(nèi)部的結(jié)構(gòu)及運(yùn)行,他們關(guān)注的是自己的神經(jīng)網(wǎng)絡(luò)模型在InferX X1芯片上是否能夠達(dá)到所需的性能。
所以,這些算法工程師在設(shè)計(jì)擁有推理功能的邊緣終端設(shè)備或系統(tǒng)時(shí),首先要確認(rèn)推理計(jì)算的芯片是否能提供足夠的算力來達(dá)到自己算法需要的精度和吞吐量,同時(shí)還需要考慮設(shè)備對(duì)功耗的限制,以及對(duì)成本的要求。
(圖片來源:Flex Logix)
Flex Logix向客戶提供編譯器軟件nnMAX Compiler,客戶可以將基于TensorFlow-Lite或ONNX的算法直接用nnMAX Compiler軟件編譯。因此,設(shè)計(jì)一開始客戶就能了解自己的算法在InferX芯片上運(yùn)行的性能和功耗等數(shù)據(jù),從而迅速評(píng)估并優(yōu)化自己的設(shè)計(jì)。