計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題課(第2-7章)-2016_第1頁
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題課(第2-7章)-2016_第2頁
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題課(第2-7章)-2016_第3頁
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題課(第2-7章)-2016_第4頁
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題課(第2-7章)-2016_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題內(nèi)容習(xí)題內(nèi)容7.9,7.10,7.11, 7.12, 7.146.7,6.85.8,5.9, 5.113.8,3.10,3.112.14(補(bǔ)充補(bǔ)充)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題2.14(補(bǔ)充)(補(bǔ)充)v 人工模擬以下MIPS程序的單條指令運(yùn)行方式,在表中用16進(jìn)制編碼記錄每一步產(chǎn)生的結(jié)果(不得借助模擬軟件)。v .datav n: .word 3;n和x是偏移地址v x: .double 0.5 v .textv LD R1, n(R0);R1裝入雙字3(64位)v L.D F0, x(R0);F0裝入雙精度浮點(diǎn)數(shù)0.5(64位)v DADDI R2,

2、R0, 1 ; R2 1v MTC1 R2, F11 ;把通用寄存器R2中的低32位傳送到浮點(diǎn)寄存器F11的低32位v CVT.D.L F2, F11 ;把F11中的數(shù)據(jù)轉(zhuǎn)換成雙精度浮點(diǎn)數(shù),送給F2。v loop: MUL.D F2, F2, F0 ; F2 F2*F0v DADDI R1, R1, -1 ; decrement R1 by 1v BNEZ R1, loop ; if R10 continuev HALT ; 此條不填表v :MIPS浮點(diǎn)數(shù)的格式是IEEE754計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題2.14v IEEE754v 為便于軟件的移植,浮點(diǎn)數(shù)的表示格式應(yīng)該有統(tǒng)一標(biāo)準(zhǔn)(定

3、義)。1985年IEEE提出了IEEE754標(biāo)準(zhǔn)。v 該標(biāo)準(zhǔn)規(guī)定基數(shù)為2,階碼E用移碼表示,尾數(shù)M用原碼表示,根據(jù)原碼的規(guī)格化方法,最高數(shù)字位總是1,該標(biāo)準(zhǔn)將這個(gè)1缺省存儲(chǔ),使得尾數(shù)表示范圍比實(shí)際存儲(chǔ)的多一位。emrmN計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題2.14v雙精度浮點(diǎn)數(shù)類型類型數(shù)符數(shù)符階碼階碼尾數(shù)尾數(shù)總位數(shù)總位數(shù)指數(shù)偏移指數(shù)偏移短實(shí)數(shù)1位8位23位32位127長實(shí)數(shù)1位11位52位64位10230.5的二進(jìn)制表示:0.1=1.0*(10)-1尾數(shù):(1).0000階碼:-1+1023=0 x3fe 0 x3fe00000000000001的二進(jìn)制表示:1.0=1.0*(10)0尾數(shù)(1

4、).0000階碼:0+1023=0 x3ff 0 x3ff0000000000000計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題2.14序號(hào)結(jié)果寄存器結(jié)果值(16進(jìn)制)1R100000000000000032F03fe00000000000003R200000000000000014F1100000000000000015F23ff00000000000006F23fe00000000000007R100000000000000028無無9F23fd000000000000010R1000000000000000111無無12F23fc000000000000013R10000000000000000

