存儲(chǔ)器特性分析和預(yù)測(cè)應(yīng)用處理器性能及功耗
由于超快的CPU內(nèi)核與相對(duì)慢的存儲(chǔ)器之間的速度差距在日漸增大,存儲(chǔ)器系統(tǒng)可能成為當(dāng)前制約系統(tǒng)性能的主要瓶頸。此外,低功耗是另一個(gè)重要的設(shè)計(jì)考慮,尤其在電池供電設(shè)備與日俱增的情況下更是如此。低功耗意味著更長(zhǎng)的電池續(xù)航時(shí)間和設(shè)備使用時(shí)間。在常見(jiàn)的應(yīng)用場(chǎng)合,存儲(chǔ)器功耗通常占了應(yīng)用處理器功耗相當(dāng)大的一部分,而且,隨著存儲(chǔ)器設(shè)計(jì)日益復(fù)雜、容量增大、分層增多,存儲(chǔ)器功耗往往會(huì)迅速增加。因此,降低存儲(chǔ)器功耗非常有利于延長(zhǎng)電池續(xù)航時(shí)間。為了更好地了解各種應(yīng)用的固有行為,有必要探究存儲(chǔ)器的特性、建立存儲(chǔ)器模型,以判斷應(yīng)用是否涉及頻繁的存儲(chǔ)器存取操作,甚至幫助預(yù)測(cè)應(yīng)用的性能。
本文引用地址:http://cafeforensic.com/article/226867.htm本文提供了一種簡(jiǎn)單、經(jīng)濟(jì)的方法,能以可接受的精確度動(dòng)態(tài)地表征應(yīng)用的計(jì)算及存儲(chǔ)器的構(gòu)成。
描述存儲(chǔ)器特性的方法
如果不涉及存儲(chǔ)器操作,那么CPU利用率應(yīng)該隨著CPU內(nèi)核的頻率呈線性關(guān)系,而應(yīng)用成本(定義為CPU利用率和CPU頻率的乘積)應(yīng)該保持恒定。但在考慮存儲(chǔ)器存取以后,CPU利用率就不再隨內(nèi)核頻率呈線性關(guān)系了。在頻率較高時(shí),存儲(chǔ)器對(duì)性能的影響往往更大,因?yàn)镃PU要用更多的CPU周期等待存儲(chǔ)器的響應(yīng)(這里我們假定,存儲(chǔ)器頻率不隨CPU頻率而變)。從這種意義上,應(yīng)用可以分為兩種類(lèi)型:計(jì)算限定型和存儲(chǔ)器限定型。
接下來(lái),我們來(lái)講述如何用三種不同的方法表征存儲(chǔ)器特性,并幫助確定應(yīng)用的CPU利用率。在此,硬件性能信息是通過(guò)查看性能監(jiān)視單元(Performance Monitoring Unit,簡(jiǎn)稱(chēng)PMU)來(lái)收集的。因此,Marvell的方法僅適用于有PMU硬件支持的系統(tǒng)。
1. 整體數(shù)據(jù)緩存失效率:直覺(jué)上,較高的數(shù)據(jù)緩存失效率意味著更大的存儲(chǔ)器流量。為了獲得數(shù)據(jù)緩存失效率的數(shù)值,我們需要監(jiān)視一級(jí)數(shù)據(jù)緩存和二級(jí)數(shù)據(jù)緩存(如果有的話)的存取操作和失效總數(shù)。
2. 主存儲(chǔ)器訪問(wèn)率:外部存儲(chǔ)器控制器的占用率直接表明了存儲(chǔ)器的利用率。為了得 到主存儲(chǔ)器訪問(wèn)率數(shù)值,必須收集兩種PMU信息:存儲(chǔ)器控制器被占用的周期總數(shù);監(jiān)視窗口中的周期總數(shù)。
3. 數(shù)據(jù)停頓率:流水線停頓主要由數(shù)據(jù)相關(guān)性引起,而數(shù)據(jù)不可用的原因是存儲(chǔ)器存取速度遠(yuǎn)比CPU速度低。因此,流水線的停頓次數(shù)反映了存儲(chǔ)器的流量情況。此外,流水線停頓次數(shù)還表明了存儲(chǔ)器存取的重要性。并不是每次存儲(chǔ)器存取都對(duì)最終性能有關(guān)鍵影響,因此,持續(xù)跟蹤因數(shù)據(jù)相關(guān)性對(duì)性能造成影響的存儲(chǔ)器存取操作,是相當(dāng)有用的。使用這種方法,可以監(jiān)視由數(shù)據(jù)相關(guān)性引起停頓的事件情況。此外,必須記錄總的周期數(shù),以計(jì)算每個(gè)窗口中的數(shù)據(jù)停頓率。
評(píng)論