如何更好地優(yōu)化多核 AI 芯片
在人工智能和機(jī)器學(xué)習(xí)應(yīng)用數(shù)據(jù)處理的強(qiáng)勁需求下,大規(guī)模并行計(jì)算迅速興起,導(dǎo)致芯片復(fù)雜性呈現(xiàn)爆炸式增長(zhǎng)。這種復(fù)雜性體現(xiàn)在 Cerebras 晶圓級(jí)引擎(如下圖)等設(shè)計(jì)中,該設(shè)計(jì)是一種平鋪多核、多晶片設(shè)計(jì),將晶體管數(shù)量增加至數(shù)萬(wàn)億個(gè),擁有近百萬(wàn)個(gè)計(jì)算內(nèi)核。
本文引用地址:http://butianyuan.cn/article/202206/435132.htm人工智能 (AI) SoC 的市場(chǎng)持續(xù)增長(zhǎng),競(jìng)爭(zhēng)也日趨激烈。半導(dǎo)體公司根據(jù)性能、成本和靈活性,來(lái)找到自己的定位,并不斷自我優(yōu)化,從而導(dǎo)致了新型多核架構(gòu)的爆發(fā)式增長(zhǎng)。系統(tǒng)架構(gòu)師正在嘗試不同的方法,希望可以將這種復(fù)雜性轉(zhuǎn)化為競(jìng)爭(zhēng)優(yōu)勢(shì)。
在所有復(fù)雜性來(lái)源中,有一個(gè)在多核 AI SoC 中非常重要的來(lái)源:即當(dāng)有多個(gè)線程在共享數(shù)據(jù)上并行運(yùn)行時(shí),會(huì)出現(xiàn)功能錯(cuò)誤和性能降低問(wèn)題。過(guò)去,設(shè)計(jì)人員可以使用經(jīng)典的 CPU 運(yùn)行控制來(lái)調(diào)試問(wèn)題,但這種方法對(duì)多核架構(gòu)并無(wú)效果。導(dǎo)致軟件問(wèn)題的根本原因錯(cuò)綜復(fù)雜,包括往返時(shí)延、內(nèi)核數(shù)量、控制和數(shù)據(jù)并行、多層層次結(jié)構(gòu)和互相依賴的進(jìn)程,設(shè)計(jì)人員從中找出真正根源的機(jī)會(huì)渺茫。
另外,設(shè)計(jì)人員還需要考慮軟硬件協(xié)同優(yōu)化,這需要大量的功能分析。為了在 SoC 上部署 AI 應(yīng)用,設(shè)計(jì)人員必須編譯源代碼,以充分利用多核架構(gòu)。這通常需要充分了解 SoC 架構(gòu)的定制工具鏈。這個(gè)過(guò)程包括一個(gè)硬件和軟件優(yōu)化及測(cè)試周期,從 SOC 仿真開始,一直貫穿至第一次投片和后續(xù)器件迭代,如下圖所示。
通過(guò)這一功能分析周期,團(tuán)隊(duì)能夠了解以下內(nèi)容:
· 數(shù)據(jù)共享的效率;
· 片上網(wǎng)絡(luò) (NoC) 是否超載或不平衡;
· 如何在不影響代碼執(zhí)行的情況下評(píng)估應(yīng)用性能;
· 如何優(yōu)化內(nèi)存控制器配置文件以提升數(shù)據(jù)處理能力;
· 如何關(guān)聯(lián)整個(gè) SoC 中的事件;
要做到這一點(diǎn),我們需要一種全新的方法來(lái)優(yōu)化 AI SoC 及其上面運(yùn)行的軟件。要將高質(zhì)量的 AI SoC 及時(shí)推向市場(chǎng)并在完成部署后保持性能,必須要進(jìn)行系統(tǒng)范圍的功能分析。系統(tǒng)范圍功能分析的部分功能包括:
· 深入洞察子系統(tǒng)或組件 ;
· 對(duì)整個(gè)系統(tǒng)從啟動(dòng)開始的準(zhǔn)確、連貫的全景圖;
· 事物感知(Transaction-aware) 的互連監(jiān)控和統(tǒng)計(jì)信息;
· 傳統(tǒng)的處理器運(yùn)行控制和追蹤;
· 支持所有常見(jiàn)的指令集和互連協(xié)議;
· 提供選擇或更改重要子系統(tǒng)的靈活性;
· 用于產(chǎn)生數(shù)據(jù)可見(jiàn)性的靈活強(qiáng)大的工具;
用于監(jiān)控和分析 IP 的片上基礎(chǔ)架構(gòu)和軟件提供了所有這些功能,覆蓋范圍可從仿真到部署。下圖即顯示了 SoC 功能監(jiān)控和分析的典型架構(gòu)。
接下來(lái)的圖中展示的示例是一個(gè)多核芯片配備片上網(wǎng)絡(luò) (NoC) 監(jiān)視器,可跟蹤所有 NoC 事務(wù)到循環(huán)緩沖器。由于 NoC 監(jiān)視器具有事務(wù)感知功能,可將其配置為檢測(cè)特定總線條件,例如導(dǎo)致事務(wù)持續(xù)時(shí)間超過(guò)特定閾值(按周期數(shù)計(jì)算)的死鎖。當(dāng)超過(guò)閾值時(shí),NoC 監(jiān)視器可以輸出死鎖事務(wù)以及之前事務(wù)的詳細(xì)信息,以便對(duì)問(wèn)題進(jìn)行診斷。
同一個(gè) NoC 監(jiān)視器也可配置為在檢測(cè)到相同死鎖條件時(shí)——例如通過(guò)跟蹤硬件加速器行為的狀態(tài)監(jiān)視器模塊——使用嵌入式分析消息基礎(chǔ)設(shè)施的交叉觸發(fā)功能,在系統(tǒng)中的其他位置觸發(fā)跟蹤。
了解實(shí)施有效的系統(tǒng)驗(yàn)證和優(yōu)化環(huán)境時(shí)涉及的問(wèn)題,是成功交付多核 SoC 的關(guān)鍵,與該領(lǐng)域內(nèi)的專業(yè)供應(yīng)商合作可實(shí)現(xiàn)事半功倍的效果。
如欲了解更多資源,請(qǐng)?jiān)L問(wèn)技術(shù)論文:利用系統(tǒng)級(jí)數(shù)據(jù)來(lái)優(yōu)化多核 AI 和 ML 芯片
評(píng)論