5、14無無v n: .word 3v x: .double 0.5 v vLD R1, n(R0)v L.D F0, x(R0)v DADDI R2, R0, 1 v MTC1 R2, F11 v CVT.D.L F2, F11 v loop: MUL.D F2, F2, F0 v DADDI R1, R1, -1 v BNEZ R1, loop v HALT 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題3.8v12345乘法加法tttt2t計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題3.8v如圖,在18個(gè)t時(shí)間中,給出了7個(gè)結(jié)果,所以TP=7/18 t如果不用流水線,一次求積3 t,一次求和5t,則T=(4*

6、5+3*3) t=29 t,因此S=29 t/18 t=1.61E=(4*5+3*3)/5*18=0.322計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題3.10v 有一個(gè)5段流水線,各段執(zhí)行時(shí)間均為t,其預(yù)約表如下 時(shí)間時(shí)間功能段功能段1234567S1S2S3S4S5(1)畫出流水線任務(wù)調(diào)度的狀態(tài)轉(zhuǎn)移圖。(2)分別求出允許不等時(shí)間間隔調(diào)度和等時(shí)間間隔調(diào)度的兩種最優(yōu)調(diào)度策略,以及這兩種調(diào)度策略的流水線最大吞吐率。(3)若連續(xù)輸入10個(gè)任務(wù),求這兩種調(diào)度策略的流水線實(shí)際吞吐率和加速比。計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題3.10v1001011011011001111011115522554計(jì)算機(jī)系統(tǒng)結(jié)

7、構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題3.10(2)由狀態(tài)轉(zhuǎn)移圖可得不發(fā)生段爭(zhēng)用沖突的調(diào)度策略以及平均延遲時(shí)間如下所示。調(diào)度策略調(diào)度策略平均延遲時(shí)間平均延遲時(shí)間調(diào)度策略調(diào)度策略平均延遲時(shí)間平均延遲時(shí)間(2,2,5)3t(4,5)4.5t(2,5)3.5t(5)5t(4)4tu由上可知,允許不等時(shí)間間隔調(diào)度的最優(yōu)調(diào)度策略是(2,2,5),流水線最大吞吐率為: 1/3t。u等時(shí)間間隔的調(diào)度的最優(yōu)調(diào)度策略是(4),流水線最大吞吐率為:1/4t。計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題3.10v計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題3.11v 在改進(jìn)的DLX流水線(按照?qǐng)D3.12)上運(yùn)行如下代碼序列:v LOOP:LWR

8、1, 0(R2)vADDIR1, R1, #1vSW0(R2), R1vADDIR2, R2, #4vSUBR4, R3, R2vBNZR4, LOOPv 其中,R3的初始值是R2396。假設(shè):在整個(gè)代碼序列的運(yùn)行過程中,所有的存儲(chǔ)器訪問都是命中的,并且在一個(gè)時(shí)鐘周期中對(duì)同一個(gè)寄存器的讀操作和寫操作可以通過寄存器“定向”。問:v (1)在沒有任何其它定向硬件的支持下,請(qǐng)畫出該指令序列執(zhí)行的流水線時(shí)空?qǐng)D。假設(shè)采用排空流水線的策略處理分支指令,且所有的存儲(chǔ)器訪問都可以命中Cache,那么執(zhí)行上述循環(huán)需要多少個(gè)時(shí)鐘周期?v (2)假設(shè)該DLX流水線有正常的定向路徑,請(qǐng)畫出該指令序列執(zhí)行的流水線時(shí)空?qǐng)D

9、。假設(shè)采用預(yù)測(cè)分支失敗的策略處理分支指令,且所有的存儲(chǔ)器訪問都可以命中Cache,那么執(zhí)行上述循環(huán)需要多少個(gè)時(shí)鐘周期?v (3)假設(shè)該DLX流水線有正常的定向路徑,請(qǐng)對(duì)該循環(huán)中的指令進(jìn)行調(diào)度。注意可以重新組織指令的順序,也可以修改指令的操作數(shù),但是不能增加指令的條數(shù)。請(qǐng)畫出該指令序列執(zhí)行的流水線時(shí)空?qǐng)D,并計(jì)算執(zhí)行上述循環(huán)需要的時(shí)鐘周期數(shù)? 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)采用定向技術(shù)消除數(shù)據(jù)相關(guān)采用定向技術(shù)消除數(shù)據(jù)相關(guān)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題3.11(1)需要進(jìn)行396/4=99次循環(huán),由于每次分支都清空流水線。從上圖可以看出每次循環(huán)需要17個(gè)時(shí)鐘周期,因此總共需要的時(shí)鐘周期數(shù)為991

