999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于程序段的可重構(gòu)cache與處理器低能耗算法

2008-12-31 00:00:00彭蔓蔓李仁發(fā)王宇明

摘 要:運(yùn)用可重構(gòu)cache和動(dòng)態(tài)電壓縮放技術(shù),為處理器及其cache提出了一種基于程序段的自適應(yīng)低能耗算法PBLEA(phasebased low energy algorithm)。該算法使用建立在指令工作集簽名基礎(chǔ)上的程序段監(jiān)測(cè)狀態(tài)機(jī)來判斷程序段是否發(fā)生變化,并作出cache容量及CPU電壓和頻率的調(diào)整決定。在程序段內(nèi),使用容量調(diào)整狀態(tài)機(jī)和通過計(jì)算頻率縮放因子β來先后對(duì)cache容量及CPU電壓和頻率進(jìn)行調(diào)整。在Simpanalyzer模擬器上完成了該算法的實(shí)現(xiàn)。通過對(duì)MiBench測(cè)試程序集的測(cè)試表明:與傳統(tǒng)的cache和CPU相比較,該算法使系統(tǒng)能耗平均節(jié)省了49.1%,而平均性能損失為8.7%。

關(guān)鍵詞:可重構(gòu)高速緩沖存儲(chǔ)器;動(dòng)態(tài)電壓縮放;自適應(yīng)算法;運(yùn)行程序段;低能耗

中圖分類號(hào):TP303 文獻(xiàn)標(biāo)志碼:A

文章編號(hào):1001-3695(2008)09-2692-05

Phasebased lowenergy algorithm for reconfigurable cache and processor

PENG Manman,LI Renfa,PENG Fang,WANG Yuming

(School of Computer Communication, Hunan University, Changsha 410082, China)

Abstract:Utilizing the technology of reconfigurable cache and dynamic voltage scaling (DVS), this paper proposed a phasebased lowenergy algorithm (PBLEA) for cache and processor. The algorithm used a state machine based on instruction working set signature for identifying the change in program and making a decision to adjust cache’s size and processor’s supply voltage and clock frequency. In every runningprogram phase, the algorithm used a state machine for governing cache and determining cache’s size, and setting processor’s voltage and clock frequency by calculating the ratio of the total offchip access time to the total onchip computation time (β). The algorithm has been realized in the Simpanalyzer. By simulating numerous MiBench benchmarks, the results show that the algorithm saves on average 49.1% of total system energy compared with a conventional cache and CPU, then the average performance loss is close to 8.7%.

Key words:reconfigurable cache; dynamic voltage scaling(DVS); selftuning algorithm; runningprogram phase; low energy

在系統(tǒng)結(jié)構(gòu)設(shè)計(jì)中,能耗是與性能同等重要的首要設(shè)計(jì)約束。處理器及其cache(高速緩沖存儲(chǔ)器)是計(jì)算機(jī)系統(tǒng)能耗的主要來源,降低兩者的能耗是低能耗系統(tǒng)設(shè)計(jì)關(guān)注的焦點(diǎn)。動(dòng)態(tài)電壓縮放(DVS)技術(shù),允許CPU在工作時(shí)動(dòng)態(tài)地改變其時(shí)鐘頻率和供電電壓,能有效地減少處理器的能耗。可重構(gòu)cache[1]具有可變的配置參數(shù)集,可以在自適應(yīng)算法的指導(dǎo)下根據(jù)運(yùn)行程序的需求,通過關(guān)閉cache閑置未用的部分來調(diào)整容量,較大地提高能量效率。既然可重構(gòu)cache與DVS都能分別有效地降低cache和處理器的能耗,那么,能否結(jié)合兩者的特點(diǎn)使系統(tǒng)能耗進(jìn)一步減少是值得研究的問題。

本文針對(duì)可重構(gòu)cache和處理器電壓提出了一種基于程序段的自適應(yīng)算法PBLEA。該算法通過監(jiān)測(cè)指令工作集來判定程序段的變化,采用自適應(yīng)的方法動(dòng)態(tài)準(zhǔn)確地配置cache容量以及處理器電壓和頻率,以滿足不同程序段的資源需求。該算法能有效地降低cache和CPU的能耗。

