雖然嵌入式市場(chǎng)中多核處理器的可用性并不是什么新鮮事,但今天的軟件工程師可以找到各種同質(zhì)設(shè)備以及復(fù)雜的異構(gòu)片上系統(tǒng) (SoC) 作為他們?cè)O(shè)計(jì)的選項(xiàng)。這種高水平的多核集成提供了許多好處,包括更小、更低成本、更低功耗和更高性能的最終產(chǎn)品。
在工具和框架領(lǐng)域取得了進(jìn)步,一些產(chǎn)品增加了編程范式,以幫助緩解圍繞這種復(fù)雜性的開(kāi)發(fā)挑戰(zhàn)。然而,如果軟件架構(gòu)師不能最大化多核處理器設(shè)備中每個(gè)計(jì)算元素的處理能力,那么高度集成的多核 SoC 所提供的價(jià)值就會(huì)被打折扣。
軟件工程師通過(guò)確定特定多核設(shè)備上的功能的標(biāo)準(zhǔn)方法來(lái)尋求完整的多核權(quán)利。雖然市場(chǎng)上有比較簡(jiǎn)單的、通常是單核處理器的性能的標(biāo)準(zhǔn)基準(zhǔn),但它還沒(méi)有這些標(biāo)準(zhǔn)的基準(zhǔn)或方法來(lái)比較復(fù)雜 SoC 的多核性能(或多核權(quán)利),這使得軟件架構(gòu)師很難為他們的設(shè)計(jì)選擇最好的處理器。
基準(zhǔn)測(cè)試挑戰(zhàn)
在處理器簡(jiǎn)單且計(jì)算性能是唯一關(guān)注點(diǎn)的時(shí)代,對(duì) CPU 性能進(jìn)行基準(zhǔn)測(cè)試相對(duì)容易。隨著處理器架構(gòu)的發(fā)展,基準(zhǔn)測(cè)試挑戰(zhàn)也隨之而來(lái)。根據(jù) Merriam-Webster 的說(shuō)法,基準(zhǔn)的定義之一是“作為衡量或判斷他人的標(biāo)準(zhǔn)的東西”。換句話說(shuō),基準(zhǔn)測(cè)試不是絕對(duì)的,而是相對(duì)的活動(dòng)。當(dāng)處理器架構(gòu)的優(yōu)勢(shì)和劣勢(shì)存在顯著差異時(shí),其中存在根本挑戰(zhàn):知道如何規(guī)范這些差異以制定既公平又準(zhǔn)確的衡量標(biāo)準(zhǔn)。在實(shí)踐中,這個(gè)問(wèn)題很少得到解決,最終用戶會(huì)留下難以以直接方式比較的措施。
迄今為止,傳統(tǒng)的基準(zhǔn)測(cè)試已經(jīng)很好地服務(wù)于嵌入式處理器市場(chǎng),盡管其方式有限。這些基準(zhǔn)測(cè)試易于理解且范圍有限,可在不考慮整體系統(tǒng)復(fù)雜性的情況下測(cè)量 CPU 的整數(shù)或浮點(diǎn)計(jì)算能力。有時(shí),作為此類(lèi)基準(zhǔn)測(cè)試的測(cè)試工具執(zhí)行的軟件內(nèi)核是單一功能,可以通過(guò)使用內(nèi)在指令或其他專(zhuān)門(mén)功能輕松優(yōu)化,這會(huì)使收益難以在真正的客戶應(yīng)用程序中轉(zhuǎn)化。因此,傳統(tǒng)的基準(zhǔn)值為嵌入式處理工程師在選擇設(shè)備時(shí)提供了第一次通過(guò)的指標(biāo),并與潛在供應(yīng)商合作。
然而,當(dāng)今先進(jìn)的 SoC 需要更全面的基準(zhǔn)測(cè)試來(lái)揭示真正的性能和功能以及任何隱藏的瓶頸。由于單個(gè)芯片上集成了如此多的功能,因此對(duì)現(xiàn)實(shí)生活中的用例進(jìn)行建模和測(cè)量變得越來(lái)越困難。因此,業(yè)界已經(jīng)朝著針對(duì)特定應(yīng)用領(lǐng)域(例如 Java 加速、Android 性能或 Web 瀏覽性能)的基準(zhǔn)邁進(jìn)。這種方法與綜合基準(zhǔn)測(cè)試不同,適用于具有明確定義的應(yīng)用程序段的處理器,并為用戶提供了對(duì)預(yù)期性能的相當(dāng)準(zhǔn)確的評(píng)估。
多核復(fù)雜性
對(duì)于部署在醫(yī)療成像、工業(yè)自動(dòng)化、關(guān)鍵任務(wù)系統(tǒng)、通信基礎(chǔ)設(shè)施和高性能計(jì)算等各種應(yīng)用中的新一代嵌入式多核處理器而言,問(wèn)題并不那么簡(jiǎn)單。架構(gòu)復(fù)雜性與復(fù)雜的軟件實(shí)現(xiàn)相結(jié)合,使問(wèn)題更加復(fù)雜。SoC 架構(gòu)內(nèi)所有處理元件和系統(tǒng)總線的內(nèi)部連接會(huì)影響設(shè)備的計(jì)算性能,并使其更難以測(cè)量和評(píng)估。
通過(guò)多核實(shí)現(xiàn),多個(gè)線程可以在不同的內(nèi)核上并行執(zhí)行,而不僅僅是在單個(gè)內(nèi)核上執(zhí)行多任務(wù)。并行路徑數(shù)量和調(diào)度可能性的增加使得建模應(yīng)用程序行為和測(cè)量性能變得更加困難。
此外,多核系統(tǒng)引入了另一個(gè)維度:可擴(kuò)展性,或者說(shuō)隨著使用越來(lái)越多的內(nèi)核,架構(gòu)的可擴(kuò)展性如何??蓴U(kuò)展性不僅在為當(dāng)前應(yīng)用程序選擇合適的架構(gòu)方面很重要,而且在規(guī)劃未來(lái)增長(zhǎng)或產(chǎn)品組合擴(kuò)展方面也很重要。眾所周知的行業(yè)事實(shí)是,應(yīng)用程序加速不會(huì)與內(nèi)核數(shù)量成比例地線性增加,因?yàn)樾阅茉谀承r(shí)候會(huì)下降,并且在某些情況下實(shí)際上會(huì)隨著內(nèi)核數(shù)量的增加而降低。這主要是由于內(nèi)核數(shù)量增加所遇到的訪問(wèn)瓶頸,以及額外的同步需求。加速還取決于軟件的分區(qū)方式以及它可以在多大程度上利用增加的并行性。
但是假設(shè)理想的軟件實(shí)現(xiàn),關(guān)于多核設(shè)備架構(gòu)仍有很多話要說(shuō)(見(jiàn)圖 1)。高性能設(shè)備結(jié)合了多項(xiàng)創(chuàng)新技術(shù),可有效地在系統(tǒng)中移動(dòng)數(shù)據(jù),從而使內(nèi)核保持忙碌,而不會(huì)在訪問(wèn)停頓上浪費(fèi)時(shí)間。高帶寬芯片級(jí)互連和專(zhuān)用加速器創(chuàng)建了處理引擎孤島,這些引擎以最少的核心干預(yù)工作,并且不會(huì)造成內(nèi)存瓶頸。類(lèi)似地,具有內(nèi)置直接內(nèi)存訪問(wèn) (DMA) 的鏈?zhǔn)?a target="_blank">硬件隊(duì)列充當(dāng)迷你裝配線,減輕中斷的核心并安排這些處理任務(wù)。
圖 1: Texas Instruments 的 KeyStone 多核 SoC 架構(gòu)使用數(shù)據(jù)包 DMA 通信路徑在所有 SoC 處理元件和 I/O 上并行調(diào)度任務(wù),從而提供可擴(kuò)展性。
構(gòu)建塊以獲得更好的基準(zhǔn)
隨著芯片供應(yīng)商采用截然不同的方法來(lái)提高多核效率,因此更需要設(shè)計(jì)可用于測(cè)量和比較可擴(kuò)展性和性能的多核基準(zhǔn)。這些基準(zhǔn)測(cè)試應(yīng)該易于移植,以便它們可以在裸機(jī)或常用操作系統(tǒng)上運(yùn)行。由于增加了復(fù)雜性和復(fù)雜性,因此遵循模塊化方法非常重要,這樣可以使用基本構(gòu)建塊創(chuàng)建復(fù)雜的工作負(fù)載。在最低級(jí)別,基準(zhǔn)測(cè)試應(yīng)該包含可以參數(shù)化以改變計(jì)算與內(nèi)存訪問(wèn)比率的處理內(nèi)核。來(lái)自不同應(yīng)用領(lǐng)域的代表性算法可用于創(chuàng)建其中一些內(nèi)核。
內(nèi)核也應(yīng)該是可配置的,這樣它們就可以在不同級(jí)別的資源爭(zhēng)用下并行運(yùn)行在不同的內(nèi)核上。然后可以將這些內(nèi)核的組合編織成復(fù)雜的工作負(fù)載拓?fù)洌?a href="http://ttokpm.com/analog/" target="_blank">模擬各種特定于應(yīng)用程序的場(chǎng)景。隨著行業(yè)和多核應(yīng)用程序的發(fā)展,可以設(shè)計(jì)更多工作負(fù)載并將其添加到現(xiàn)有基準(zhǔn)測(cè)試的全部?jī)?nèi)容中。這些基準(zhǔn)的輸出應(yīng)該是一個(gè)易于比較的分?jǐn)?shù),它反映了在特定數(shù)量的核心上完成給定工作負(fù)載所花費(fèi)的時(shí)間。
毫無(wú)疑問(wèn),多核處理器支持新功能,并極大地改善了現(xiàn)有嵌入式產(chǎn)品的性能、功耗和成本。正如本期《嵌入式計(jì)算設(shè)計(jì)》中的文章所反映的,這個(gè)市場(chǎng)保持著興奮和前景。令人著迷的是,雖然業(yè)界利用了部分多核基準(zhǔn)測(cè)試機(jī)制,但沒(méi)有主流的、市場(chǎng)接受的多核基準(zhǔn)測(cè)試策略到位,尤其是在這樣一個(gè)注重成本的經(jīng)濟(jì)時(shí)代。在做出最終選擇之前,工程師和管理人員經(jīng)常面臨在多臺(tái)設(shè)備上實(shí)施自己耗時(shí)的基準(zhǔn)測(cè)試工作的艱巨任務(wù)。
很難不問(wèn)為什么在多核市場(chǎng)上有如此聰明和創(chuàng)新的工程師會(huì)出現(xiàn)這種情況。也許這個(gè)以多核為特色的特別版將呼吁采取行動(dòng),以建立一個(gè)可行的、市場(chǎng)接受的多核基準(zhǔn)測(cè)試策略,這不僅有利于使用此類(lèi)設(shè)備的嵌入式工程師,也有利于多核 SoC 制造商。
作者:Debbie Greenstreet,Atul Verma
審核編輯:郭婷
-
處理器
+關(guān)注
關(guān)注
68文章
19103瀏覽量
228829 -
soc
+關(guān)注
關(guān)注
38文章
4100瀏覽量
217782 -
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
6689瀏覽量
123142
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論