10、71168412345678910111213141516 17 18 19LOOP: LW R1 0(R2)IFIDEXMWBADDI R1 R1 #1IFSSIDEXMWBSW 0(R2) R1IFSSIDEXMWBADDI R2 R2 #4IFIDEXMWBSUB R4 R3 R2IFSSIDEXM WBBNZ R4 LOOPIFSSIDEX M WBLW R1 0(R2)IFSSIF計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題3.11(2)需要進(jìn)行396/4=99次循環(huán),由于每次分支都清空流水線。從上圖可以看出每次循環(huán)需要9個(gè)時(shí)鐘周期,因此總共需要的時(shí)鐘周期數(shù)為999+389412345678

11、9101112LOOP: LW R1 0(R2) IFIDEXMWBADDI R1 R1 #1IFSIDEXMWBSW 0(R2) R1SIFIDEXMWBADDI R2 R2 #4IFIDEXMWBSUB R4 R3 R2IFIDEXMWBBNZ R4 LOOPIFSIDEXMWBLW R1 0(R2)SIFIFIDEX計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)指令執(zhí)行重新排序如下:lwr1,0(r2);加法寄存器R1取數(shù)(R2)addir2,r2,#4;指針R2指針R2+4addir1,r1,#1;R1R1+1Subr4,r3,r2;R4R3-R2bnezr4,Loop;若R40, 循環(huán)sw-4(r2)

12、,r1 ;分支延遲槽,存數(shù)(R2-4)R1LOOP:LWR1, 0(R2)ADDIR1, R1, #1SW0(R2), R1ADDIR2, R2, #4SUBR4, R3, R2BNZR4, LOOPLOOP:LWR1, 0(R2)ADDIR2, R2, #4ADDIR1, R1, #1SW0(R2), R1SUBR4, R3, R2BNZR4, LOOPLOOP:LWR1, 0(R2)ADDIR2, R2, #4ADDIR1, R1, #1SW-4(R2), R1SUBR4, R3, R2BNZR4, LOOPLOOP:LWR1, 0(R2)ADDIR2, R2, #4ADDIR1, R1,

13、 #1SUBR4, R3, R2BNZR4, LOOPSW-4(R2), R1習(xí)題習(xí)題3.11(3)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題3.11(3)有正常定向路徑。單周期延遲分支。loop: lw r1, 0(r2)addi r2,r2,#4addi r1,r1,#1sub r4,r3,r2bnz r4,loopsw r1,-4(r2)第i次迭代(i 0.98)開始周期:1(i 6 )總的時(shí)鐘周期數(shù):(986)10598Instruction1234567891011lw r1,0(r2)IFIDEXMWBaddi r2,r2,#4IFIDEXMWBaddi r1,r1,#1IFIDEXMW

14、Bsub r4,r3,r2IFIDEXMWBbnz r4,loopIFIDEXMWBsw r1,-4(r2)IFIDEXMWBlw r1,0(r2)IFIDEXMWB計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題5.8v 假設(shè)有一條長流水線,僅僅對(duì)條件轉(zhuǎn)移指令使用分支目標(biāo)緩沖。假設(shè)分支預(yù)測(cè)錯(cuò)誤的開銷為4個(gè)時(shí)鐘周期,緩沖不命中的開銷為3個(gè)時(shí)鐘周期。假設(shè)命中率為90%,預(yù)測(cè)精度為90%,分支頻率為15%,沒有分支的基本CPI為1。v (1)求程序執(zhí)行的CPI。v (2)相對(duì)固定的2個(gè)時(shí)鐘周期延遲的分支處理,哪種更快?v 解:v (1)程序執(zhí)行的CPI=沒有分支的基本CPI+分支帶來的額外開銷v 額外開銷=1