1 PBLEA算法方案

PBLEA必須解決兩個(gè)問題:a)如何監(jiān)測(cè)程序運(yùn)行過程中的行為和性能信息,判斷運(yùn)行程序段是否變化;b)在程序段內(nèi)如何對(duì)cache容量及處理器電壓和頻率進(jìn)行動(dòng)態(tài)配置。

1.1 PBLEA算法的程序段監(jiān)測(cè)策略

運(yùn)行程序可以分為多個(gè)程序段,每個(gè)段內(nèi)指令工作集基本保持不變;而不同的程序段具有不同的指令工作集特征。若能準(zhǔn)確地判斷指令工作集的變化,則能準(zhǔn)確地推斷出運(yùn)行程序段的變化,有效地減少不必要的重構(gòu)及其帶來的性能損失[2]。

工作集簽名最早由Dhodapkar等人[3]提出。每個(gè)簽名包含了在100k指令間隔內(nèi)的指令工作集信息,其形成過程如圖1所示。指令工作集簽名是一個(gè)n位向量,向量每一位的值由程序計(jì)數(shù)器PC的值右移b位(b=log2m,m=ICache塊大小)得到。隨機(jī)哈希函數(shù)用來選擇向量位地址。若S1和S2代表相鄰間隔的兩個(gè)指令工作集簽名,則定義相對(duì)簽名距離為

Δ=|S1S2|/|S1+S2|(1)

其中:分子部分為兩個(gè)簽名的異或運(yùn)算;分母部分為兩個(gè)簽名的同或運(yùn)算。若Δ=1,則表明兩個(gè)簽名完全不同;而Δ=0,則表明兩個(gè)簽名完全相同。為了準(zhǔn)確地判斷運(yùn)行程序段的變化,定義了一個(gè)相對(duì)簽名距離閾值Δth。如果Δ≥Δth,則表明程序的運(yùn)行段發(fā)生了變化;否則表明程序段沒有改變。但一個(gè)合適的閾值可能隨著運(yùn)行程序段的不同而變化,因此,該閾值將隨程序運(yùn)行而自調(diào)整。由于cache的資源需求和處理器的工作負(fù)荷在同一程序段內(nèi)均不作明顯變化[3,4],PBLEA算法以程序段為單位對(duì)cache容量和處理器電壓進(jìn)行動(dòng)態(tài)調(diào)整。

PBLEA算法使用程序段監(jiān)測(cè)狀態(tài)機(jī)來判斷運(yùn)行程序段是否發(fā)生轉(zhuǎn)變。如圖2所示,該狀態(tài)機(jī)有工作集穩(wěn)定、工作集不穩(wěn)定、配置調(diào)整和閾值調(diào)整四種狀態(tài)。在工作集穩(wěn)定態(tài)下,程序的指令工作集特征保持不變。工作集不穩(wěn)定態(tài)由一系列指令工作集特征不相似的間隔組成。在該狀態(tài)機(jī)中,判定程序段是否發(fā)生變化的操作是在每一固定間隔末進(jìn)行的,所以不可避免在程序段的自然邊界與間隔邊界之間存在不匹配情況,工作集不穩(wěn)態(tài)正是這種不匹配情況的集中表現(xiàn)。在配置調(diào)整態(tài)下,該狀態(tài)機(jī)先后對(duì)cache容量及CPU的電壓和頻率進(jìn)行調(diào)整。由于不同程序的差別閾值是不同的,在閾值調(diào)整態(tài)下,程序段監(jiān)測(cè)狀態(tài)機(jī)對(duì)判定程序段是否變化的差別閾值進(jìn)行調(diào)整。

1.2 PBLEA算法的動(dòng)態(tài)配置策略

