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

多模式數(shù)據(jù)預(yù)取裝置及其管理方法

文檔序號(hào):6402159閱讀:202來(lái)源:國(guó)知局
專利名稱:多模式數(shù)據(jù)預(yù)取裝置及其管理方法
技術(shù)領(lǐng)域
本發(fā)明涉及嵌入式處理器存儲(chǔ)系統(tǒng)的性能優(yōu)化領(lǐng)域,具體為一種多模式數(shù)據(jù)預(yù)取
裝置及其管理方法。
背景技術(shù)
隨著嵌入式處理器微體系結(jié)構(gòu)技術(shù)的不斷發(fā)展和生產(chǎn)工藝的不斷改進(jìn),當(dāng)今嵌入式處理器的最高頻率已經(jīng)突破了 1.5GHz,處理速度得到了大幅地提升。與此同時(shí),以DRAM為代表的存儲(chǔ)器訪問速度的提升卻十分緩慢,近30年間只提高了不到10倍,從而形成了制約處理器性能的“存儲(chǔ)墻”現(xiàn)象。為此,國(guó)內(nèi)外研究人員都致力于尋找提高處理器存儲(chǔ)系統(tǒng)性能的方法。其中一種可行的方法是采用多層次的存儲(chǔ)結(jié)構(gòu)和大容量的片上存儲(chǔ)空間,降低訪問片外存儲(chǔ)器的次數(shù);另一種是采用數(shù)據(jù)預(yù)取機(jī)制,將數(shù)據(jù)提前預(yù)取到高速緩存(cache)中。數(shù)據(jù)預(yù)取通過不同的方法預(yù)測(cè)訪存地址,適當(dāng)提前地發(fā)起訪存操作。相比增大片上cache的層次和容量,數(shù)據(jù)預(yù)取能以較小的硬件開銷有效地隱藏處理器的訪存時(shí)延,從而提高存儲(chǔ)系統(tǒng)的性能。不同的應(yīng)用程序擁有不同的數(shù)據(jù)結(jié)構(gòu),研究人員根據(jù)這些數(shù)據(jù)間的不同相關(guān)性提出了很多預(yù)取的算法。其中,流預(yù)取機(jī)制針對(duì)流式數(shù)據(jù)結(jié)構(gòu)訪問特征設(shè)計(jì),是一種已被工業(yè)界驗(yàn)證的成熟、高效的預(yù)取機(jī)制,已經(jīng)被運(yùn)用于許多現(xiàn)代高性能微處理器。但是,高速緩存(cache)缺失并不都是訪問流式數(shù)據(jù)結(jié)構(gòu)造成的,鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu)(如鏈表或者樹等)就是其中常見的一種。所以,為了很好地預(yù)取鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu),我們還需要重新設(shè)計(jì)針對(duì)鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu)訪問特征的預(yù)取引擎。因此,單一的預(yù)取機(jī)制很難充分挖掘程序中的數(shù)據(jù)訪問特征,以適用于不同應(yīng)用背景。為處理器添加多個(gè)預(yù)取引擎組成多模式預(yù)取系統(tǒng),其中每個(gè)預(yù)取引擎分別針對(duì)一種數(shù)據(jù)結(jié)構(gòu)的訪問特征進(jìn)行優(yōu)化,是解決上述問題的一種有效途徑。然而,為嵌入式處理器設(shè)計(jì)多模式預(yù)取系統(tǒng)需要考慮很多因素:一方面,嵌入式處理器本身結(jié)構(gòu)相對(duì)簡(jiǎn)單,在預(yù)取引擎設(shè)計(jì)以及預(yù)取過程控制上要充分考慮到硬件和功耗的開銷;另一方面,簡(jiǎn)單地通過堆疊預(yù)取引擎并不能達(dá)到我們的目的,不同的預(yù)取引擎之間會(huì)因?yàn)閮?nèi)存和高速緩存(cache)有 限的資源造成競(jìng)爭(zhēng),如果這樣的競(jìng)爭(zhēng)沒有被有效地管理,不僅會(huì)造成內(nèi)存帶寬的浪費(fèi),還會(huì)延遲對(duì)正常訪存請(qǐng)求的響應(yīng),從而降低處理器整體的性能,增加功耗。