15、5%*(90%命中*10%預(yù)測(cè)錯(cuò)誤*4+10%沒命中*3) v =0.099所以程序執(zhí)行的CPI=1+0.099=1.099。v (2)采用固定的2 個(gè)時(shí)鐘周期延遲的分支處理v CPI=1+15%*2=1.3v 由(1)(2)知分支目標(biāo)緩沖方法執(zhí)行速度快計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題5.9v 假定分支目標(biāo)緩沖的命中率為90%,程序中無條件轉(zhuǎn)移指令為5%,其它指令的CPI為1。假設(shè)分支目標(biāo)緩沖包含分支目標(biāo)指令,允許無條件轉(zhuǎn)移指令進(jìn)入分支目標(biāo)緩沖,則CPI是多少。假定原來的CPI為1.1。v (1)原來不采用分支目標(biāo)緩沖器BTB情況下v 實(shí)際CPI = 理想CPI+各種停頓拍數(shù)v =1+5%

16、L=1.1 v 解出分支延遲:解出分支延遲:L = 2L = 2v (2)現(xiàn)在采用分支目標(biāo)緩沖器BTB情況下v 實(shí)際CPI=理想CPI+各種停頓拍數(shù)v =1+5%10%2=1.01計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題5.11v 設(shè)指令流水線由取指令,分析指令和執(zhí)行指令3個(gè)部件構(gòu)成,每個(gè)部件t ,連續(xù)12條指令,分別畫出ILP為4的超標(biāo)量,超長指令字處理機(jī)和超流水線的時(shí)空?qǐng)D,并分別計(jì)算相對(duì)標(biāo)量流水處理機(jī)的加速比.v 1. 標(biāo)量流水處理機(jī)v Tk=(k+n-1) t=(3+12-1) t=14 tv 2. 超長指令字處理機(jī)v 采用指令級(jí)并行技術(shù),ILP=4, 12個(gè)任務(wù)組裝成3條長指令,每條含4條

17、小指令,n=3。 Tk=(k+n-1) t=(3+3-1) t=5 t,v 加速比S= 14 t/5 t=2.8計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題5.11v 3 . 超標(biāo)量處理機(jī)v Tk=(k+n-1) t=(3+3-1) tv =5 tv 加速比S=14 t/5 t=2.8v 4. 超流水處理機(jī)v ILP=4,12個(gè)任務(wù)在4條時(shí)鐘v 依次錯(cuò)開0.25 t的流水線上流過,v 所以可取k=12,n=12, 時(shí)鐘= t/4。v Tk=(k+n-1) t/4=(12+12-1) t/4=5.75 t,v 加速比S=14 t/5 .75 t=2.435計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題6.7v首先

18、要把循環(huán)步長變?yōu)?(算法要求): for(i = 1; i = 50; i+) a2*i = a2*i -1v在這個(gè)循環(huán)中a=2,b=0,c=2,d=-1,v這樣GCD(a,c)=2, d-b=-1,v由于前者不不可以整除后者,v故該循環(huán)不存在循環(huán)攜帶的真數(shù)據(jù)相關(guān)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題6.8 表表6.16.1本節(jié)使用的浮點(diǎn)流水線的延遲本節(jié)使用的浮點(diǎn)流水線的延遲產(chǎn)生結(jié)果的指令產(chǎn)生結(jié)果的指令使用結(jié)果的指令使用結(jié)果的指令延遲延遲(cycles)浮點(diǎn)計(jì)算浮點(diǎn)計(jì)算另一個(gè)浮點(diǎn)計(jì)算另一個(gè)浮點(diǎn)計(jì)算3浮點(diǎn)計(jì)算浮點(diǎn)計(jì)算浮點(diǎn)浮點(diǎn)store(S.D)2浮點(diǎn)浮點(diǎn)Load(L.D)浮點(diǎn)計(jì)算浮點(diǎn)計(jì)算1浮點(diǎn)浮點(diǎn)