進(jìn)入程序段后,PBLEA算法首先使用容量調(diào)整狀態(tài)機(jī)對(duì)cache容量進(jìn)行調(diào)整。在找到最優(yōu)cache容量后,再統(tǒng)計(jì)cache容量固定后的CPU性能信息,從而對(duì)CPU的電壓和頻率進(jìn)行調(diào)整。

條件A:如果Δ<Δth,則表明運(yùn)行程序段未作改變,PBLEA保持在工作集穩(wěn)定態(tài),并監(jiān)測(cè)指令工作集的變化。

條件B:如果Δ<Δth,且cache的缺失數(shù)量持續(xù)大于一定的閾值,則表明Δth過大。PBLEA進(jìn)入閾值調(diào)整態(tài),對(duì)Δth進(jìn)行調(diào)整。

條件C:如果Δth被改變,則PBLEA進(jìn)入工作集穩(wěn)定態(tài) 。 

條件D:如果Δ≥Δth,則表明運(yùn)行程序段開始發(fā)生改變,PBLEA進(jìn)入工作集不穩(wěn)定態(tài),并監(jiān)測(cè)指令工作集的變化。

條件E:如果Δ≥Δth,且PBLEA保持在工作集不穩(wěn)態(tài)的持續(xù)間隔數(shù)小于5,則PBLEA算法繼續(xù)保持在工作集不穩(wěn)定態(tài),并監(jiān)測(cè)指令工作集的變化。

條件F:如果Δ≥Δth,且PBLEA保持在工作集不穩(wěn)態(tài)的持續(xù)間隔等于5,則表明Δth值過小,PBLEA進(jìn)入閾值調(diào)整態(tài),對(duì)Δth進(jìn)行調(diào)整。

條件G:如果Δ<Δth,則表明程序已經(jīng)進(jìn)入另一運(yùn)行程序段。PBLEA進(jìn)入配置調(diào)整態(tài),對(duì)目前的cache容量和CPU頻率進(jìn)行調(diào)整。

條件H:如果Δ≥Δth,則表明程序段可能發(fā)生變化,PBLEA進(jìn)入工作集不穩(wěn)定態(tài)。

條件I:如果Δ<Δth,且未找到該程序段的cache和CPU優(yōu)化配置,則PBLEA繼續(xù)尋找優(yōu)化配置。

條件J:如果Δ<Δth,且已找到該程序段的cache和CPU優(yōu)化配置,則PBLEA進(jìn)入工作集穩(wěn)定態(tài)。

1.2.1 Cache容量調(diào)整策略

為了在程序段變化后,根據(jù)程序段的動(dòng)態(tài)需求找到更優(yōu)的cache配置,PBLEA使用了如圖3所示的容量調(diào)整狀態(tài)機(jī)。

該狀態(tài)機(jī)有正常、小容量、大容量和容量重構(gòu)四種狀態(tài)。正常態(tài)下,cache容量保持不變;小容量態(tài)下,PBLEA將對(duì)目前容量的cache與更小容量的cache進(jìn)行性能比較(若目前cache的容量不為最小,則定義更小cache的容量為當(dāng)前容量的一半;否則轉(zhuǎn)到正常態(tài)),并決定是否對(duì)容量進(jìn)行調(diào)整。大容量態(tài)下,PBLEA將對(duì)目前容量的cache與更大容量的cache進(jìn)行性能比較(若目前cache的容量不為最大,則定義更大cache具有比目前相聯(lián)度多1的容量;否則轉(zhuǎn)到正常態(tài)),并決定是否對(duì)容量進(jìn)行調(diào)整。容量重構(gòu)態(tài)下,PBLEA算法將通過路關(guān)閉寄存器對(duì)目前的cache容量進(jìn)行調(diào)整。其參數(shù)配置如下:

a)訪問計(jì)數(shù)器accessnum(AN)。分為IAN和DAN兩個(gè)計(jì)數(shù)器,分別用來統(tǒng)計(jì)ICache和DCache在不同狀態(tài)下的訪問次數(shù)。