發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種對(duì)處理器存儲(chǔ)系統(tǒng)進(jìn)行優(yōu)化的多模式數(shù)據(jù)預(yù)取裝置及其管理方法。為了解決上述技術(shù)問題,本發(fā)明提供一種多模式數(shù)據(jù)預(yù)取裝置及其管理方法,多模式數(shù)據(jù)預(yù)取裝置包括處理器內(nèi)核、數(shù)據(jù)高速緩存、內(nèi)存和多模式預(yù)取系統(tǒng);所述多模式預(yù)取系統(tǒng)包括軟件性能監(jiān)視器和硬件預(yù)取系統(tǒng)裝置;所述軟件性能監(jiān)視器通過軟硬件接口實(shí)現(xiàn)與硬件預(yù)取系統(tǒng)信息的交互。
作為對(duì)多模式數(shù)據(jù)預(yù)取裝置的改進(jìn):軟件性能監(jiān)視器包括采樣模塊、計(jì)算模塊和判決模塊;硬件預(yù)取系統(tǒng)包括性能計(jì)數(shù)器、預(yù)取緩沖、最近最少使用狀態(tài)更新模塊、切換控制器、流預(yù)取引擎、指針預(yù)取引擎、預(yù)取請(qǐng)求過濾器和偏移地址表;數(shù)據(jù)高速緩存分別與處理器內(nèi)核、最近最少使用狀態(tài)更新模塊和內(nèi)存信號(hào)連接,內(nèi)存還與流預(yù)取引擎信號(hào)連接,內(nèi)存還通過預(yù)取請(qǐng)求過濾器與指針預(yù)取引擎信號(hào)連接;預(yù)取緩沖分別與最近最少使用狀態(tài)更新模塊、流預(yù)取引擎、指針預(yù)取引擎和處理器內(nèi)核信號(hào)連接;性能計(jì)數(shù)器分別與處理器內(nèi)核和軟硬件接口信號(hào)連接,軟硬件接口還與切換控制器信號(hào)連接;偏移地址表與預(yù)取請(qǐng)求過濾器信號(hào)連接。一種多模式數(shù)據(jù)預(yù)取管理方法:包含以下步驟:a、通過硬件性能計(jì)數(shù)器統(tǒng)計(jì)處理器內(nèi)核的實(shí)時(shí)運(yùn)行信息;b、通過軟件性能監(jiān)視器讀取統(tǒng)計(jì)信息,并計(jì)算獲得衡量當(dāng)前預(yù)取系統(tǒng)工作模式效率 的參數(shù),并作出切換判決、在指針預(yù)取工作模式下,通過基于偏移地址的過濾機(jī)制防止過多無(wú)效預(yù)?。籨、預(yù)取數(shù)據(jù)暫時(shí)存放于預(yù)取緩沖,等待高速緩存端口空閑時(shí)重填入數(shù)據(jù)高速緩存;e、通過分類的高速緩存替換機(jī)制降低無(wú)效預(yù)取數(shù)據(jù)對(duì)數(shù)據(jù)高速緩存的污染。作為對(duì)一種多模式數(shù)據(jù)預(yù)取管理方法的改進(jìn);所述內(nèi)容a中性能計(jì)數(shù)器分別統(tǒng)計(jì)的處理器內(nèi)核的實(shí)時(shí)運(yùn)行信息包括有處理器有效預(yù)取數(shù)量、總預(yù)取數(shù)量、讀取指令數(shù)量和高速緩存讀取缺失數(shù)量。作為對(duì)一種多模式數(shù)據(jù)預(yù)取管理方法的進(jìn)一步改進(jìn);所述內(nèi)容b中軟件監(jiān)視器的采樣模塊等時(shí)間間隔地讀取性能計(jì)數(shù)器的統(tǒng)計(jì)信息,完成讀取后將性能計(jì)數(shù)器的統(tǒng)計(jì)信息清零;由計(jì)算模塊對(duì)統(tǒng)計(jì)信息進(jìn)行獲得的判決參數(shù)計(jì)算;所述判決參數(shù)包括預(yù)取準(zhǔn)確率、預(yù)取覆蓋率和高速緩存缺失率;通過判決模塊進(jìn)行工作模式判決;所述工作模式包括流預(yù)取模式、指針預(yù)取模式以及無(wú)預(yù)取模式。作為對(duì)一種多模式數(shù)據(jù)預(yù)取管理方法的進(jìn)一步改進(jìn);所述內(nèi)容c中過濾機(jī)制對(duì)缺失數(shù)據(jù)進(jìn)行地址預(yù)測(cè),指針預(yù)取引擎將預(yù)測(cè)結(jié)果存入偏移地址表,指針預(yù)取引擎根據(jù)偏移地址表中的記錄信息計(jì)算預(yù)取地址發(fā)起預(yù)取請(qǐng)求。作為對(duì)一種多模式數(shù)據(jù)預(yù)取管理方法的進(jìn)一步改進(jìn);所述內(nèi)容d中的預(yù)取緩沖用于存放一次預(yù)取獲得的所有數(shù)據(jù),以32位為一項(xiàng),每一項(xiàng)設(shè)置I位的有效位;當(dāng)預(yù)取數(shù)據(jù)寫入預(yù)取緩沖時(shí),對(duì)應(yīng)項(xiàng)的有效位為1,當(dāng)預(yù)取數(shù)據(jù)重填入數(shù)據(jù)高速緩存后,對(duì)應(yīng)項(xiàng)的有效位為O。作為對(duì)一種多模式數(shù)據(jù)預(yù)取管理方法的進(jìn)一步改進(jìn);所述內(nèi)容e中分類的高速緩存替換機(jī)制根據(jù)替換數(shù)據(jù)種類具體分為兩種處理方法:A、當(dāng)替換數(shù)據(jù)為普通訪存數(shù)據(jù),按照普通最近最少使用機(jī)制替換高速緩存中相應(yīng)位置數(shù)據(jù),并更新最近最少使用狀態(tài)編碼;
B、當(dāng)替換數(shù)據(jù)為預(yù)取數(shù)據(jù),替換對(duì)應(yīng)位置數(shù)據(jù),并不馬上更新最近最少使用狀態(tài)編碼,直到預(yù)取數(shù)據(jù)被再次訪問之后修改最近最少使用狀態(tài)編碼。本發(fā)明的多模式數(shù)據(jù)預(yù)取裝置及其管理方法可以根據(jù)當(dāng)前應(yīng)用特性,自適應(yīng)地在流預(yù)取模式、指針預(yù)取模式和無(wú)預(yù)取模式這三種工作狀態(tài)下切換,對(duì)處理器存儲(chǔ)系統(tǒng)進(jìn)行優(yōu)化,兼顧性能和功耗方面的平衡。本發(fā)明的多模式數(shù)據(jù)預(yù)取系統(tǒng)通過對(duì)指針預(yù)取的過濾,可以降低無(wú)效預(yù)取的比例,節(jié)省處理器總線帶寬資源。本發(fā)明的多模式數(shù)據(jù)預(yù)取系統(tǒng)通過對(duì)高速緩存替換機(jī)制的改進(jìn),還可以降低無(wú)效預(yù)取對(duì)高速緩存的污染。