19、Load(L.D)浮點(diǎn)浮點(diǎn)store(S.D)0整數(shù)運(yùn)算,分支延遲和load需要一個(gè)周期延遲,如果分支的寄存器在前一條指令計(jì)算出,也需要一個(gè)周期延遲,因?yàn)檎麛?shù)計(jì)算在第3個(gè)周期完成,而分支第2個(gè)周期就用到DADDIU R1, R1, #-87(空轉(zhuǎn)空轉(zhuǎn))8BNE R1, R2, Loop9計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題6.8在不進(jìn)行指令調(diào)度的情況下,程序的實(shí)際執(zhí)行情況如下:在不進(jìn)行指令調(diào)度的情況下,程序的實(shí)際執(zhí)行情況如下:指令流出時(shí)鐘指令流出時(shí)鐘Loop:L.D F0, 0(R1)1L.D F4, 0(R2)2(空轉(zhuǎn)空轉(zhuǎn))3MUI.D F0, F0, F44(空轉(zhuǎn)空轉(zhuǎn))5(空轉(zhuǎn)空轉(zhuǎn))6(空

20、轉(zhuǎn)空轉(zhuǎn))7ADD.D F2, F0, F28DADDIU R1, R1, #-8 9DADDIU R2, R2, #-810BNE R1, R3, Loop11(空轉(zhuǎn)空轉(zhuǎn))12計(jì)算原程序周期數(shù):計(jì)算原程序周期數(shù):每對(duì)元素所需的時(shí)鐘周期數(shù)每對(duì)元素所需的時(shí)鐘周期數(shù)=12,其中空轉(zhuǎn)數(shù),其中空轉(zhuǎn)數(shù)=5;計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題6.8 新程序新程序v Loop: L.D F0,16(R1) ;F0 A(i+2) L.D F4,16(R2) ;F4 B(i+2) L.D F6,8(R1) ;F6 A(i+1) MUL.D F0,F0,F4 ;F0 A(i+2) B(i+2) L.D F8,8(

21、R2) ;F8B(i+1) L.D F10,0(R1) ;F10 A(i) MUL.D F6,F6,F8 ;F6 A(i+1) B(i+1) ADD.D F2,F0,F2 ; F2 F2+ A(i+2) B(i+2) L.D F12,0(R2) ;F12B(i) DADDUI R1,R1,-24 ;R1 R1-24 MUL.D F10,F10,F12 ;F10 A(i) B(i) ADD.D F2,F6,F2 ; F2 F2+ A(i+1) B(i+1) DADDUI R2,R2,-24 ;R2 R2-24 BNE R1,R3,loop ;若R1 R3,循環(huán) ADD.D F2,F10,F2 ;

22、 F2 F2+ A(i) B(i)新程序周期數(shù):每對(duì)元素所需的時(shí)鐘周期數(shù)新程序周期數(shù):每對(duì)元素所需的時(shí)鐘周期數(shù)=16/3=5.3,其中空轉(zhuǎn)數(shù),其中空轉(zhuǎn)數(shù)=1/3=0.3計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題7.9v 假設(shè)在3000次訪存中,第一級(jí)cache不命中110次,第二級(jí)cache不命中55次。試問:在這種情況下,該cache系統(tǒng)的局部不命中率和全局不命中率各是多少?v 解:v 第一級(jí)cache不命中率(全局和局部)是110/3000,即3.67%;v 第二級(jí)cache的局部不命中率是55/110,即50%;v 第二級(jí)cache的全局不命中率是55/3000,即1.83%。計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)

23、算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題7.10給定以下的假設(shè),試計(jì)算直接映象Cache和兩路組相聯(lián)Cache的平均訪問時(shí)間以及CPU的性能。由計(jì)算結(jié)果能得出什么結(jié)論? (1)理想Cache情況下的CPI為2.0,時(shí)鐘周期為2ns,平均每條指令訪存1.2次; (2)兩者Cache容量均為64KB,塊大小都是32字節(jié); (3)組相聯(lián)Cache中的多路選擇器使CPU的時(shí)鐘周期增加了10; (4)這兩種Cache的失效開銷都是80ns; (5)命中時(shí)間為1個(gè)時(shí)鐘周期; (6)64KB直接映象Cache的失效率為1.4,64KB兩路組相聯(lián)Cache的失效率為1.0。計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題7.10v 平均訪問