b)訪問邊界寄存器accessbound(AB)。分為IAB和DAB兩個(gè)寄存器,分別用來決定ICache和DCache在不同狀態(tài)下的最大訪問次數(shù);如果超出,則PBLEA進(jìn)入另一狀態(tài)。

c)連續(xù)失效計(jì)數(shù)器consecutivemissnum (CMN)。分為ICMN和DCMN,分別用來統(tǒng)計(jì)ICache和DCache在正常態(tài)下的連續(xù)失效次數(shù)。

d)連續(xù)失效邊界寄存器consecutivemissbound (CMB)。分為ICMB和DCMB,分別用來決定ICache和DCache在正常態(tài)下的最大連續(xù)失效次數(shù)。一定量的連續(xù)失效表明目前容量的cache不能滿足運(yùn)行程序段的需求,需要對(duì)容量進(jìn)行調(diào)整。

e)最近最少cache路命中計(jì)數(shù)器LRUwayhitnum (LWHN)。分ILWHN和DLWHN,分別用來統(tǒng)計(jì)ICache和DCache在小容量態(tài)下,最近最少兩路的命中次數(shù)。

f)最近最少cache路命中邊界寄存器LRUwayhit bound(LWHB)。分為ILWHB和DLWHB,分別用來決定ICache和DCache在小容量態(tài)下,最近最少訪問的兩路的最大命中次數(shù)。一定量的LRU路命中,表明如果關(guān)閉這兩路,將會(huì)造成cache失效率的明顯增加和性能的下降。

條件A:如果 IAN<IAB且ICMN

條件B:如果 IAN≥IAB且ICMN

條件C:如果IAN<IAB且ILWHN

條件D:如果ILWHN≥ILWHB,表明減少容量后會(huì)造成ICache性能的明顯下降。PBSTA清空IAN和ILWHN,返回正常態(tài)。

條件E:如果 IAN≥IAB且ILWHN < ILWHB,則表明目前的ICache容量超出程序的需求。PBSTA清空IAN和ILWHN后,進(jìn)入容量重構(gòu)態(tài),減小ICache的容量。

條件F:如果cache容量發(fā)生變化,則PBSTA進(jìn)入正常態(tài)。

條件G:如果ICMN≥ICMB,則表明目前容量的ICache可能不能夠滿足程序的需求。PBSTA清空IAN和ICMN,進(jìn)入大容量態(tài)。

條件H:如果IAN<IAB且IEWHN<IEWHB,則PBSTA保持在大容量態(tài)。

條件I:如果IEWHN≥IEWHB,則表明目前的ICache容量不能滿足程序的需求。PBSTA清空IAN和IEWHN后,進(jìn)入容量重構(gòu)態(tài),增大ICache的容量。

條件J:如果 IAN≥IAB且IEWHN<IEWHB,則表明增大ICache的容量不會(huì)帶來性能的明顯提升。PBSTA清空IAN和IEWHN,返回正常態(tài)。

g)額外cache路命中計(jì)數(shù)器extrawayhitnum (EWHN)。分為IEWHN和DEWHN,分別統(tǒng)計(jì)ICache和DCache在大容量態(tài)下,將要打開的那一路的命中次數(shù)。

h)額外cache路命中邊界寄存器extrawayhitbound(EWHB)。分為IEWHB和DEWHB,分別用來決定ICache或DCache在大容量態(tài)下,額外cache路的最大命中次數(shù)。一定量的額外cache路命中,表明增加那一路容量后會(huì)帶來cache性能的提升;否則只會(huì)帶來不必要的能耗。

1.2.2 CPU電壓和頻率調(diào)整策略

文獻(xiàn)[4,5]的DVS算法使用了cache缺失事件來觸發(fā)處理器的電壓縮放,即在片外空轉(zhuǎn)周期內(nèi)通過降低CPU電壓和頻率來節(jié)省能耗。文獻(xiàn)[6]通過實(shí)驗(yàn)驗(yàn)證了CPU的占用需求在程序的運(yùn)行過程中具有階段性變化的特征。如果有一算法能以運(yùn)行程序段為單位對(duì)CPU電壓和頻率進(jìn)行變換,那么它就能在更準(zhǔn)確的時(shí)間區(qū)域里使CPU運(yùn)行在低能耗狀態(tài)。

