來源:ST社區(qū)
開發(fā)者和系統(tǒng)設(shè)計人員在為其嵌入式設(shè)計增加某種形式的神經(jīng)網(wǎng)絡(luò)或深度學(xué)習(xí)功能時,有多個選擇。以前,甚至是現(xiàn)在,設(shè)計人員成功地使用GPU和FGPA來滿足了深度學(xué)習(xí)的內(nèi)存密集型需求?,F(xiàn)在,即便是傳統(tǒng)的x86 CPU也已經(jīng)進(jìn)入了AI應(yīng)用。
許多開發(fā)者發(fā)現(xiàn)現(xiàn)有的這些技術(shù)并不總是最合適的。因此,在過去幾年中,許多初創(chuàng)公司(以及成熟的芯片開發(fā)商)開始專注于為AI應(yīng)用設(shè)計和開發(fā)芯片。這些芯片是從頭開始構(gòu)建的,可以滿足AI算法和運(yùn)行應(yīng)用的算力需求。
要知道,對SoC來說,IP模塊是提供神經(jīng)網(wǎng)絡(luò)功能的另一種選擇,但這是另一個話題了。在IP模塊方面,主要供應(yīng)商包括Cadence、Ceva、NXP、Synopsys和VeriSilicon等。
但與所有技術(shù)一樣,每種解決方案都有其優(yōu)缺點??偠灾?,設(shè)計人員需要根據(jù)自己特定的應(yīng)用來選擇最佳的技術(shù)。AI芯片通常分為三個關(guān)鍵應(yīng)用領(lǐng)域:云端訓(xùn)練、云端推理和邊緣推理。
訓(xùn)練方面的大拿是Nvidia的GPU,它已經(jīng)成為訓(xùn)練機(jī)器學(xué)習(xí)算法的熱門選擇。訓(xùn)練過程要分析數(shù)萬億個數(shù)據(jù)樣本,GPU的并行計算架構(gòu)在這方面是一大優(yōu)勢。
云端推理可以構(gòu)建許多AI應(yīng)用的機(jī)器學(xué)習(xí)模型,這些任務(wù)需要密集的計算而無法部署在邊緣設(shè)備上。FPGA類的處理器具有低延遲特點,并可執(zhí)行計算密集型任務(wù),在這些應(yīng)用方面具有優(yōu)勢。但并非所有AI計算任務(wù)都可以在云端完成,無論成熟公司還是初創(chuàng)公司,很多芯片開發(fā)商都在開發(fā)自己的AI芯片,并為其處理器添加AI功能。
AI Processor Options: benefits and trade-Offs: AI處理器選擇:優(yōu)勢和不足
CPUs: CPU
Universal availability in the cloud: 云端通用性好
Flexible across deep learning inference and all other cloud workloads: 深度學(xué)習(xí)推理與所有其他云端工作負(fù)載能連接靈活
Great software tools: 成熟的軟件工具
Limitation: Not high enough performance for training: 不足:訓(xùn)練性能不高
GPUs: GPU
Very high performance on both deep learning inference and training: 深度學(xué)習(xí)訓(xùn)練和推理都表現(xiàn)出色
Wide availability in the cloud: 在云端適用性廣
Flexible across deep learning and some other high-performance computing workloads: 深度學(xué)習(xí)與一些高性能計算負(fù)載連接靈活
Great software tools: 成熟的軟件工具
Limitation: high power, high cost: 不足:功耗高,成本高
FPGAs: FPGA
High performance on deep learning inference and a few other DSP workloads: 在深度學(xué)習(xí)推理和一些DSP工作負(fù)載中性能優(yōu)異
Some availability in the cloud: 可用于云端一些應(yīng)用
Energy efficient: 能效高
Limitation: less mature software, not suited for training: 不足:缺少成熟的軟件,不適合訓(xùn)練
AI Chips: AI芯片
Very high performance on deep learning inference and training (depending on chip) : 在深度學(xué)習(xí)訓(xùn)練和推理方面性能很高(取決于芯片)
Usually very energy efficient and cost effective: 通常能效高,成本低
Limitation: Only very early availability especially in cloud; software usually less mature; often applicable only to deep learning tasks: 不足:還處于早期階段,特別是在云端;軟件不成熟;通常只適用于深度學(xué)習(xí)任務(wù)
那么設(shè)計師在將腳踏入AI深水之前首先需要回答哪些問題?我與硅谷創(chuàng)業(yè)家兼技術(shù)專家Chris Rowen進(jìn)行了交談。做為BabbleLabs公司和Cognite Ventures的首席執(zhí)行官,他列出了以下問題。
問題一:了解你的最終應(yīng)用需求
對于任何設(shè)計,第一個問題應(yīng)該都是:你的應(yīng)用需求是什么?接下來是“我有一個需要完成的具體任務(wù)嗎?”,有時這很清楚。Rowen表示, “如果我是一名系統(tǒng)設(shè)計師,要開發(fā)一個安全攝像頭,我會非常關(guān)心芯片對視頻流交叉部分的處理,包括對象檢測、對象識別、對象跟蹤等,清楚知道少數(shù)幾個與最終應(yīng)用特別相關(guān)的任務(wù)?!?/p>
下一個問題是,應(yīng)用是在云端還是在邊緣設(shè)備中運(yùn)行。這將決定工程師需要考慮設(shè)計的方向和選擇什么樣的芯片。
“最終應(yīng)用顯然很重要,” Rowen說道?!叭绻谠贫诉\(yùn)行,問題將是,‘它是用于訓(xùn)練神經(jīng)網(wǎng)絡(luò),還是在一個已經(jīng)訓(xùn)練過的網(wǎng)絡(luò)上僅用于推理?’。如果它在邊緣運(yùn)行,那么想要運(yùn)行的特定應(yīng)用集是什么?”
Rowen表示,大多數(shù)新的芯片都是為邊緣視覺應(yīng)用而設(shè)計的,這些芯片主要針對推理應(yīng)用,以各種不同的形式進(jìn)行成像或視頻分析。音頻,尤其是語音處理是越來越重要且快速增長的一個子類別。
所以,首先要確定是在云端還是邊緣。若在云端,是訓(xùn)練還是推理?若在邊緣,它是通用的(應(yīng)用不確定)還是視覺處理,或其他專門的應(yīng)用(比如語音處理)?
問題二:軟件支持
軟件工具也有助于區(qū)分不同的芯片?!叭绻且粋€訓(xùn)練芯片,它是否支持各種訓(xùn)練環(huán)境,包括TensorFlow、PyTorch和其它框架,因為應(yīng)用和軟件開發(fā)團(tuán)隊會使用許多重要的訓(xùn)練環(huán)境,”Rowen說道。他認(rèn)為Nvidia是當(dāng)今訓(xùn)練芯片的黃金標(biāo)準(zhǔn)和主導(dǎo)供應(yīng)商。
“在推理方面,你怎么才能更好地將預(yù)先訓(xùn)練好的模型與芯片自身的特性一一對應(yīng)。如果有像神經(jīng)網(wǎng)絡(luò)交換格式(NNEF)這樣的標(biāo)準(zhǔn),這個問題就很容易回答了?!癗NEF是Khronos Group推廣的一個標(biāo)準(zhǔn),可以更容易地標(biāo)準(zhǔn)化映射工具。
“通常情況下,相對于將應(yīng)用映射到其他新的處理引擎所涉及到的軟件,這些神經(jīng)網(wǎng)絡(luò)的復(fù)雜性并不算高,”Rowen解釋道。 “即使這些工具并不完美,人們通常也可以找到一種方法,使用不太復(fù)雜的工具將現(xiàn)有神經(jīng)網(wǎng)絡(luò)映射到視覺芯片、音頻芯片,或者其它邊緣處理芯片?!?/p>
無論軟件是不是最關(guān)鍵的,設(shè)計人員都應(yīng)該考慮硬件的價格、性能和功耗,這就帶來了下一個問題。
問題三:內(nèi)存要求
任何芯片選擇都有一個長期存在的問題,那就是成本和性能。對于神經(jīng)網(wǎng)絡(luò),這個問題就是芯片采用什么片上存儲器,以及可以提供多大的存儲器帶寬?
“有些神經(jīng)網(wǎng)絡(luò)非常耗費內(nèi)存,”Rowen說。 “當(dāng)然,通常在云端進(jìn)行的訓(xùn)練過程是內(nèi)存密集型的,需要大量的片上內(nèi)存和非常高的內(nèi)存帶寬?!?/p>
他補(bǔ)充說,視目標(biāo)應(yīng)用不同,推理過程通常占用的內(nèi)存較少,可能也不需要太高的片外帶寬。
這就帶來了一個問題。區(qū)分一個芯片是通用,還是針對特定應(yīng)用的一個指標(biāo),就是芯片設(shè)計人員是否集成了大量片上存儲資源和片外存儲器帶寬。但是,如果設(shè)計人員不知道他們的目標(biāo)應(yīng)用是什么,可能就會在內(nèi)存帶寬方面過度配置,這就會大幅增加芯片成本。
“過度配置將增加成本,因此通用芯片幾乎總是比專用芯片更昂貴,因為他們必須確??梢詽M足各種需求,”Rowen說。利弊權(quán)衡包括成本、功耗和物理尺寸等。
Rowen認(rèn)為,如果設(shè)計人員可以稍微縮小需求范圍,以便降低一些成本和功耗,系統(tǒng)級的性能可能會有大幅提升?!巴ㄓ煤蛯S肹芯片]之間的差異可能高達(dá)一個數(shù)量級?!?/p>
問題四:性能------延遲與吞吐量
性能的最終定義是芯片可以多快地運(yùn)行神經(jīng)網(wǎng)絡(luò)應(yīng)用,這里的兩個相關(guān)指標(biāo)是吞吐量和延遲,要明確系統(tǒng)優(yōu)化是針對增加吞吐量,還是針對減少延遲。
Rowen表示,在云端,重點通常是吞吐量,而延遲往往在實時邊緣系統(tǒng)中非常重要。例如,如果你在為自動駕駛應(yīng)用開發(fā)一款芯片,延遲更為重要,而且是一個關(guān)鍵的安全問題,他補(bǔ)充道。
“幸運(yùn)的是,對于很多神經(jīng)網(wǎng)絡(luò)應(yīng)用來說,所能達(dá)到的性能與芯片的乘積運(yùn)算速度之間存在很強(qiáng)的相關(guān)性,”Rowen解釋道。 “計算資源的利用率有一些變化,但在最簡單的水平上,只要問‘在給定精度下每秒乘積-累加多少次’或‘每瓦多少次乘積-累加’,就可以大致知道該芯片的性能?!?/p>
一般來說,現(xiàn)在GPU是云端神經(jīng)網(wǎng)絡(luò)訓(xùn)練的主導(dǎo)力量,而普通x86處理器是云端推理的最常見平臺,因為它在單個芯片上可以靈活地運(yùn)行包括深度學(xué)習(xí)和傳統(tǒng)軟件在內(nèi)的完整應(yīng)用,Rowen表示。
在大多數(shù)情況下,邊緣沒有太多的訓(xùn)練工作要做。它主要針對視頻或音頻等特定用例進(jìn)行推理。
Rowen為我們提供了一個粗略的評估,按照應(yīng)用來劃分芯片(來自初創(chuàng)公司和成熟企業(yè))。 “有一種趨勢是,針對云端的芯片更具通用性,而針對邊緣的芯片更為專用?!?/p>
以下是一些AI增強(qiáng)型芯片和平臺的簡要介紹,展示了目前市場上從移動端到企業(yè)級應(yīng)用的各種神經(jīng)網(wǎng)絡(luò)解決方案:
Gyrfalcon Lightspeeur AI芯片:
這是初創(chuàng)企業(yè)Gyrfalcon技術(shù)公司推出的超低功耗和高性能AI芯片。Lightspeeur 2801S智能矩陣處理器基于APiM架構(gòu),使用內(nèi)存作為其AI處理單元。該公司宣稱,“這個基于APiM架構(gòu)的方案,有28000個并行神經(jīng)計算核,真正支持片上并行與原位計算,不需要使用外部存儲單元,成功克服了由存儲器帶寬而導(dǎo)致的性能瓶頸,在效率能耗比方面表現(xiàn)卓越,達(dá)到 9.3Tops/Watt,無論在訓(xùn)練模式還是推理模式下均可提供高密度計算性能?!?/p>
該公司聲稱其算術(shù)邏輯單元(ALU)的使用效率為77%,運(yùn)行卷積神經(jīng)網(wǎng)絡(luò)(CNN)效率會更高。
Gyrfalcon提供交鑰匙(Turnkey)參考設(shè)計,包括USB加密狗、多芯片線路板和系統(tǒng)開發(fā)套件。其目標(biāo)應(yīng)用包括移動邊緣計算、基于AI的IoT,消費類便攜設(shè)備、智能監(jiān)控視頻、AR/VR產(chǎn)品、人臉檢測/識別、自然語言處理、支持深度學(xué)習(xí)的設(shè)備、AI數(shù)據(jù)中心服務(wù)器,以及自動駕駛等。
華為麒麟970:
這是華為消費業(yè)務(wù)事業(yè)部的首個移動AI計算平臺,采用專用神經(jīng)處理單元(NPU),可將云端AI與本機(jī)AI處理有機(jī)結(jié)合。麒麟970包括一個八核CPU和新一代12核GPU。
“與四核Cortex-A73 CPU集群相比,麒麟970新的異構(gòu)計算架構(gòu)可實現(xiàn)高達(dá)25倍的性能提升,以及50倍的效率提高,”華為表示。這意味著該芯片組以更低的功耗,更快地提供相同的AI計算任務(wù)?;鶞?zhǔn)圖像識別測試表明,麒麟970每分鐘可處理2,000張圖像。
除了在自己的手機(jī)中使用新的AI芯片組外,華為還將移動AI定位為開放平臺,為開發(fā)人員和合作伙伴提供技術(shù)。
英特爾Nervana神經(jīng)網(wǎng)絡(luò)處理器(NPP):
英特爾Nervana NNP專為深度學(xué)習(xí)而設(shè)計,沒有標(biāo)準(zhǔn)的緩存層次結(jié)構(gòu),其片上存儲器由軟件管理。 “更好的內(nèi)存管理使該芯片能夠?qū)崿F(xiàn)海量計算的高利用率,”英特爾宣稱。 “這可以為深度學(xué)習(xí)模型提供更快的訓(xùn)練時間。”
除了新的存儲器架構(gòu)外,英特爾還開發(fā)了一種新的數(shù)字格式Flexpoint,它可以顯著提高芯片的并行度,同時降低每次計算的功耗。英特爾表示,由于單個芯片的神經(jīng)網(wǎng)絡(luò)計算主要受功耗和內(nèi)存帶寬的限制,因此Flexpoint可為神經(jīng)網(wǎng)絡(luò)任務(wù)提供更高的吞吐量。英特爾這一新設(shè)計的目標(biāo)是“獲得高計算利用率并支持多芯片互連的真實模型并行性”。
英特爾Movidius VPU:
英特爾正在與微軟合作,將微軟Windows ML與英特爾的Movidius視覺處理單元(VPU)相結(jié)合來推動邊緣AI推理。英特爾Movidius Myriad X VPU是一款專門用于加速邊緣AI應(yīng)用的芯片,它聲稱是業(yè)界首款具有專用神經(jīng)計算引擎的系統(tǒng)級芯片解決方案,可用于邊緣深度學(xué)習(xí)推理的硬件加速。 “這款第三代VPU可以高速和低功耗運(yùn)行深度神經(jīng)網(wǎng)絡(luò),以減輕其它硬件的特定AI處理負(fù)擔(dān),”英特爾表示。
英特爾還會針對通用機(jī)器學(xué)習(xí)和推理繼續(xù)優(yōu)化其Xeon可擴(kuò)展處理器和數(shù)據(jù)中心加速器。
聯(lián)發(fā)科技NeuroPilot AI平臺:
NeuroPilot平臺專為AI邊緣計算而設(shè)計,可提供一系列的硬件和軟件、AI處理單元和NeuroPilot軟件開發(fā)套件(SDK)。它所支持的主流AI框架包括Google TensorFlow、Caffe、Amazon MXNet和Sony NNabla,并且在操作系統(tǒng)方面支持Android和Linux。
聯(lián)發(fā)科技表示,該平臺“使AI更接近芯片組級別,適用于邊緣計算設(shè)備,即深度學(xué)習(xí)和智能決策需要更快完成的場景”,開創(chuàng)了一個從邊緣到云端的AI計算方案混合體。
Nvidia Tesla V100 GPU:
與上一代產(chǎn)品相比,Nvidia的深度學(xué)習(xí)計算平臺性能提升了10倍。全新的NVIDIA Tesla V100還將內(nèi)存提升了一倍(到32 GB內(nèi)存),以處理內(nèi)存密集型的深度學(xué)習(xí)和高性能計算任務(wù),此外還添加了一個名為NVIDIA NVSwitch的全新GPU互連結(jié)構(gòu)。該公司表示,這可以使多達(dá)16個Tesla V100 GPU同時以每秒2.4太字節(jié)(TB)的速度進(jìn)行通信,Nvidia還更新了軟件堆棧。 Tesla V100 32GB GPU適用于整個NVIDIA DGX系統(tǒng)產(chǎn)品家族。
NPX面向邊緣處理的機(jī)器學(xué)習(xí)(ML)環(huán)境:
為證明利用現(xiàn)有的CPU可以在邊緣運(yùn)行機(jī)器學(xué)習(xí)模型,NXP半導(dǎo)體公司推出了嵌入式AI環(huán)境,可讓設(shè)計人員基于NXP的產(chǎn)品系列部署機(jī)器學(xué)習(xí),從低成本微控制器到i.MX RT處理器,直到高性能應(yīng)用處理器。NXP表示,ML環(huán)境提供了簡便的交鑰匙方案,可讓設(shè)計人員選擇正確的執(zhí)行引擎(Arm Cortex內(nèi)核或高性能GPU/DSP)和工具,以便在其上部署機(jī)器學(xué)習(xí)模型(包括神經(jīng)網(wǎng)絡(luò))。
此外,NXP還表示,該環(huán)境包括一些免費軟件,允許用戶導(dǎo)入他們自己訓(xùn)練過的TensorFlow或Caffe模型,將它們轉(zhuǎn)換為優(yōu)化的推理引擎,并將它們部署在NXP從低成本的MCU到i.MX,以及Layerscape處理器解決方案上。
“在嵌入式應(yīng)用中實施機(jī)器學(xué)習(xí),一切都要平衡成本和最終用戶體驗,”恩智浦AI技術(shù)負(fù)責(zé)人Markus Levy在一份聲明中表示。 “例如,許多人仍然感到驚訝,即使在低成本MCU上,他們也可以部署具有足夠性能的推理引擎。另一方面,我們的高性能混合交叉和應(yīng)用處理器具有足夠的處理資源,可在許多客戶應(yīng)用中運(yùn)行快速推理和訓(xùn)練。隨著AI應(yīng)用的擴(kuò)大,我們將繼續(xù)通過下一代專用機(jī)器學(xué)習(xí)加速器來推動這一領(lǐng)域的增長。”
NXP的EdgeScale套件提供了一套基于云的工具和服務(wù),用于物聯(lián)網(wǎng)和邊緣計算設(shè)備的安全制造與注冊。該解決方案為開發(fā)人員提供了一套安全機(jī)制,供他們在應(yīng)用中利用主流的云計算框架,遠(yuǎn)程部署和管理無限數(shù)量的邊緣設(shè)備。NXP的合作伙伴生態(tài)系統(tǒng)還包括ML工具、推理引擎,解決方案和設(shè)計服務(wù)等。
審核編輯 黃昊宇
-
芯片
+關(guān)注
關(guān)注
455文章
50791瀏覽量
423494 -
AI
+關(guān)注
關(guān)注
87文章
30853瀏覽量
269028
發(fā)布評論請先 登錄
相關(guān)推薦
評論