24、時(shí)間命中時(shí)間失效率失效開銷v 平均訪問時(shí)間1-路=2.0+1.4% *80=3.12nsv 平均訪問時(shí)間2-路=2.0*(1+10%)+1.0% *80=3.0nsv 兩路組相聯(lián)的平均訪問時(shí)間比較低v CPUtime=(CPU執(zhí)行+存儲(chǔ)等待周期)*時(shí)鐘周期v CPUtime=(IC*CPI執(zhí)行+總訪存失效次數(shù)*失效開銷) *時(shí)鐘周期v =IC*(CPI執(zhí)行*時(shí)鐘周期+每條指令的訪存次數(shù)*失效率*失效開銷*時(shí)鐘周期)v CPU time 1-way=IC(2.0*2+1.2*0.014*80)5.344ICv CPU time 2-way=IC(2.2*2+1.2*0.01*80)5.36ICv

25、 相對(duì)性能比:5.36/5.344=1.003v 直接映象的訪問時(shí)間是兩路組相聯(lián)的1.04倍,v 兩路組相聯(lián)的平均CPU時(shí)間是直接映象的1.003倍。v 因此這里選擇直接映象。計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題7.11偽相聯(lián)中,假設(shè)在直接映象位置沒有發(fā)現(xiàn)匹配,而在另一個(gè)位置才找到數(shù)據(jù)(偽命中)時(shí),需要1個(gè)額外的周期,而且不交換兩個(gè)Cache中的數(shù)據(jù),失效開銷為50個(gè)時(shí)鐘周期。 假設(shè) 2KB直接映象Cache的總失效率為0.098,2路相聯(lián)的總失效率為0.076; 128KB直接映象Cache的總失效率為0.010,2路相聯(lián)的總失效率為0.007。試求:(1)推導(dǎo)出平均訪存的時(shí)間公式。(2)利

26、用(1)中得到的公式,對(duì)于2KBCache和128KBCache,重新計(jì)算偽相聯(lián)的平均訪存時(shí)間。請(qǐng)問哪一種偽相聯(lián)更快?計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題7.11v 命中時(shí)間偽相聯(lián)命中時(shí)間1路偽命中率偽相聯(lián)1v 因此 偽命中率偽相聯(lián) 命中率2路命中率1路 (1失效率2路)(1失效率1路) 失效率1路失效率2路。v 平均訪存時(shí)間偽相聯(lián) 命中時(shí)間1路(失效率1路失效率2路)1失效率2路失效開銷2路v 將題設(shè)中的數(shù)據(jù)帶入計(jì)算,得到: 平均訪存時(shí)間2KB=1+(0.098-0.076)*1+(0.076 *50 ) =4.822 平均訪存時(shí)間128KB=1+(0.010-0.007)*1+(0.007

27、 *50 ) =1.353 顯然是128KB的偽相聯(lián)Cache要快一些。計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題7.12v (1)假設(shè)TLB不命中率=0v Cache中50%的塊修改過,所以不命中時(shí),替換Cache需要1次從內(nèi)存取一塊,50%次寫回一塊,共1.5次。v 均攤不命中開銷=不命中率1.5 40+32B/4B+020v =不命中率72v 實(shí)際CPI1=1.5+1.2不命中率72=1.5+不命中率86.4v 帶入3種Cache結(jié)構(gòu)的不命中率得:v Cache結(jié)構(gòu) 不命中率實(shí)際CPIv 16KB直接混合映像 0.029 4.0056v 16KB兩路混合映像 0.022 3.4008v 32KB直接混合映像 0.020 3.2280計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)習(xí)題習(xí)題7.12v (2)假設(shè)TLB不命中率=0.2%v 均攤不命中開銷=不命中率1.540+32B/4B+0.2%20v =不命中率1.548.04=不命中率72.06v 實(shí)際CPI2=1.5+1.2不命中率72.06v =1.5+不命中率86.472v 帶入3種Cache結(jié)構(gòu)的不命中率后得v Cache結(jié)構(gòu) 不命中率 實(shí)際CPIv 16KB直接混合映像 0.029 4.0077v 16KB兩路混合映像 0.022 3.4024v

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論