亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

具多樣替換策略的集合關(guān)聯(lián)快取內(nèi)存的制作方法_5

文檔序號(hào):9921973閱讀:來源:國(guó)知局
和不同的從MAT到MAT群組以及從MAT群組 到閾值的映射。事實(shí)上,在一實(shí)施例中,當(dāng)處理器在運(yùn)作時(shí),所述映射可基于正在運(yùn)行程序 或程序階段而動(dòng)態(tài)地被更新(例如通過圖1的更新輸入126),其相關(guān)詳細(xì)內(nèi)容請(qǐng)參照?qǐng)D7-9。 此外,具不同的數(shù)目的MAT群組2909亦可以被采用。
[0197]如圖25中所描述的,全關(guān)聯(lián)快取內(nèi)存2302可以另包括邏輯,其用以提供MAT群組 2909的使用,可有益地減少硬件數(shù)量(其系在所需的交換上以潛在較少的配置與有效運(yùn)用 全關(guān)聯(lián)快取內(nèi)存2302的方式來達(dá)成)。例如,優(yōu)選地,全關(guān)聯(lián)快取內(nèi)存2302僅具有對(duì)計(jì)數(shù)器 2306有用的MAT群組2909的數(shù)量、閾值2308和指標(biāo)符2304,且每個(gè)條目的MAT 2314持有條目 112的MAT群組。
[0198]請(qǐng)參照?qǐng)D30,其所繪示為圖23的快取內(nèi)存2302其運(yùn)作流程圖。所述流程開始于方 塊3002。
[0199] 在方塊3002中,快取內(nèi)存2302接收未能在快取內(nèi)存202中命中的內(nèi)存訪問122。內(nèi) 存訪問122索引選取陣列104中的一個(gè)條目112。內(nèi)存訪問122指定MAT 101。分配單元106將 MAT 101映射到MAT群組2909。所述流程接著進(jìn)行至方塊3004。
[0200] 在方塊3004中,分配單元106判定與MAT群組2909相關(guān)聯(lián)的計(jì)數(shù)器2306是否已達(dá)到 與MAT群組2909相關(guān)聯(lián)的閾值2911。所述流程進(jìn)行至判定方塊3006。
[0201 ] 在判定方塊3006中,如果與MAT群組2909相關(guān)聯(lián)的計(jì)數(shù)器2306已達(dá)到與MAT群組 2909相關(guān)聯(lián)的閾值2911,所述流程接著進(jìn)行至方塊3008;否則,所述流程接著進(jìn)行至方塊 3012〇
[0202]在方塊3008中,分配單元106替換陣列104其中一個(gè)有效條目112,所述有效條目 112其MAT 2314匹配于快取訪問122的MAT群組2909。如圖23所述,被替換的條目112可以是 通過各種不同的替換策略來選取,而采用關(guān)聯(lián)于MAT群組2909的指標(biāo)符2304為優(yōu)選者。所述 流程結(jié)束于方塊3008。
[0203]在方塊3012中,分配單元106分配陣列104中的任何一個(gè)條目112,其類似于圖27的 方塊2712所描述。所述流程接著進(jìn)行至方塊3014。
[0204]在方塊3014中,分配單元106遞增關(guān)聯(lián)于內(nèi)存訪問122其MAT群組2909的計(jì)數(shù)器 2306。所述流程接著進(jìn)行至判定方塊3016。
[0205]在判定方塊3016中,分配單元106判定被替換的條目112否有效。如果是,所述流程 接著進(jìn)行至方塊3018;否則,所述流程結(jié)束。
[0206]在方塊3018中,分配單元106遞減關(guān)聯(lián)于被替換條目112其MAT 2314的計(jì)數(shù)器 2306。所述流程結(jié)束于方塊3018。
[0207]當(dāng)某一特定階層的快取其被規(guī)劃為具有兩個(gè)MAT群組且其中的第一 MAT群組僅能 分配至多全關(guān)聯(lián)快取內(nèi)存2302其閾值的數(shù)量(例如,80%),則圖29和30的實(shí)施例可用來對(duì) 所述特定階的快取來提高其效率。所述第一 MAT群組可以包括所有與數(shù)據(jù)相關(guān)(data-realted)的MAT,而第二MAT群組可以包括所有與代碼相關(guān)(code-realted)的MAT(例如,代 碼獲取與代碼預(yù)?。拗迫P(guān)聯(lián)快取內(nèi)存2302中包含代碼的快取線,可有效地在專用指令 快取(private instruction cache)中防止與數(shù)據(jù)(例如,流數(shù)據(jù))間的爭(zhēng)用情形發(fā)生。 [0208]請(qǐng)參照?qǐng)D31,其所繪示為一集合關(guān)聯(lián)快取內(nèi)存3102之方塊示意圖。圖31的快取內(nèi) 存3102在許多方面類似于圖1的快取內(nèi)存102,并且其具有相似編號(hào)的組件亦是相似的。然 而,圖31的快取內(nèi)存3102包括映射3108,其不同于圖1的映射108。圖31的映射3108可以包括 任何圖1-22E所示的不同的映射;然而,圖31的映射3108還包括將不同的多個(gè)MAT映射到MAT 優(yōu)先級(jí)的映射3108,圖32為其中一個(gè)例子。另外,用于每個(gè)有效的快取線的MAT 3114其存儲(chǔ) 在陣列104中。亦即,當(dāng)存儲(chǔ)組件112被分配給快取線時(shí),使所述分配加速的內(nèi)存訪問122其 MAT 101則是儲(chǔ)存在存儲(chǔ)組件112。有利地,MAT 3114連同MAT到MAT優(yōu)先級(jí)映射3108的儲(chǔ)存, 能夠使快取內(nèi)存3102將陣列104的一選定集合的有效快取線的MAT 3114包含于替換策略 中,以選取所選定集合其一個(gè)分路來作分配,其更詳細(xì)的描述請(qǐng)參考如下,特別是參考圖 33〇
[0209]請(qǐng)參照?qǐng)D32,其所繪示為根據(jù)本發(fā)明之一實(shí)施例之從MAT到圖31的優(yōu)先級(jí)3108其 映射之示意圖。圖32示例的映射包括對(duì)應(yīng)于表1的32個(gè)MAT。圖32的示例映射轉(zhuǎn)載于表5。