程序運(yùn)行時(shí)會(huì)經(jīng)歷多個(gè)程序段,每個(gè)程序段的任務(wù)量以周期(cycles)為基準(zhǔn)可分為三個(gè)不同區(qū)域:

四個(gè)要素決定[7]:

a)程序段所需執(zhí)行的指令數(shù)量n(在PBLEA中,n=100k)。

b)程序段所需的內(nèi)存訪問數(shù)量m。

c)程序段中每條指令所需執(zhí)行的周期數(shù)CPIionchip(0≤i≤n)。

d)程序段中每次內(nèi)存訪問所占用的內(nèi)存訪問周期數(shù)CAPjoffchip(0≤j

對(duì)于不同的程序段,TonchipR和ToffchipR的比例關(guān)系往往也不同。如果降低CPU電壓和頻率使系統(tǒng)性能損失很大,則表明該程序段具有

為了計(jì)算進(jìn)入程序段后前兩個(gè)間隔的m、CPIavgonchip和CPAavgoffchip,需要采取如下監(jiān)測(cè)策略:

a)監(jiān)測(cè)前兩個(gè)間隔內(nèi)CPU執(zhí)行過程的時(shí)鐘周期數(shù)。PBLEA使用CPU周期計(jì)數(shù)器CCN,統(tǒng)計(jì)執(zhí)行過程中的CPU周期數(shù)。當(dāng)程序進(jìn)入該程序段的第三個(gè)間隔,PBLEA清空CCN。b)監(jiān)測(cè)前兩個(gè)間隔內(nèi)的內(nèi)存訪問周期數(shù)。PBLEA使用內(nèi)存周期計(jì)數(shù)器MCN,統(tǒng)計(jì)執(zhí)行過程中的內(nèi)存訪問周期數(shù)。當(dāng)進(jìn)入該程序段的第三個(gè)間隔,PBLEA算法清空MCN。

c)監(jiān)測(cè)前兩個(gè)間隔內(nèi)的L2Cache缺失數(shù)。由于每次L2Cache缺失都觸發(fā)了內(nèi)存訪問事件,PBLEA使用L2Cache缺失計(jì)數(shù)器LMN,統(tǒng)計(jì)執(zhí)行過程中的內(nèi)存訪問數(shù)量。當(dāng)進(jìn)入該程序段的第三個(gè)間隔,PBLEA清空LMN。

有了上述監(jiān)測(cè)策略,當(dāng)程序段第二個(gè)固定間隔結(jié)束時(shí),LMN中的值為前兩個(gè)間隔的內(nèi)存訪問數(shù)m;CCN中的值為前兩個(gè)間隔CPU執(zhí)行過程的周期數(shù),它與200k相除即可得到前兩個(gè)間隔的CPIavgonchip;MCN中的值為前兩個(gè)間隔的內(nèi)存周期數(shù),它與m相除即可得到前兩個(gè)間隔的CPAavgoffchip。然后,根據(jù)式(7)(10),即可求得不同程序段前兩個(gè)間隔的TonchipR、ToffchipR值和它們之間的比例關(guān)系。根據(jù)程序段內(nèi)不同間隔的特征相似性,可以設(shè)定前兩個(gè)間隔TonchipR與ToffchipR的比例關(guān)系即為該程序段的CPU頻率變化因子βR。

下面將解決在程序段內(nèi)如何改變CPU電壓和頻率的問題。由式(11)可知,CPU的理論優(yōu)化頻率foptimalR不僅取決于頻率變化因子βR,而且與程序段允許的最大性能損失PFlossR和CPU初始頻率fcpu有很大關(guān)系。

