av日韩亚洲,一本一本a久久,亚洲一区二区三区,亚洲一区二区三区免费视频

多核處理器中的緩存分配方案探究

來源:期刊VIP網(wǎng)所屬分類:生物科學(xué)時間:瀏覽:

  摘 要:當(dāng)今社會,航空航天行業(yè)以及汽車行業(yè),需要減小嵌入式電子設(shè)備的尺寸、重量和功率。此外,這兩個行業(yè)都需要增加嵌入式電子設(shè)備的運算能力并降低數(shù)據(jù)傳輸延遲。多核處理器的出現(xiàn)允許在高性能計算機(jī)的同一片上系統(tǒng)(SoC)中集成多個應(yīng)用程序。在飛行控制計算機(jī)和自動駕駛等應(yīng)用場景,多核處理器健壯性使用取決于解決與處理器資源爭用處理方式。若出現(xiàn)一個內(nèi)核中的資源會影響其他內(nèi)核,從而影響算法的運行,可能導(dǎo)致災(zāi)難性事件。本文對可能的干擾路徑進(jìn)行了分析,并提出了一種使用頁面著色技術(shù)減輕低級緩存爭用的方法。

  關(guān)鍵詞:多核處理器;L2 緩存

  引言

  關(guān)鍵軟件的開發(fā)通常采用容錯設(shè)計來實現(xiàn)系統(tǒng)目標(biāo)。一般情況下,若使用單核計算機(jī)(SCP),每個處理器都有其高速緩存存儲器、主存儲器和與其他計算機(jī)隔離的I/O。但由于半導(dǎo)體電子設(shè)備的物理限制,散熱問題阻止了SCP計算能力的提高。多核架構(gòu)提供了一種通過向片上系統(tǒng)(SOC)添加更多內(nèi)核來實現(xiàn)擴(kuò)展處理能力的方法。一個應(yīng)用程序可以拆分為多個線程,在不同的內(nèi)核中執(zhí)行每個線程,或者兩個不同的應(yīng)用程序可以并行運行。

  算法的并行執(zhí)行并不意味著內(nèi)核是獨立運行的,因為在多核處理器架構(gòu)中,一些處理器資源是共享的。但是,處理器資源的共享就可能導(dǎo)致資源爭用,從而導(dǎo)致關(guān)鍵任務(wù)時序異常。多核處理器的提供了一種使用高性能計算機(jī)開發(fā)集成架構(gòu)的方法。在一個SoC中,兩個不同的應(yīng)用程序并行運行,減少了線路可更換單元(LRU)或電子控制單元(ECU)的數(shù)量,從而減少了布線和功耗。目前已有機(jī)構(gòu)向該行業(yè)提供文件和指導(dǎo),明確多核處理器使用的配置、列出內(nèi)核之間共享的資源、確定防止總線爭用的方法、可能的緩解措施以及最關(guān)鍵需要保護(hù)的任務(wù)[1]。本文介紹了四核處理器中的干擾路徑分析和低級緩存(LLC)的分區(qū)方案。緩存著色技術(shù)使用ARMv8-A53處理器實現(xiàn)。

  1 干擾路徑分析

  干擾路徑分析是解決緩存干擾的常用方法之一。此分析通過對所有處理器共享資源的識別,將干擾分類為可接受、可容忍或不可接受。可接受和可容忍的爭用不會導(dǎo)致可能影響系統(tǒng)確定性的延遲。不可接受的情況需要制定緩解計劃以防止災(zāi)難性事件發(fā)生[2]。

  在某些架構(gòu)中,由于內(nèi)核和資源(如共享LLC緩存)之間的物理連接,可能無法避免干擾路徑。在這種情況下,緩解措施應(yīng)使用時間劃分或其他機(jī)制來減少爭用,以最小化相互訪問的影響。

  高速緩存是現(xiàn)代處理器的重要組成部分,介于處理器和主存儲器之間。然而,高速緩沖存儲器也增加了時序方面的不確定性。當(dāng)微處理器需要使用緩存中的指令或數(shù)據(jù)時,稱為緩存命中,可以最大限度地減少讀取時間。另一方面,當(dāng)微處理器需要訪問的數(shù)據(jù)或指令不在緩存中時,稱為緩存未命中,從主內(nèi)存中讀取數(shù)據(jù)會增加執(zhí)行時間。緩存狀態(tài)對WCET工具和方法來說是一個挑戰(zhàn),因為它需要對下一個處理階段和緩存狀態(tài)進(jìn)行預(yù)測。程序切換或中斷可能導(dǎo)致緩存未命中,并額外的執(zhí)行時間來更新主內(nèi)存將新數(shù)據(jù)塊加載到內(nèi)存中[3]。

  2 緩存著色技術(shù)

  大量的多核處理器架構(gòu)不僅提供L1緩存,而且還提供所有互連內(nèi)核的共享緩存L2。必須將第二級緩存列為干擾路徑,并最小化內(nèi)核干擾。排除或最小化相鄰內(nèi)核引發(fā)的緩存未命中,創(chuàng)建緩存分區(qū)。在安全關(guān)鍵系統(tǒng)中,盡量不使用共享緩存。緩存著色技術(shù)使用集合關(guān)聯(lián)緩存,并控制內(nèi)核僅訪問為它們保留的緩存。著色技術(shù)旨在使共享緩存表現(xiàn)得像私有緩存,通過區(qū)分在不同內(nèi)核上運行的軟件使用的數(shù)據(jù)和指令,將緩存分成各個互不干擾的區(qū)域來減少緩存中的干擾[4]。頁面著色創(chuàng)建一組可以隔離的內(nèi)存區(qū)域,防止相同的LLC索引被不同的內(nèi)核重用。內(nèi)存管理單元(MMU)用于將虛擬地址映射到與特定顏色相關(guān)的物理地址中。

  為驗證緩存著色技術(shù),設(shè)計了一個應(yīng)用場景。構(gòu)建四核處理器A53,核心零中執(zhí)行算法來測量干擾和WCET改進(jìn),并使剩余三個核心使用中斷訪問內(nèi)存,強(qiáng)制競爭二級緩存。我們使用緩存著色技術(shù),將二級緩存分為八種顏色,核心零的執(zhí)行五個應(yīng)用程序,重點是數(shù)學(xué)運算、自主飛行和尋路算法,占用五中顏色,另外三個核心占用剩余三種顏色。在核心零中創(chuàng)建基線來測量時序干擾。試驗證明,使用緩存著色技術(shù)后,系統(tǒng)在核心零中的運行效率提升了55%。

  3 試驗結(jié)果分析

  本試驗展示了四核處理器中的干擾路徑分析,明確了共享緩存是一種需要確保確定性的資源。從共享緩存的角度來看,使用頁面著色技術(shù)創(chuàng)建L2緩存的分區(qū)后提供了系統(tǒng)確定性。試驗突出了WCET中緩存爭用的影響以及如何使用頁面著色提高系統(tǒng)確定性。

  通過對比使用頁面著色技術(shù)前后其他三個核心對核心零的干擾,證明頁面著色技術(shù)適用于安全關(guān)鍵系統(tǒng)中緩存競爭場景。從程序設(shè)計的角度來看,內(nèi)存的分段是透明的,可以使用MMU進(jìn)行內(nèi)存保護(hù),限制應(yīng)用程序的訪問。

  當(dāng)系統(tǒng)內(nèi)存容量較小時,不適合使用頁面著色技術(shù),該技術(shù)會使原本并不充裕的內(nèi)存空間變得更加緊張。另外,用于IO空間尋址或執(zhí)行核間通訊的共享內(nèi)存時也存在問題,緩存分區(qū)可能會占用IO內(nèi)存區(qū)域,或者導(dǎo)致只有一個內(nèi)核負(fù)責(zé)管理對外圍設(shè)備的訪問。

  參考文獻(xiàn):

  [1] Agirre I, Abella J, Azkarate-askasua M. On the tailoring of CAST-32A certification guidance to real COTS multi-core architectures[D]. IEEE international symposium on industrial embedded systems,2017 12th:1-8.

  [2] Boniol F, Pagetti C. Identification of multi-core interference[D]. IEEE 19th international symposium on high assurancesystems engineering,2019:98-106.

  [2] Sheikh SZ.Energy-efficient realtime scheduling on multicores: a novel approach to model cache contention[J]. ACM Trans. Embed. Comput. Syst,19:4.

  [4] Domingues RP, Bezerra JDM, Hirata CM.Design recommendations for the development of airborne multi-core systems[D].IEEE/AIAA 34th digital avionics systems conference,2015:1–32.

  推薦閱讀:科技館場館智慧化建設(shè)的探討

主站蜘蛛池模板: 临沧市| 尼木县| 榕江县| 平利县| 陇南市| 历史| 获嘉县| 龙胜| 若尔盖县| 天门市| 台州市| 张家港市| 翁牛特旗| 普洱| 江源县| 区。| 商都县| 洮南市| 渝北区| 渭源县| 海林市| 嵊州市| 上蔡县| 稻城县| 化隆| 博野县| 克什克腾旗| 五指山市| 平江县| 芮城县| 湘潭县| 建德市| 来凤县| 滁州市| 天水市| 磐石市| 普宁市| 徐闻县| 弥渡县| 长武县| 仁怀市|