[0212] 表5
[0213] 此處應(yīng)當(dāng)理解的是,雖然圖32(和表5)描述了特定的MAT集合和從MAT到MAT優(yōu)先級(jí) 的特定映射,但前述的實(shí)施例僅用于示例之目的,本發(fā)明亦適用于具不同MAT集合和從MAT 到MAT優(yōu)先級(jí)的不同映射。事實(shí)上,在一實(shí)施例中,當(dāng)處理器在運(yùn)作時(shí),所述映射可根據(jù)正在 運(yùn)行程序或程序階段而動(dòng)態(tài)地被更新(例如通過圖1的更新輸入126),其相關(guān)詳細(xì)內(nèi)容請(qǐng)參 照?qǐng)D7-9。
[0214]請(qǐng)參照?qǐng)D33,其所繪示為一考慮到快取線其MAT的快取線替換策略流程圖。所述流 程開始于方塊3302。
[0215] 在方塊3302中,快取內(nèi)存3102接收在快取內(nèi)存3102中未能命中的內(nèi)存訪問122。內(nèi) 存訪問122索引選取陣列104中的一個(gè)集合。內(nèi)存訪問122指定MAT 101。所述流程接著進(jìn)行 至方塊3304。
[0216] 在方塊3304中,分配單元106根據(jù)用于所選定集合的替換策略來決定最符合的替 換分路與第二符合的替換分路。例如,如果替換策略是LRU/pLRU,分配單元106根據(jù)替換位 114來決定所選定集合的LRU分路和第二符合的LRU分路。在另一例子中,如果替換策略是輪 口4,分配單元106藉由替換位114的輪叫指標(biāo)符來決定所指向的分路,并以輪叫順序(round-robin order) 方向的下一個(gè)分路。在另一例子中 ,如果替換策略是是隨機(jī)的 ,分配單元 106 隨機(jī)地決定其中兩個(gè)分路。此處應(yīng)當(dāng)理解的是,在一實(shí)施例里快取內(nèi)存3102其分路、集合群 組、組塊或包裹的分配是有限的話,則分配單元106僅考慮所選取集合的一個(gè)分路子集,再 檢視所述分路子集里最符合和第二符合的分路的MAT優(yōu)先級(jí)(MAT priority)。所述流程接 著進(jìn)行至方塊3306。
[0217] 在方塊3306中,分配單元106檢視在方塊3304所決定之最符合分路的MAT 3114和 第二符合分路的MAT 3114,然后比較此兩個(gè)MAT 3114其相對(duì)之MAT優(yōu)先級(jí)3277。所述流程接 著進(jìn)行至判定方塊3308。
[0218] 在判定方塊3308中,如果最符合分路的MAT優(yōu)先級(jí)3377高于第二符合分路的MAT優(yōu) 先級(jí)3377,所述流程接著進(jìn)行至方塊3312;否則,所述流程接著進(jìn)行至方塊3314。在一實(shí)施 例中,分配單元106計(jì)算最符合分路的MAT優(yōu)先級(jí)3377與第二符合分路的MAT優(yōu)先級(jí)3377之 間的差值并判定此差值是否大于閾值,而不是僅測(cè)試最符合分路的MAT優(yōu)先級(jí)3377是否高 于第二符合分路的MAT優(yōu)先級(jí)3377。此處應(yīng)當(dāng)注意的是,如果在選定集合(或其相關(guān)子集)具 有無效的分路,則分配單元106分配此無效分路而不是替換最符合和第二符合的分路。
[0219]在方塊3312中,分配單元106替換第二符合分路而非最符合分路。所述流程接著進(jìn) 行至方塊3316。
[0220]在方塊3314中,分配單元106替換最符合分路。所述流程接著進(jìn)行至方塊3316。 [0221]在方塊3316中,分配單元106以快取訪問122的MAT 101來更新被替換分路的MAT 3114。在這種方式下,陣列104的條目其MAT 3114被保持。所述流程接著進(jìn)行至方塊3318。 [0222]在方塊3318中,分配單元106檢視快取訪問122的MAT 1011且判定其是否具有相對(duì) 低的優(yōu)先級(jí),例如,低于閾值。舉例來說,在圖32的實(shí)施例中,分配單元106可判定快取訪問 122的MAT 1011是否低于3。所述流程接著進(jìn)行至判定方塊3322。
[0223]在判定方塊3322中,如果快取訪問122的MAT 1011具有相對(duì)低的優(yōu)先級(jí),所述流程 接著進(jìn)行至方塊3326;否則,所述流程接著進(jìn)行至方塊3324。
[0224]在方塊3324中,分配單元106根據(jù)替換方案將被替換的分路插入替換位114中最不 適合的位置。舉例來說,在LRU/pLRU方案下,分配單元106將被替換的分路插入最近使用位 置。另一個(gè)例子,在輪叫方案下,分配單元106以剛剛超過(past)被替換分路者來更新輪叫 指標(biāo)符。所述流程結(jié)束于方塊3324。
[0225]在方塊3326中,分配單元106根據(jù)替換方案將被替換分路插入替換位114中適度 (moderately)的位置,前述的分配基于快取訪問122的MAT優(yōu)先級(jí)3277有多低為優(yōu)選者。舉 例來說,在LRU/pLRU方案下,分配單元106將被替換分路插入一中間位置。優(yōu)選地,MAT優(yōu)先 級(jí)3277愈低,分配單元106將被替換分路插入愈接近中間位置。相反地,MAT優(yōu)先級(jí)3277愈 高,分配單元106將被替換分路插入愈遠(yuǎn)離中間位置且愈接近最近使用的位置。在一實(shí)施例 中,對(duì)那些非常低的MAT優(yōu)先級(jí)3277(例如,優(yōu)先級(jí)為0的預(yù)取)來說,分配單元106將被替換 分路插入在LRU或次于LRU(next-to-LRU)的位置。另一個(gè)例子,在輪叫方案下,分配單元106 依據(jù)MAT優(yōu)先級(jí)3327有多低,來以更多超過(past)被替換分路的位置來更新輪叫指標(biāo)符。在 一實(shí)施例中,當(dāng)決定要將被替換分路插入于那個(gè)位置時(shí),分配單元106還考慮到相對(duì)的MAT 優(yōu)先級(jí)3327,其關(guān)聯(lián)于與最不適合位置之鄰近的一個(gè)或多個(gè)分路其MAT 3114。所述流程結(jié) 束于方塊3326。
[0226]雖然在前述實(shí)施例中是以兩個(gè)最符合分路作考慮,但在其他實(shí)施例可以以更多的 最符合分路來作考慮,例如,如果第三最符合分路其MAT優(yōu)先級(jí)小于最符合分路和第二符合 分路,則分配單元106取代第三最符合分路。
[0227]在本案所述快取內(nèi)存的各種配置,例如基于分路、集合群組、組塊、MAT群組閾值、 或具不同替換策略的包裹的映射,其可以分類為靜態(tài)分配(static configuration)、動(dòng)態(tài) 配置(dynamic configuration)或同時(shí)具備此兩者之配置。一般來說,靜態(tài)分配是娃前 (pre-silicon)的規(guī)劃工作。也就是說,設(shè)計(jì)者使用直覺,優(yōu)選地通過處理器設(shè)計(jì)的軟件仿 真(software simulation)的輔助以判好的配置。所謂好的配置指其能潛在地改善處理器 的性能,特別是快取內(nèi)存的性能。處理器性能的改進(jìn)能提高處理器執(zhí)行程序的速度(例如, 降低每個(gè)指令比率的時(shí)鐘數(shù)量或增加每個(gè)時(shí)鐘比率的指令數(shù)量)和/或減少功率的消耗。所 述程序可以是操作系統(tǒng)、可執(zhí)行的程序(例如,應(yīng)用程序(application)、工具程序 (utility)、標(biāo)準(zhǔn)檢查程序(benchmark))、動(dòng)態(tài)鏈接庫(kù)(dynamic link libraries)等。所述 軟件仿真可用于進(jìn)行程序的離線分析,進(jìn)而去提高處理器的性能,其相關(guān)說明請(qǐng)參照?qǐng)D34-36(特別是相關(guān)于快取內(nèi)存配置的敘述)。優(yōu)選地,設(shè)計(jì)者可決定對(duì)大量程序集合有幫助的 靜態(tài)分配,而設(shè)計(jì)者可將靜態(tài)分配加入至用于芯片制造的設(shè)計(jì)中。
[0228]相反的,一般而言,硅后(post-silicon)規(guī)劃則是用來分析動(dòng)態(tài)配置。亦即,在處 理器被制造后,當(dāng)處理器正在執(zhí)行具不同于制造在硅芯片中靜態(tài)分配(或是默認(rèn)分配)的程 序時(shí),設(shè)計(jì)者執(zhí)行不同種類的離線分析以判定處理器的效能。硅后測(cè)試可涉及更嚴(yán)謹(jǐn)(也許 更蠻力(brute force))的技術(shù),在此技術(shù)中用于進(jìn)行相對(duì)于配置矩陣(configuration matrix)的自動(dòng)性能回歸(automated performance regression),然后進(jìn)行回歸性能數(shù)據(jù) (regression performance data)分析,其相關(guān)說明請(qǐng)參照?qǐng)D37。設(shè)計(jì)者可以采用娃前測(cè)試 的結(jié)果作為對(duì)娃后(P〇st-si 1 icon)測(cè)試的初始種子(initial seed),例如,以試圖避免局 部最大值(local maxima)并非全局最大值(global maxima)的情況。
[0229] 無論測(cè)試是娃前或娃后,經(jīng)由動(dòng)態(tài)配置測(cè)試(dynamic configuration testing), 在程序基礎(chǔ)(per-program basis)或甚至在程序階段基礎(chǔ)(per-program phase basis)上 即可判定出好的配置。然后,當(dāng)系統(tǒng)(例如,設(shè)備驅(qū)動(dòng)器)檢測(cè)到已知程序正在處理器上運(yùn)行 (即,為所述程序的分析已被執(zhí)行且已得知一個(gè)好的配置),所述系統(tǒng)提供此好的程序?qū)S?(program-specific)配置到所述處理器,并且當(dāng)處理器運(yùn)行時(shí),所述處理器用動(dòng)態(tài)方式以 程序?qū)S门渲脕砀驴烊?nèi)存。優(yōu)選地,所述程序?qū)S门渲冒ㄓ糜谠诔绦虿煌A段的不 同配置。此外,因應(yīng)于程序?qū)S门渲?,所述處理器還檢測(cè)階段變化且動(dòng)態(tài)更新配置,其相關(guān) 說明請(qǐng)參照?qǐng)D36。
[0230] 程序階段是相對(duì)于一組給定特性,其是一種計(jì)算器程序的子集,且具有一致行為 的特征。舉例來說,假定相關(guān)特征是分支預(yù)測(cè)率(branch prediction rate)和快取命中率 (cache hit rate),則程序階段則是指那些具有運(yùn)行時(shí)間(runtime)行為的程序子集,在此 程序子集里分支預(yù)測(cè)率和快取命中率是一致的。例如,離線分析可確定某一特定數(shù)據(jù)壓縮 程序(data compression program)有兩個(gè)階段:字典結(jié)構(gòu)階段(dictionary construction phase)和字典查找階段(dictionary lookup phase)。字典結(jié)構(gòu)階段(dictionary construction phase)具有相對(duì)低的分支預(yù)測(cè)率(branch prediction rate)和相對(duì)高的快 取命中率(cache hit rate),與建立子字符串集合的方式一致(亦與建立字符串大量集合 的方式一致);而,字典查找階段(dictionary lookup phase)具有相對(duì)高的分支預(yù)測(cè)率 (branch prediction rate)和相對(duì)低的快取命中率(cache hit rate),與在字典中查找子 字符串的方式一致(其查找范圍較快取尺寸為大)。
[0231] 在一實(shí)施例中,可使用"預(yù)言快取"("oracle cache")來進(jìn)行離線分析,其中"預(yù)言 快取"正如其名稱所暗示的是對(duì)未來的預(yù)測(cè)。在快取內(nèi)存有限的空間里,預(yù)言快取知道在任 何時(shí)間點(diǎn)都應(yīng)該在快取內(nèi)存中的存在最有用的數(shù)據(jù)。預(yù)言快取可以被概念化為快取內(nèi)容的 逐周期(cycle-by-cycle)或逐指令(instruction-by-instruction)快照(snapshot),以產(chǎn) 生最尚命中率。
[0232] 首先,為程序執(zhí)行(program execution)生成一系列的(sequence)預(yù)言內(nèi)存快照 (oracle cache snapshot)和持續(xù)追蹤內(nèi)存訪問的MAT,所述內(nèi)存訪問係在所述快照里產(chǎn)生 快取線的分配者。然后,為每一個(gè)所述快照產(chǎn)生圓形分格統(tǒng)計(jì)圖表(pie chart)。其中,對(duì)于 每個(gè)MAT或MAT群組來說,所述圓形分格統(tǒng)計(jì)圖表示出快取內(nèi)存被快取線占據(jù)的百分比,所 述快取線因應(yīng)于MAT的內(nèi)存訪問而被分配,其中的一個(gè)例子示于圖38。然后,在所述程序的 后續(xù)執(zhí)行中,處理器不斷利用一系列的圓形分格統(tǒng)計(jì)圖表所示的MAT百分比來重新分配 (re-budget)快取(或分路、集合群組、組塊、包裹、閾值、MAT優(yōu)先級(jí),等等)。
[0233] 當(dāng)重新規(guī)劃細(xì)致到頻率周期(clock cycle)或指令是不切實(shí)際的情形時(shí),可傾向 以更長(zhǎng)的持續(xù)時(shí)間來檢視圓形分格統(tǒng)計(jì)圖表系列,例如,完整的程序或程序階段。然后,為 每一個(gè)MAT算出所有圓形分格統(tǒng)計(jì)圖表系列(程序或程序階段)的平均值以根據(jù)平均圓形分 格統(tǒng)計(jì)圖表作分配。
[0234] 從廣義上說,預(yù)言快取的想法是因?yàn)轭A(yù)先知道所有的內(nèi)存訪問,預(yù)言快取可以預(yù) 先執(zhí)行(pre-execute)所有的內(nèi)存訪問。然后隨著程序的執(zhí)行,預(yù)言快取預(yù)測(cè)出在任何特定 的時(shí)間點(diǎn)里快取中最好的快取線集合。舉例來說,在圖35中,預(yù)言快取將預(yù)測(cè)出MAT 1的短 持續(xù)時(shí)間快取線(上面數(shù)來第二條實(shí)線)在其最后被訪問后將不會(huì)再被快取。使用這樣的分 析,可在每個(gè)MAT為基礎(chǔ)之上得出對(duì)快取分配和替換策略的觀察。
[0235] 請(qǐng)參照?qǐng)D34,其所繪示為用于程序和程序階段的一映像其生成流程圖。所述流程 開始于方塊3402。
[0236]在方塊3402中,設(shè)計(jì)者,優(yōu)選地以自動(dòng)方式,運(yùn)行程序且記錄由程序所生成并對(duì)快 取內(nèi)存122,例如由程序所生成之對(duì)102、1002、1402、1502、1702、1902、2302、3102訪問的內(nèi) 存訪問122。優(yōu)選地,快取線的分配、命中和引退(eviction)被紀(jì)錄下來。內(nèi)存訪問122的內(nèi) 存地址、MAT 101和時(shí)間(例如,相對(duì)時(shí)序周期)被紀(jì)錄下來。所述流程接著進(jìn)行至方塊3404。 [0237]在方塊3404中,設(shè)計(jì)者,優(yōu)選地以自動(dòng)方式,定時(shí)地分析記錄在方塊3402的信息以 及識(shí)別出明顯的趨勢(shì)以將程序分離成不同階段,其相關(guān)說明請(qǐng)參照?qǐng)D36。舉例來說,所述明 顯的趨勢(shì)例如是識(shí)別MAT 101的工作集合尺寸(working set size)、MAT 101的平均快取線 壽命(average cache line lifetime)、MAT 101的平均命中率。所述流程接著進(jìn)行至方塊 3406 〇
[0238]在方塊3406中,設(shè)計(jì)者,優(yōu)選地以自動(dòng)方式,基于在方塊3404所進(jìn)行的分析為不同 的程序階段來建立(create)映像或配置。舉例來說,所述映像或配置是利用分路的快取分 配映射(cache budget mapping),例如,圖2的108;利用集合群組的快取分配映像,例如,圖 10、14或15的1008;利用組塊的快取分配映像,例如,圖15或17的1508或1708;支持異構(gòu)替換 策略的快取分配映像,例如,圖19-22E的1908;基于MAT的條目分配閾值(MAT-based entry allocation threshold),例如,圖23-24的2308;MAT至MAT群組和MAT群組至閾值的映像,例 如,圖29的2908;和MAT優(yōu)先級(jí)映像,例如,圖31-32的3108。在一實(shí)施例中,所述用于判定映 像或配置的分析可以包括類似于圖35-38所描述的分析。此處應(yīng)當(dāng)理解的是,一些程序可能 不會(huì)表現(xiàn)出明顯的趨勢(shì),使得它們?cè)诒环纸獬刹煌碾A段有不良影響,在這種情況下,單一 的映像或配置對(duì)整個(gè)程序來說已是足夠的。所述流程結(jié)束于方塊3406。
[0239]請(qǐng)參照?qǐng)D35,其所繪示為一快取訪問圖形和從此圖形提取的數(shù)據(jù)示意圖。所述圖 形之內(nèi)存訪問由點(diǎn)(dot)來表示。在圖中,水平軸為時(shí)間,其為獨(dú)立變量(independent variable);而縱軸為內(nèi)存地址,其為因變量(dependent variable)。在指定的內(nèi)存地址,水 平線對(duì)應(yīng)于個(gè)別的快取線。線的左邊緣表示快取線的分配,而線的右邊緣表示快取線從快 取內(nèi)存中被引退。每一個(gè)快取線有一個(gè)相關(guān)聯(lián)的MAT,即如圖35所示的MAT 1,MAT 2,MAT 3 和MAT 4.。在圖35的例子中示出了6條快取線,其中兩個(gè)具有關(guān)聯(lián)的MAT 1,兩個(gè)具有關(guān)聯(lián)的 MAT 2, 一個(gè)具有關(guān)聯(lián)的MAT 3,以及一個(gè)具有關(guān)聯(lián)的MAT 4。
[0240]在圖形下方所示出的是八個(gè)具一定間隔的時(shí)間間隔,總的工作集合尺寸(total working set size)和相應(yīng)于每一個(gè)MAT的工作集合尺寸。所述時(shí)間間隔可以是與基本塊傳 輸(basic block transfer)相關(guān)(其相關(guān)說明請(qǐng)參照?qǐng)D36)和用于為每一個(gè)程序階段來判 定其程序階段和配置或者映像。舉例來說,在一特定的程序或階段期間,其配置或映像可根 據(jù)具有相對(duì)較大工作組尺寸的MAT而分配更多的分路,集合群組,組塊,或包裹;或者根據(jù)具 有相對(duì)較小工作組尺寸的MAT而分配更少的分路;或者至少將工作集合尺寸列入考慮,如圖 35每個(gè)MAT所示。
[0241 ]另外,從圖35的圖形中亦可觀察出每個(gè)個(gè)別的MAT其快取線其有用的長(zhǎng)度,例如平 均快取線壽命。平均快取線壽命可依據(jù)在程序階段之個(gè)別MAT中,計(jì)算所有快取線其壽命 (從分配到引退)的總合除以快取線的數(shù)目之值。這個(gè)信息可以被用來影響快取內(nèi)存的替換 策略。
[0242] 如果預(yù)言快取所預(yù)測(cè)被快取的線其數(shù)目可以對(duì)應(yīng)于集合和分路其在快取內(nèi)存中 的預(yù)期數(shù)目,則快取分配與平均壽命觀測(cè)的準(zhǔn)確性可能會(huì)增加。其它指標(biāo)也可以被收集,例 如每一 MAT的快取線命中情形。
[0243] 請(qǐng)參照?qǐng)D36,其所繪示為一程序其階段分析之流程圖。所述階段分析是離線分析 的一種形式,其可用于判定處理器的可配置方面(例如,其快取內(nèi)存或預(yù)取器)其好的配置 或映像。所述流程開始于方塊3602。
[0244]在方塊3602中,一程序其欲藉由處理器來改善其性能。首先,所述程序被進(jìn)行分析 且被分解以生成狀態(tài)圖(state diagram)。狀態(tài)圖的節(jié)點(diǎn)(node)是所述程序的基本塊 (basic block)?;緣K是過程控制指令(program control
當(dāng)前第5頁(yè)1 2 3 4 5 6 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1