首先要確定PFlossR和fcpu。本文采用預(yù)先設(shè)定的方法,在程序運(yùn)行前設(shè)定PBLEA的PFlossR(該值可隨程序的運(yùn)行而變化,但需增加額外的監(jiān)測(cè)措施,還需作進(jìn)一步的研究)。而程序段前兩個(gè)間隔內(nèi),CPU的頻率不作變化,因此很容易求得fcpu。

接著需要確定CPU電壓和頻率的變化范圍。理想中的支持DVS技術(shù)的處理器能夠在線性條件下變換頻率。但目前支持DVS技術(shù)的處理器通常只支持離散頻率模式,因此,本文將處理器頻率和電壓分為五個(gè)離散級(jí)別:F1(333 MHz,0.91 V)、F2(400 MHz,0.99 V)、F3(466 MHz,1.05 V)、F4(533 MHz,1.12 V)和F5(600 MHz,1.19 V)。內(nèi)存訪問時(shí)鐘頻率不隨CPU頻率變化,固定為100 MHz。

理想的DVS技術(shù)能夠瞬間改變CPU的電壓和頻率。但在實(shí)際應(yīng)用中,CPU電壓和頻率的改變往往需要一定的系統(tǒng)負(fù)擔(dān)。文獻(xiàn)[8]中指出,當(dāng)處理器的頻率處于1 GHz時(shí),頻率和電壓切換操作可以在12 ns以內(nèi)完成。因此本文假設(shè)切換電壓和頻率帶來的系統(tǒng)延遲為20個(gè)CPU時(shí)鐘周期。

最后,PBLEA使用下列步驟確定程序段的CPU優(yōu)化頻率foperR,并完成電壓和頻率的變化操作:

a)當(dāng)程序段運(yùn)行到第二個(gè)間隔的末尾(第200k條指令),停止預(yù)取新的指令。

d)將CPU的電壓和頻率切換為foperR所處的電壓和頻率級(jí)別,并等待固定的時(shí)間間隔。這段間隔包括計(jì)算優(yōu)化頻率帶來的延遲和電壓切換帶來的延遲,本文假定它為200個(gè)CPU時(shí)鐘周期。

e)開始預(yù)取指令,并以新的CPU電壓和頻率進(jìn)入下個(gè)固定間隔。

2 實(shí)驗(yàn)與結(jié)果

本文使用Simpanalyzer[9]模擬器和Mibench[10]測(cè)試程序集來仿真和模型化通用處理器及其cache的性能。處理器采用Simoutorder結(jié)構(gòu),并在此基礎(chǔ)上加入了PBLEA算法和DVS功能,修改了其cache結(jié)構(gòu),使之具有可重構(gòu)能力。表1為PBLEA算法的處理器和存儲(chǔ)器參數(shù),表2為PBLEA算法參數(shù)。

表1 處理器及存儲(chǔ)器參數(shù)

參數(shù)取值處理器工藝0.18 μm

處理器頻率F1:333 MHz、F2:400 MHz、F3:466 MHz、F4:533 MHz、F5:600 MHz

處理器電壓F1:0.91 V,F2:0.99 V,F3:1.05 V,F4:1.12 V,F5:1.19 V

預(yù)取和提交寬度 4條指令

發(fā)射和解碼寬度 4條指令

L1Cache容量8k 1路、16k 2路、24k 3路、32k 4路

L1Cache塊大小32 Byte

L1Cache延遲 1個(gè)時(shí)鐘周期

L2Cache容量128 k 1路、256k 2路、384k 3路、512k 4路

L2Cache塊大小64 Byte

L2Cache延遲 6個(gè)時(shí)鐘周期

內(nèi)存總線頻率100 MHz

內(nèi)存訪問延遲100內(nèi)存周期

表2 PBLEA算法參數(shù)

參數(shù)取值

工作集簽名向量1 024位

工作集簽名取樣間隔100k指令周期

相對(duì)簽名距離閾值范圍 0.1~0.4

連續(xù)缺失邊界范圍 ICache、DCache: 1~6

最近最少路命中邊界范圍ICache、DCache:1~4

額外路命中邊界范圍ICache、DCache:1~4