圖1為本發(fā)明的多模式數(shù)據(jù)預(yù)取裝置及其管理方法的系統(tǒng)結(jié)構(gòu) 圖2為本發(fā)明的多模式數(shù)據(jù)預(yù)取裝置及其管理方法的切換算法的一種實(shí)施方法;
圖3為本發(fā)明的多模式數(shù)據(jù)預(yù)取裝置及其管理方法的過濾機(jī)制的一種實(shí)施方法,即當(dāng)前缺失數(shù)據(jù)為地址時(shí)的過濾方法;
圖4為本發(fā)明的多模式數(shù)據(jù)預(yù)取裝置及其管理方法的過濾機(jī)制的另一種實(shí)施方法,即當(dāng)前缺失數(shù)據(jù)為普通數(shù)據(jù)時(shí)的過濾方法;
圖5為本發(fā)明的多模式數(shù)據(jù)預(yù)取裝置及其管理方法的預(yù)取緩沖裝置的結(jié)構(gòu)圖。
具體實(shí)施例方式實(shí)施例1、圖1給出一種多模式數(shù)據(jù)預(yù)取裝置及其管理方法;多模式數(shù)據(jù)預(yù)取裝置(多模式數(shù)據(jù)預(yù)取裝置作用于處理器存儲(chǔ)子系統(tǒng))包括處理器內(nèi)核101、數(shù)據(jù)高速緩存102、內(nèi)存103和多模式預(yù)取系統(tǒng)203 ;多模式預(yù)取系統(tǒng)203包括軟件性能監(jiān)視器201和硬件預(yù)取系統(tǒng)裝置202。軟件性能監(jiān)視器201包括采樣模塊121、計(jì)算模塊122和判決模塊123,硬件預(yù)取系統(tǒng)202包括性能計(jì)數(shù)器110 (用于統(tǒng)計(jì)處理器內(nèi)核101的運(yùn)行信息)、預(yù)取緩沖111 (用于暫時(shí)存放預(yù)取數(shù)據(jù))、最近最少使用狀態(tài)更新模塊112 (用于支持改進(jìn)的高速緩存更新機(jī)制)、切換控制器116 (用于控制預(yù)取系統(tǒng)工作模式)、流預(yù)取引擎113 (用于提供流預(yù)取工作模式)、指針預(yù)取引擎114 (用于提供指針預(yù)取工作模式)、預(yù)取請(qǐng)求過濾器115 (用于過濾指針預(yù)取發(fā)起請(qǐng)求)和偏移地址表117 (用于記錄指針預(yù)取地址預(yù)測(cè)信息)。切換控制器116通過控制流預(yù)取引擎113和指針預(yù)取引擎114的開關(guān)狀態(tài)提供三種多模式預(yù)取系統(tǒng)(流預(yù)取模式、指針預(yù)取模式以及無(wú)預(yù)取模式)的工作狀態(tài)。軟件性能監(jiān)視器201通過軟硬件接口 104實(shí)現(xiàn)與硬件預(yù)取系統(tǒng)202信息的交互;數(shù)據(jù)高速緩存102分別與處理器內(nèi)核101、最近最少使用狀態(tài)更新模塊112和內(nèi)存103信號(hào)連接,內(nèi)存103還與流預(yù)取引擎113和指針預(yù)取引擎114(內(nèi)存103通過預(yù)取請(qǐng)求過濾器115與指針預(yù)取引擎114信號(hào)連接)信號(hào)連接;預(yù)取緩沖111分別與最近最少使用狀態(tài)更新模塊112、流預(yù)取引擎113、指針預(yù)取引擎114和處理器內(nèi)核101信號(hào)連接;性能計(jì)數(shù)器110分別與處理器內(nèi)核101和軟硬件接口 104信號(hào)連接,軟硬件接口 104還與切換控制器116信號(hào)連接;偏移地址表117與預(yù)取請(qǐng)求過濾器115信號(hào)連接。通過以上所述的多模式數(shù)據(jù)預(yù)取裝置可以實(shí)現(xiàn)本發(fā)明的多模式數(shù)據(jù)預(yù)取管理方法,具體如下:
1、處理器運(yùn)行信息統(tǒng)計(jì):
通過硬件性能計(jì)數(shù)器110統(tǒng)計(jì)處理器內(nèi)核101的實(shí)時(shí)運(yùn)行信息;硬件性能計(jì)數(shù)器110具體包括有效預(yù)取數(shù)量計(jì)數(shù)器、總預(yù)取數(shù)量計(jì)數(shù)器、讀取指令數(shù)量計(jì)數(shù)器和高速緩存讀取缺失數(shù)量計(jì)數(shù)器;分別通過有效預(yù)取數(shù)量計(jì)數(shù)器、總預(yù)取數(shù)量計(jì)數(shù)器、讀取指令數(shù)量計(jì)數(shù)器和高速緩存讀取缺失數(shù)量計(jì)數(shù)器可以讀取處理器內(nèi)核101的有效預(yù)取數(shù)量、總預(yù)取數(shù)量、讀取指令數(shù)量以及高速 緩存讀取缺失數(shù)量。2、軟件性能監(jiān)視器:軟件性能監(jiān)視器201的組件中,采樣模塊121通過軟硬件接口 104等時(shí)間間隔地讀取性能計(jì)數(shù)器110的統(tǒng)計(jì)結(jié)果;采樣模塊121每次對(duì)性能計(jì)數(shù)器110的數(shù)據(jù)讀取結(jié)束后,對(duì)性能計(jì)數(shù)器110的四個(gè)計(jì)數(shù)器(即有效預(yù)取數(shù)量計(jì)數(shù)器、總預(yù)取數(shù)量計(jì)數(shù)器、讀取指令數(shù)量計(jì)數(shù)器和高速緩存讀取缺失數(shù)量計(jì)數(shù)器)進(jìn)行清零。軟件性能監(jiān)視器201的組件中,計(jì)算模塊122根據(jù)采樣模塊121讀取的統(tǒng)計(jì)值計(jì)
算判決參數(shù)。判決參數(shù)用于衡量當(dāng)前多模式數(shù)據(jù)預(yù)取裝置的工作模式下的工作效率,包括預(yù)取準(zhǔn)確率、預(yù)取覆蓋率和高速緩存缺失率,其計(jì)算公式如表I所示:
__
#數(shù)I公式
爾敢準(zhǔn)確率有效預(yù)取數(shù)量+總預(yù)取數(shù)量
預(yù)取覆蓋率有效預(yù)取數(shù)量+ (高速緩存讀取缺失數(shù)量+有效預(yù)取數(shù)量)_
面I緩存缺失率I高速緩存讀取缺失數(shù)量+讀取指令數(shù)量
軟件性能監(jiān)視器201的組件之一判決模塊123根據(jù)以上所述的三個(gè)判決參數(shù)做出對(duì)多模式數(shù)據(jù)預(yù)取裝置的工作模式的判決。以圖2為例,描述一種切換算法的實(shí)施方法:
a、多模式預(yù)取系統(tǒng)的初始工作模式為流預(yù)取模式;
b、當(dāng)工作模式為流預(yù)取模式時(shí),經(jīng)過一個(gè)采樣間隔,如果此時(shí)流預(yù)取的預(yù)取準(zhǔn)確率低于準(zhǔn)確率的閾值(Tacc )或者 預(yù)取覆蓋率低于覆蓋率的閾值(Tcov),那么我們認(rèn)為當(dāng)前的數(shù)據(jù)格式不適用于流預(yù)取引擎,將預(yù)取模式切換為指針預(yù)取(如圖2所述過程306);如果預(yù)取準(zhǔn)確率高于準(zhǔn)確率的閾值和預(yù)取覆蓋率高于覆蓋率的閾值),我們認(rèn)為當(dāng)前的預(yù)取模式工作良好,不作任何操作(如圖2所述過程305);
C、當(dāng)工作模式為指針預(yù)取時(shí),如果此時(shí)指針預(yù)取的預(yù)取準(zhǔn)確率低于準(zhǔn)確率的閾值(Tacc)或者預(yù)取覆蓋率低于覆蓋率的閾值(Tcov),則再切換回流預(yù)取模式(如圖2所述過程307);如果預(yù)取準(zhǔn)確率高于準(zhǔn)確率的閾值和預(yù)取覆蓋率高于覆蓋率的閾值,同樣不作任何操作(如圖2所述過程308);
d、如果流預(yù)取和指針預(yù)取均不能取得很好的效果,預(yù)取的工作模式將反復(fù)地在流預(yù)取和指針預(yù)取進(jìn)行切換,當(dāng)判決模塊123記錄的切換計(jì)數(shù)(切換計(jì)數(shù)即預(yù)取的工作模式反復(fù)地在流預(yù)取和指針預(yù)取進(jìn)行切換的次數(shù))大于切換閾值(Nswitch)時(shí),我們認(rèn)為此時(shí)的數(shù)據(jù)結(jié)構(gòu)不適用于任何預(yù)取,判決模塊123將通過軟硬件接口 104通知切換控制器116將流預(yù)取引擎113和指針預(yù)取引擎114關(guān)閉,進(jìn)入無(wú)預(yù)取模式(如圖2所述過程304和302)。發(fā)生這樣的切換,很有可能是因?yàn)楫?dāng)前的高速緩存缺失率很低,預(yù)取引擎(即流預(yù)取引擎113或者指針預(yù)取引擎114)難以發(fā)揮效果。隨著程序的繼續(xù)執(zhí)行,高速緩存缺失率會(huì)發(fā)生變化,當(dāng)高速緩存缺失率大于缺失率閾值(Tmiss),判決模塊123會(huì)嘗試再次啟動(dòng)流預(yù)取(如圖2所述過程303),而如果缺失率一直保持在一個(gè)較低的水平,那么處理器也將保持無(wú)預(yù)取的工作模式(如圖2所述過程301)。以上所述的判決門限(即準(zhǔn)確率的閾值Tacc、覆蓋率的閾值Tcov、切換閾值Nswitch和缺失率閾值Tmiss)可以人為在判決模塊123內(nèi)設(shè)置或通過某種動(dòng)態(tài)學(xué)習(xí)的方法自適應(yīng)調(diào)整。表2為本實(shí)施例中設(shè)置的門限值。表權(quán)利要求
1.多模式數(shù)據(jù)預(yù)取裝置,其特征是:包括處理器內(nèi)核(101)、數(shù)據(jù)高速緩存(102)、內(nèi)存(103)和多模式預(yù)取系統(tǒng)(203);所述多模式預(yù)取系統(tǒng)(203)包括軟件性能監(jiān)視器(201)和硬件預(yù)取系統(tǒng)裝置(202); 所述軟件性能監(jiān)視器(201)通過軟硬件接口(104)實(shí)現(xiàn)與硬件預(yù)取系統(tǒng)(202)信息的交互。
2.根據(jù)權(quán)利要求1所述的多模式數(shù)據(jù)預(yù)取裝置,其特征是:軟件性能監(jiān)視器(201)包括采樣模塊(121)、計(jì)算模塊(122 )和判決模塊(123); 硬件預(yù)取系統(tǒng)(202)包括性能計(jì)數(shù)器(110)、預(yù)取緩沖(111)、最近最少使用狀態(tài)更新模塊(112)、切換控制器(116)、流預(yù)取引擎(113)、指針預(yù)取引擎(114)、預(yù)取請(qǐng)求過濾器(115)和偏移地址表(117); 數(shù)據(jù)高速緩存(102)分別與處理器內(nèi)核(101)、最近最少使用狀態(tài)更新模塊(112)和內(nèi)存(103)信號(hào)連接,內(nèi)存(103)還與流預(yù)取引擎(113)信號(hào)連接,內(nèi)存(103)還通過預(yù)取請(qǐng)求過濾器(115)與指針預(yù)取引擎(114)信號(hào)連接;預(yù)取緩沖(111)分別與最近最少使用狀態(tài)更新模塊(112)、流預(yù)取引擎(113)、指針預(yù)取引擎(114)和處理器內(nèi)核(101)信號(hào)連接;性能計(jì)數(shù)器(110)分別與處理器內(nèi)核(101)和軟硬件接口( 104)信號(hào)連接,軟硬件接口( 104)還與切換控制器(I 16)信號(hào)連接;偏移地址表(I 17)與預(yù)取請(qǐng)求過濾器(I 15)信號(hào)連接。
3.多模式數(shù)據(jù)預(yù)取管理方法;其特征是:包含以下步驟: a、通過硬件性能計(jì)數(shù)器(110)統(tǒng)計(jì)處理器內(nèi)核(101)的實(shí)時(shí)運(yùn)行信息; b、通過軟件性能監(jiān)視器(201)讀取統(tǒng)計(jì)信息,并計(jì)算獲得衡量當(dāng)前預(yù)取系統(tǒng)工作模式效率的參數(shù),并作出切換判決; C、在指針預(yù)取工作模式下,通過基于偏移地址的過濾機(jī)制防止過多無(wú)效預(yù)??; d、預(yù)取數(shù)據(jù)暫時(shí)存放于預(yù)取緩沖(111),等待高速緩存端口空閑時(shí)重填入數(shù)據(jù)高速緩存(102); e、通過分類的高速緩存替換機(jī)制降低無(wú)效預(yù)取數(shù)據(jù)對(duì)數(shù)據(jù)高速緩存(102)的污染。
4.根據(jù)權(quán)利要求3所述的多模式數(shù)據(jù)預(yù)取管理方法;其特征是:所述內(nèi)容a中性能計(jì)數(shù)器(110)分別統(tǒng)計(jì)的處理器內(nèi)核(101)的實(shí)時(shí)運(yùn)行信息包括有處理器有效預(yù)取數(shù)量、總預(yù)取數(shù)量、讀取指令數(shù)量和高速緩存讀取缺失數(shù)量。
5.根據(jù)權(quán)利要求4所述的多模式數(shù)據(jù)預(yù)取管理方法;其特征是:所述內(nèi)容b中軟件監(jiān)視器(201)的采樣模塊(121)等時(shí)間間隔地讀取性能計(jì)數(shù)器(110)的統(tǒng)計(jì)信息,完成讀取后將性能計(jì)數(shù)器(I 10)的統(tǒng)計(jì)信息清零; 由計(jì)算模塊(122)對(duì)統(tǒng)計(jì)信息進(jìn)行獲得的判決參數(shù)計(jì)算;所述判決參數(shù)包括預(yù)取準(zhǔn)確率、預(yù)取覆蓋率和高速緩存缺失率; 通過判決模塊(123)進(jìn)行工作模式判決;所述工作模式包括流預(yù)取模式、指針預(yù)取模式以及無(wú)預(yù)取模式。
6.根據(jù)權(quán)利要求5所述的多模式數(shù)據(jù)預(yù)取管理方法;其特征是:所述內(nèi)容c中過濾機(jī)制對(duì)缺失數(shù)據(jù)進(jìn)行地址預(yù)測(cè),指針預(yù)取引擎(114)將預(yù)測(cè)結(jié)果存入偏移地址表(117),指針預(yù)取引擎(114)根據(jù)偏移地址表(117)中的記錄信息計(jì)算預(yù)取地址發(fā)起預(yù)取請(qǐng)求。
7.根據(jù)權(quán)利要求6所述的多模式數(shù)據(jù)預(yù)取管理方法;其特征是:所述內(nèi)容d中的預(yù)取緩沖(111)用于存放一次預(yù)取獲得的所有數(shù)據(jù),以32位為一項(xiàng),每一項(xiàng)設(shè)置I位的有效位;當(dāng)預(yù)取數(shù)據(jù)寫入預(yù)取緩沖(111)時(shí),對(duì)應(yīng)項(xiàng)的有效位為1,當(dāng)預(yù)取數(shù)據(jù)重填入數(shù)據(jù)高速緩存(102)后,對(duì)應(yīng)項(xiàng)的有效位為O。
8.根據(jù)權(quán)利要求7所述的多模式數(shù)據(jù)預(yù)取管理方法;其特征是:所述內(nèi)容e中分類的高速緩存替換機(jī)制根據(jù)替換數(shù)據(jù)種類具體分為兩種處理方法: A、當(dāng)替換數(shù)據(jù)為普通訪存數(shù)據(jù),按照普通最近最少使用機(jī)制替換高速緩存中相應(yīng)位置數(shù)據(jù),并更新最近最少使用狀態(tài)編碼; B、當(dāng)替換數(shù)據(jù)為預(yù)取數(shù)據(jù),替換對(duì)應(yīng)位置數(shù)據(jù),并不馬上更新最近最少使用狀態(tài)編碼,直到預(yù)取數(shù)據(jù)被再次訪 問之后修改最近最少使用狀態(tài)編碼。
全文摘要
本發(fā)明公開了一種多模式數(shù)據(jù)預(yù)取裝置,包括處理器內(nèi)核、數(shù)據(jù)高速緩存、內(nèi)存和多模式預(yù)取系統(tǒng);所述多模式預(yù)取系統(tǒng)包括軟件性能監(jiān)視器和硬件預(yù)取系統(tǒng)裝置;軟件性能監(jiān)視器包括采樣模塊等模塊;硬件預(yù)取系統(tǒng)包括性能計(jì)數(shù)器等模塊;數(shù)據(jù)高速緩存分別與處理器內(nèi)核、最近最少使用狀態(tài)更新模塊和內(nèi)存信號(hào)連接,內(nèi)存還與流預(yù)取引擎信號(hào)連接,內(nèi)存還通過預(yù)取請(qǐng)求過濾器與指針預(yù)取引擎信號(hào)連接;預(yù)取緩沖分別與最近最少使用狀態(tài)更新模塊、流預(yù)取引擎、指針預(yù)取引擎和處理器內(nèi)核信號(hào)連接;性能計(jì)數(shù)器分別與處理器內(nèi)核和軟硬件接口信號(hào)連接,軟硬件接口還與切換控制器信號(hào)連接;偏移地址表與預(yù)取請(qǐng)求過濾器信號(hào)連接。
文檔編號(hào)G06F12/08GK103226521SQ20131013480
公開日2013年7月31日 申請(qǐng)日期2013年4月18日 優(yōu)先權(quán)日2013年4月18日
發(fā)明者劉鵬, 劉勇, 辛愿 申請(qǐng)人:浙江大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1