訪問邊界范圍 ICache, DCache: 31 072~131 072

為了驗(yàn)證PBLEA算法的能耗優(yōu)化效果,本文將PBLEA算法與只采用動(dòng)態(tài)cache重構(gòu)(phasebased cache reconfiguration algorithm,PBCRA)和只采用DVS技術(shù)(phasebased DVS algorithm,PBDVSA)的兩種算法進(jìn)行了能耗比較。

如圖4所示,以未采用重構(gòu)技術(shù)的cache(L1Cache:32K4Way、L2Cache:512K4Way)能耗為基準(zhǔn),采用PBCRA算法的可重構(gòu)cache平均節(jié)省了34.2%的能耗,范圍從28%到43%;以未采用DVS技術(shù)的CPU(600MHz、1.19V)能耗為基準(zhǔn),采用PBDVSA算法的處理器平均節(jié)省了27.1%的能耗,范圍從17.3%到48.1%;而以未采用可重構(gòu)cache和DVS技術(shù)的處理器為基準(zhǔn),采用PBLEA算法的cache與處理器平均節(jié)省了49.1%的能耗,范圍從38.1%到61.2%。實(shí)驗(yàn)結(jié)果表明,PBLEA算法能夠合理結(jié)合PBCRA算法與PBDVSA算法的特點(diǎn),做到兩種低能耗技術(shù)協(xié)同工作。

評(píng)價(jià)性能的主要指標(biāo)是由配置重構(gòu)所帶來的額外時(shí)鐘延遲的數(shù)量。如圖5所示,以未采用可重構(gòu)cache和動(dòng)態(tài)電壓縮放技術(shù)的處理器為基準(zhǔn),采用PBCRA算法的cache平均性能損失為3.9%,范圍從3.1%到5.6%;采用PBDVSA算法的處理器平均性能損失為6.1%,范圍從4.1%到7.2%;而采用PBLEA算法的cache與處理器的平均性能損失為8.7%,范圍從7%到11.9%。實(shí)驗(yàn)結(jié)果表明,由于PBLEA算法是PBCRA算法與PBDVSA算法的線性疊加,需要同時(shí)指導(dǎo)cache容量和處理器電壓的動(dòng)態(tài)變化,有更高的性能損失。但PBLEA算法更有效地降低了系統(tǒng)的能耗,具有更高的性能能耗比。

3 結(jié)束語(yǔ)

本文為可重構(gòu)cache和處理器電壓提出了一種基于程序段的自適應(yīng)算法PBLEA。該算法結(jié)合動(dòng)態(tài)cache重構(gòu)和DVS技術(shù)的優(yōu)勢(shì),使用程序段監(jiān)測(cè)狀態(tài)機(jī)來判斷運(yùn)行程序段是否發(fā)生變化,以程序段為基礎(chǔ)對(duì)cache容量與CPU電壓和頻率進(jìn)行動(dòng)態(tài)調(diào)整。實(shí)驗(yàn)表明,PBLEA算法在保證性能的前提下,有效地節(jié)省了cache和CPU的能耗。

參考文獻(xiàn):

[1]ZHANG Chuanjun,VALID F,LUSECKY R.A selftuning cache architecture for embedded systems[J].ACM Trans on Embedded Computing System,2004,3(2): 407-425.

[2]BALASUBRAMONIAN R, ALBONESI D.Memory hierarchy reconfiguration for energy and performance in general purpose architecture[C]//Proc of the 33rd International Symposium on Microarchitecture.New York:ACM Press,2000:245-257.

[3]DHODAPKAR A S, SMITH J E. Managing multiconfiguration hardware via dynamic working set analysis[C]//Proc of the 29th Annual International Symposium on Computer Architecture.New York:ACM Press,2002:233-244.

[4]LI Hai,CHER C Y,VIJAYKUMAR T M,et al.VSV:L2MissDriven variable supplyvoltage scaling for low power[C]//Proc of the 36th International Symposium on Microarchitecture.New York:ACM Press,2003:19-29.

[5]MARCULESCU D.On the use of mircroarchitecturedriven dynamic voltage scaling[C]//Proc of Workshop on ComplexityEffective Design.2000.

[6]RUSU C,ABOUGHAZALEH N,F(xiàn)ERREIRA A,et al.I(xiàn)ntergrated CPU and L2 cache fequency/voltage saling using spervised learning[C]//Proc of HiPEAC Workshop on Satistical and Machine Learning Approaches Applied to Architectures and Compilation.2007:41-50.

[7]GOVIL K,CHAN E,WASSERMAN H.Comparing algorithms for dynamic speedsetting of a lowpower CPU[C]//Proc of the 1st ACM International Conference on Mobile Computing and Networking.New York:ACM Press,1995:13-25.

[8]HENNESSY J,PATTERSON D.Computer architecture a quantitative approach[M].San Francisco: Morgan Kaufmann Publishers,1996.

[9]KIN N,AUSTIN T,MUDGE T.Challenges for architectural level power modeling[M].Boston:Kluwer Academic Publishers,2001.

[10]GUTHAUS M R, RINGENBERG J S. Mibench:a free commercially representative embedded benchmark suite[C]//Proc of the 4th IEEE International Workshop on Workload Characterization.2001:314.

主站蜘蛛池模板: 免费看黄片一区二区三区| 国产无人区一区二区三区| 麻豆国产精品视频| 国产 日韩 欧美 第二页| 亚卅精品无码久久毛片乌克兰| 人人艹人人爽| 18禁高潮出水呻吟娇喘蜜芽| 98超碰在线观看| 谁有在线观看日韩亚洲最新视频 | 国产美女叼嘿视频免费看| 夜夜操天天摸| 国产在线98福利播放视频免费| 亚洲欧洲免费视频| 97国产精品视频人人做人人爱| 免费人成黄页在线观看国产| A级毛片无码久久精品免费| 国产精品无码AV片在线观看播放| 国产精品美女免费视频大全| 国产亚洲欧美日韩在线一区二区三区| 国产精品污污在线观看网站| 91成人免费观看在线观看| 天天色天天综合网| 国产精品尤物在线| 日韩欧美成人高清在线观看| 网友自拍视频精品区| 日韩a级毛片| 国产玖玖视频| 亚洲中文精品久久久久久不卡| 亚洲成在线观看| 视频二区国产精品职场同事| 黄色网站不卡无码| 免费不卡视频| 99精品国产自在现线观看| 91在线精品免费免费播放| 亚洲黄网在线| 99热国产这里只有精品无卡顿"| 激情综合网址| 久久精品亚洲中文字幕乱码| 波多野结衣视频一区二区 | 成人国产精品一级毛片天堂| 夜夜操国产| 国产精品永久免费嫩草研究院| 成人久久精品一区二区三区 | 国产专区综合另类日韩一区 | 国产内射一区亚洲| 国产综合在线观看视频| 亚洲一区波多野结衣二区三区| 日韩精品毛片人妻AV不卡| 青青热久免费精品视频6| 中文字幕久久精品波多野结| 久久一日本道色综合久久| 一级全黄毛片| 亚洲人成成无码网WWW| 精品国产污污免费网站| 国产欧美日韩另类精彩视频| 大香网伊人久久综合网2020| 久久亚洲国产视频| 91破解版在线亚洲| 在线欧美a| 在线不卡免费视频| 男女精品视频| 香蕉综合在线视频91| 亚洲综合香蕉| 中文字幕va| 久久久精品国产SM调教网站| 日本三区视频| 999精品免费视频| 日韩第八页| 日本91视频| 久久semm亚洲国产| 在线精品视频成人网| 亚洲综合网在线观看| 国产成人综合网在线观看| 国产亚洲精品91| 亚洲精品少妇熟女| 久久香蕉国产线看观看亚洲片| 毛片手机在线看| 欧美成人午夜影院| 国产91视频观看| 91久久性奴调教国产免费| 狠狠色噜噜狠狠狠狠色综合久 | 五月激情综合网|