計(jì)算機(jī)體系結(jié)構(gòu)復(fù)習(xí)題_第1頁
計(jì)算機(jī)體系結(jié)構(gòu)復(fù)習(xí)題_第2頁
計(jì)算機(jī)體系結(jié)構(gòu)復(fù)習(xí)題_第3頁
計(jì)算機(jī)體系結(jié)構(gòu)復(fù)習(xí)題_第4頁
計(jì)算機(jī)體系結(jié)構(gòu)復(fù)習(xí)題_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1.7 將計(jì)算機(jī)系統(tǒng)中某一功能的處理速度加快10倍,但該功能的處理時(shí)間僅為整個(gè)系統(tǒng)運(yùn)行時(shí)間的40%,則采用此增強(qiáng)功能方法后,能使整個(gè)系統(tǒng)的性能提高多少?解 由題可知: 可改進(jìn)比例 = 40% = 0.4 部件加速比 = 10根據(jù)Amdahl定律可知:采用此增強(qiáng)功能方法后,能使整個(gè)系統(tǒng)的性能提高到原來的1.5625倍。1.8 計(jì)算機(jī)系統(tǒng)中有三個(gè)部件可以改進(jìn),這三個(gè)部件的部件加速比為:部件加速比1=30; 部件加速比2=20; 部件加速比3=10(1) 如果部件1和部件2的可改進(jìn)比例均為30%,那么當(dāng)部件3的可改進(jìn)比例為多少時(shí),系統(tǒng)加速比才可以達(dá)到10?(2) 如果三個(gè)部件的可改進(jìn)比例分別為30%

2、、30%和20%,三個(gè)部件同時(shí)改進(jìn),那么系統(tǒng)中不可加速部分的執(zhí)行時(shí)間在總執(zhí)行時(shí)間中占的比例是多少?解:(1)在多個(gè)部件可改進(jìn)情況下,Amdahl定理的擴(kuò)展:已知S130,S220,S310,Sn10,F(xiàn)10.3,F(xiàn)20.3,得:得F30.36,即部件3的可改進(jìn)比例為36%。(2)設(shè)系統(tǒng)改進(jìn)前的執(zhí)行時(shí)間為T,則3個(gè)部件改進(jìn)前的執(zhí)行時(shí)間為:(0.3+0.3+0.2)T = 0.8T,不可改進(jìn)部分的執(zhí)行時(shí)間為0.2T。已知3個(gè)部件改進(jìn)后的加速比分別為S130,S220,S310,因此3個(gè)部件改進(jìn)后的執(zhí)行時(shí)間為: 改進(jìn)后整個(gè)系統(tǒng)的執(zhí)行時(shí)間為:Tn = 0.045T+0.2T = 0.245T那么系統(tǒng)中

3、不可改進(jìn)部分的執(zhí)行時(shí)間在總執(zhí)行時(shí)間中占的比例是:3.4 設(shè)一條指令的執(zhí)行過程分成取指令、分析指令和執(zhí)行指令三個(gè)階段,每個(gè)階段所需的時(shí)間分別為t、t和2t 。分別求出下列各種情況下,連續(xù)執(zhí)行N條指令所需的時(shí)間。(1)順序執(zhí)行方式;(2)只有“取指令”與“執(zhí)行指令”重疊;(3)“取指令”、“分析指令”與“執(zhí)行指令”重疊。解:(1)每條指令的執(zhí)行時(shí)間為:tt2t4t連續(xù)執(zhí)行N條指令所需的時(shí)間為:4Nt(2)連續(xù)執(zhí)行N條指令所需的時(shí)間為:4t3(N-1)t(3N1)t(3)連續(xù)執(zhí)行N條指令所需的時(shí)間為:4t2(N-1)t(2N2)t4.2 簡(jiǎn)述Tomasulo算法的基本思想。答:核心思想是: 記錄和檢

4、測(cè)指令相關(guān),操作數(shù)一旦就緒就立即執(zhí)行,把發(fā)生RAW沖突的可能性減小到最少; 通過寄存器換名來消除WAR沖突和WAW沖突。寄存器換名是通過保留站來實(shí)現(xiàn),它保存等待流出和正在流出指令所需要的操作數(shù)?;舅枷耄褐灰僮鲾?shù)有效,就將其取到保留站,避免指令流出時(shí)才到寄存器中取數(shù)據(jù),這就使得即將執(zhí)行的指令從相應(yīng)的保留站中取得操作數(shù),而不是從寄存器中。指令的執(zhí)行結(jié)果也是直接送到等待數(shù)據(jù)的其它保留站中去。因而,對(duì)于連續(xù)的寄存器寫,只有最后一個(gè)才真正更新寄存器中的內(nèi)容。一條指令流出時(shí),存放操作數(shù)的寄存器名被換成為對(duì)應(yīng)于該寄存器保留站的名稱(編號(hào))。p Consider a program with the gi

5、ven characteristicsn Instruction count (I-Count) = 106 instructionsn 30% of instructions are loads and storesn D-cache miss rate is 5% and I-cache miss rate is 1%n Miss penalty is 100 clock cycles for instruction and data cachesn Compute combined misses per instruction and memory stall cyclesp Combi

6、ned misses per instruction in I-Cache and D-Cachen 1% + 30% ´ 5% = 0.025 combined misses per instructionn Equal to 25 misses per 1000 instructionsp Memory stall cyclesn 0.025 ´ 100 (miss penalty) = 2.5 stall cycles per instructionn Total memory stall cycles = 106 ´ 2.5 = 2,500,000CPI

7、with Memory Stallsp A processor has CPI of 1.5 without any memory stallsn Cache miss rate is 2% for instruction and 5% for datan 20% of instructions are loads and storesn Cache miss penalty is 100 clock cycles for I-cache and D-cachep What is the impact on the CPI?p Answer:Mem Stalls per Instruction

8、 =0.02×100 + 0.2×0.05×100 = 3CPIMemoryStalls =1.5 + 3 = 4.5 cycles per instructionCPIMemoryStalls / CPIPerfectCache =4.5 / 1.5 = 3Processor is 3 times slower due to memory stall cyclesCPINoCache =1.5 + (1 + 0.2) × 100 = 121.5 (a lot worse)3.13有一個(gè)流水線由4段組成,其中每當(dāng)流經(jīng)第3段時(shí),總要在該段循環(huán)一次,然后才能

9、流到第4段。如果每段經(jīng)過一次所需要的時(shí)間都是,問:(1) 當(dāng)在流水線的輸入端連續(xù)地每時(shí)間輸入任務(wù)時(shí),該流水線會(huì)發(fā)生什么情況?(2) 此流水線的最大吞吐率為多少?如果每輸入一個(gè)任務(wù),連續(xù)處理10個(gè)任務(wù)時(shí)的實(shí)際吞吐率和效率是多少?(3) 當(dāng)每段時(shí)間不變時(shí),如何提高該流水線的吞吐率?仍連續(xù)處理10個(gè)任務(wù)時(shí),其吞吐率提高多少?解:(1)會(huì)發(fā)生流水線阻塞情況。第1個(gè)任務(wù)S1S2S3S3S4第2個(gè)任務(wù)S1S2stallS3S3S4第3個(gè)任務(wù)S1stallS2stallS3S3S4第4個(gè)任務(wù)S1stallS2stallS3S3S4(2)(3)重復(fù)設(shè)置部件吞吐率提高倍數(shù)1.643.17 假設(shè)各種分支指令數(shù)占所

10、有指令數(shù)的百分比如下:條件分支20%(其中的60%是分支成功的)跳轉(zhuǎn)和調(diào)用5%現(xiàn)有一條段數(shù)為4的流水線,無條件分支在第二個(gè)時(shí)鐘周期結(jié)束時(shí)就被解析出來,而條件分支要到第三個(gè)時(shí)鐘周期結(jié)束時(shí)才能夠被解析出來。第一個(gè)流水段是完全獨(dú)立于指令類型的,即所有類型的指令都必須經(jīng)過第一個(gè)流水段的處理。請(qǐng)問在沒有任何控制相關(guān)的情況下,該流水線相對(duì)于存在上述控制相關(guān)情況下的加速比是多少?解:沒有控制相關(guān)時(shí)流水線的平均CPI1存在控制相關(guān)時(shí):由于無條件分支在第二個(gè)時(shí)鐘周期結(jié)束時(shí)就被解析出來,而條件分支要到第3個(gè)時(shí)鐘周期結(jié)束時(shí)才能被解析出來。所以:(1)若使用排空流水線的策略,則對(duì)于條件分支,有兩個(gè)額外的stall,對(duì)

11、無條件分支,有一個(gè)額外的stall:CPI = 1+20%*2+5%*1 = 1.45 加速比S=CPI/1 = 1.45(2) 若使用預(yù)測(cè)分支成功策略,則對(duì)于不成功的條件分支,有兩個(gè)額外的stall,對(duì)無條件分支和成功的條件分支,有一個(gè)額外的stall 1:CPI = 1+20%*(60%*1+40%*2) +5%*1 = 1.33 加速比S=CPI/1 = 1.33(3)若使用預(yù)測(cè)分支失敗策略,則對(duì)于成功的條件分支,有兩個(gè)額外的stall;對(duì)無條件分支,有一個(gè)額外的stall;對(duì)不成功的條件分支,其目標(biāo)地址已經(jīng)由PC 值給出,不必等待,所以無延遲:CPI = 1+20%*(60%*2 +

12、40%*0) +5%*1 = 1.29 加速比S=CPI/1 = 1.294.4 假設(shè)有一條長(zhǎng)流水線,僅僅對(duì)條件轉(zhuǎn)移指令使用分支目標(biāo)緩沖。假設(shè)分支預(yù)測(cè)錯(cuò)誤的開銷為4個(gè)時(shí)鐘周期,緩沖不命中的開銷為3個(gè)時(shí)鐘周期。假設(shè):命中率為90%,預(yù)測(cè)精度為90%,分支頻率為15%,沒有分支的基本CPI為1。(1) 求程序執(zhí)行的CPI。(2) 相對(duì)于采用固定的2個(gè)時(shí)鐘周期延遲的分支處理,哪種方法程序執(zhí)行速度更快?解:(1)程序執(zhí)行的CPI = 沒有分支的基本CPI(1) + 分支帶來的額外開銷分支帶來的額外開銷是指在分支指令中,緩沖命中但預(yù)測(cè)錯(cuò)誤帶來的開銷與緩沖沒有命中帶來的開銷之和。分支帶來的額外開銷= 15

13、% * (90%命中×10%預(yù)測(cè)錯(cuò)誤×4 + 10沒命中×3)= 0.099所以,程序執(zhí)行的CPI 1 0.099 = 1.099(2)采用固定的2 個(gè)時(shí)鐘周期延遲的分支處理CPI = 1 + 15%×2 = 1.3由(1)(2)可知分支目標(biāo)緩沖方法執(zhí)行速度快。4.9 設(shè)指令流水線由取指令、分析指令和執(zhí)行指令3個(gè)部件構(gòu)成,每個(gè)部件經(jīng)過的時(shí)間為t,連續(xù)流入12條指令。分別畫出標(biāo)量流水處理機(jī)以及ILP均為4的超標(biāo)量處理機(jī)、超長(zhǎng)指令字處理機(jī)、超流水處理機(jī)的時(shí)空?qǐng)D,并分別計(jì)算它們相對(duì)于標(biāo)量流水處理機(jī)的加速比。解:標(biāo)量流水處理機(jī)的時(shí)空?qǐng)D:執(zhí)行完12條指令需T114

14、t。超標(biāo)量流水處理機(jī)與超長(zhǎng)指令字處理機(jī)的時(shí)空?qǐng)D:超標(biāo)量流水處理機(jī)中,每一個(gè)時(shí)鐘周期同時(shí)啟動(dòng)4條指令。執(zhí)行完12條指令需T25t,相對(duì)于標(biāo)量流水處理機(jī)的加速比為:超長(zhǎng)指令字處理機(jī)中,每4條指令組成一條長(zhǎng)指令,共形成3條長(zhǎng)指令。執(zhí)行完12條指令需T35t,相對(duì)于標(biāo)量流水處理機(jī)的加速比為:超流水處理機(jī)的時(shí)空?qǐng)D:超流水處理機(jī)中,每1/4個(gè)時(shí)鐘周期啟動(dòng)一條指令。執(zhí)行完12條指令需T45.75t,相對(duì)于標(biāo)量流水處理機(jī)的加速比為: 4、(10分)假定我們有一臺(tái)計(jì)算機(jī),如果所有的cache訪問都命中的話,它的CPI是2.0。唯一的數(shù)據(jù)訪問指令是store和load,它們占指令總數(shù)的40,不命中損失是

15、25個(gè)時(shí)鐘周期,不命中率是2。如果所有的指令訪問cache都命中的話,那么機(jī)器的速度是存在cache不命中時(shí)的多少倍?首先計(jì)算所有cache訪問都命中時(shí)計(jì)算機(jī)的性能:    CPU執(zhí)行時(shí)間(CPU時(shí)鐘周期內(nèi)存停機(jī)周期)×時(shí)鐘周期時(shí)長(zhǎng)           (IC×CPI0)×時(shí)鐘周期時(shí)長(zhǎng)           

16、IC×2.0×時(shí)鐘周期時(shí)長(zhǎng)    現(xiàn)在計(jì)算考慮cache不命中在內(nèi)的真實(shí)計(jì)算機(jī)性能,我們先計(jì)算內(nèi)存停機(jī)周期:    內(nèi)存停機(jī)周期IC×每條指令訪問內(nèi)存的次數(shù)×不命中率×不命中損失           IC×(10.4)×0.02×25        

17、   IC×0.7    其中(10.4)代表每條指令訪問一次內(nèi)存,而占指令總數(shù)40%的store和load訪問兩次內(nèi)存,所以平均每條指令訪問訪問(1+0.4)次內(nèi)存。這樣總的性能是:    CPU執(zhí)行時(shí)間=(IC×2.0IC×0.7)×時(shí)鐘周期時(shí)長(zhǎng)           = IC×2.7×時(shí)鐘周期時(shí)長(zhǎng) 

18、60;  性能提高的比是執(zhí)行時(shí)間之比的倒數(shù):    cache不命中考慮在內(nèi)的CPU執(zhí)行時(shí)間/cache訪問全部命中的CPU執(zhí)行時(shí)間為:    2.7×IC×時(shí)鐘周期時(shí)長(zhǎng)/2.0×IC×時(shí)鐘周期時(shí)長(zhǎng)1.35    cache訪問全部命中時(shí)的速度是有cache不命中時(shí)機(jī)器速度的1.35倍。   5、(10分)假設(shè)某臺(tái)機(jī)器訪問存儲(chǔ)器都是cache命中,那么它的CPI等于2。還假設(shè)只有Load

19、和Store指令才能訪問存儲(chǔ)器數(shù)據(jù),這兩種指令的數(shù)目占整個(gè)程序的40%。如果訪問存儲(chǔ)器時(shí)出現(xiàn)cache缺失,則一次缺失需要花費(fèi)25個(gè)時(shí)鐘周期。問這臺(tái)機(jī)器在所有指令都cache命中情況比有2%缺失情況快幾倍?根據(jù)題意,在程序的執(zhí)行過程中平均每條指令需要一次取指令和0.4次訪問數(shù)據(jù)。因此,在有2% cache缺失時(shí),由于cache缺失帶來的額外開銷為:    這臺(tái)機(jī)器在所有指令都cache命中時(shí),CPU執(zhí)行時(shí)間為:    而在有2%缺失情況時(shí),CPU執(zhí)行時(shí)間為:    所以這臺(tái)機(jī)

20、器在所有指令都cache命中情況比有2%缺失情況快 1、(12分)在一臺(tái)單流水線處理機(jī)上執(zhí)行下面的程序。每條指令都要經(jīng)過“取指令”、“譯碼”、“執(zhí)行”和“寫結(jié)果”4個(gè)流水段,每個(gè)流水段的延遲時(shí)間都是5ns。執(zhí)行部件的輸出端有直接數(shù)據(jù)通路與它的輸入端相連接,執(zhí)行部件產(chǎn)生的條件碼也直接送入控制器。K1: MOVE R1, #4 ;R1向量長(zhǎng)度4K2:LOOP:MOVE R2, A(R1) ;R2A向量的一個(gè)元素K3: ADD R0, R2 ;R0(R0)(R2)K4: DNE R1, LOOP ;R1(R1)1,若(R1)0轉(zhuǎn)向LOOPK5: MOVE SUN,R0 ;SUN(R0),保存結(jié)果(1

21、)列出指令之間的所有數(shù)據(jù)相關(guān),包括讀寫、寫讀和寫寫數(shù)據(jù)相關(guān)。(2)采用預(yù)測(cè)轉(zhuǎn)移不成功的靜態(tài)分支預(yù)測(cè)技術(shù),畫出指令流水線的時(shí)空?qǐng)D(可用指令序號(hào)表示),并計(jì)算流水線的吞吐率、加速比和效率。(3)采用預(yù)測(cè)轉(zhuǎn)移成功的靜態(tài)分支預(yù)測(cè)技術(shù),計(jì)算指令流水線的吞吐率、加速比和效率。1、解:(1)指令K1與指令K2之間關(guān)于R1的寫讀數(shù)據(jù)相關(guān)(第1次循環(huán))指令K1與指令K4之間關(guān)于R1的寫讀數(shù)據(jù)相關(guān)(第1次循環(huán))指令K1與指令K4之間關(guān)于R1的寫寫數(shù)據(jù)相關(guān)(第1次循環(huán))指令K2與指令K3之間關(guān)于R2的寫讀數(shù)據(jù)相關(guān)(每次循環(huán)內(nèi))指令K2與指令K4之間關(guān)于R1的讀寫數(shù)據(jù)相關(guān)(第次循環(huán)內(nèi))指令K3與指令K5之間關(guān)于R0的

22、寫讀數(shù)據(jù)相關(guān)(最后一次循環(huán))另外,相鄰循環(huán)體之間的數(shù)據(jù)相關(guān)還有:指令K4與下一循環(huán)的指令K2之間關(guān)于R1的寫讀數(shù)據(jù)相關(guān)指令K3與下一循環(huán)的指令K2之間關(guān)于R2的讀寫數(shù)據(jù)相關(guān)指令K2與下一循環(huán)的指令K2之間關(guān)于R2的寫寫數(shù)據(jù)相關(guān)指令K3與下一循環(huán)的指令K3之間關(guān)于R0的寫讀數(shù)據(jù)相關(guān)指令K3與下一循環(huán)的指令K3之間關(guān)于R0的讀寫數(shù)據(jù)相關(guān)指令K3與下一循環(huán)的指令K3之間關(guān)于R0的寫寫數(shù)據(jù)相關(guān)指令K4與下一循環(huán)的指令K4之間關(guān)于R1的寫讀數(shù)據(jù)相關(guān)指令K4與下一循環(huán)的指令K4之間關(guān)于R1的讀寫數(shù)據(jù)相關(guān)指令K4與下一循環(huán)的指令K4之間關(guān)于R1的寫寫數(shù)據(jù)相關(guān)(2)采用預(yù)測(cè)轉(zhuǎn)移不成功的靜態(tài)分支預(yù)測(cè)技術(shù)1234

23、567891011121314151617181920212223寫結(jié)果K1K2K3K4K2K3K4K2K3K4K2K3K4K5執(zhí)行K1K2K3K4K2K3K4K2K3K4K2K3K4K5譯碼K1K2K3K4K2K3K4K2K3K4K2K3K4K5取指令K1K2K3K4K2K3K4K2K3K4K2K3K4K5 (3)采用預(yù)測(cè)轉(zhuǎn)移成功的靜態(tài)分支預(yù)測(cè)技術(shù)12345678910111213141516171819寫結(jié)果K1K2K3K4K2K3K4K2K3K4K2K3K4K5執(zhí)行K1K2K3K4K2K3K4K2K3K4K2K3K4K5譯碼K1K2K3K4K2K3K4K2K3K4K2K3K4K5取指令K

24、1K2K3K4K2K3K4K2K3K4K2K3K4K5 4、(12分)某RISC處理機(jī)的工作主頻為500MHz,有一個(gè)Cache和一個(gè)主存儲(chǔ)器,Cache的存取周期為2ns,主存儲(chǔ)器的存取周期為20ns,Cache的命中率為99%,有20%的LOAD/STORE指令,并假設(shè)處理機(jī)速度的瓶頸完全在存儲(chǔ)系統(tǒng)。(1)求理想情況(Cache的命中率為100%)下的CPI。(2)計(jì)算該RISC處理機(jī)的實(shí)際MIPS速率。(3)如果處理機(jī)的工作主頻提高到1GHz,計(jì)算實(shí)際CPI和MIPS速率。4、解答:(1)CPI=(2ns+2ns´20%)´500MHz=1.2(2)MIPS=1/(2

25、ns´99%+20ns´1%+2ns´20%´99%+20ns´20%´1%) =1/2.616ns=382.3(3)CPI=(2ns´99%+20ns´1%+2ns´20%´99%+20ns´20%´1%)´1GHz =2.616ns´1GHz=2.616MIPS=1/2.616ns=382.35.10 假設(shè)對(duì)指令Cache的訪問占全部訪問的75%;而對(duì)數(shù)據(jù)Cache的訪問占全部訪問的25%。Cache的命中時(shí)間為1個(gè)時(shí)鐘周期,失效開銷為50 個(gè)時(shí)鐘周期

26、,在混合Cache中一次load或store操作訪問Cache的命中時(shí)間都要增加一個(gè)時(shí)鐘周期,32KB的指令Cache的失效率為0.39%,32KB的數(shù)據(jù)Cache的失效率為4.82%,64KB的混合Cache的失效率為1.35%。又假設(shè)采用寫直達(dá)策略,且有一個(gè)寫緩沖器,并且忽略寫緩沖器引起的等待。試問指令Cache和數(shù)據(jù)Cache容量均為32KB的分離Cache和容量為64KB的混合Cache相比,哪種Cache的失效率更低??jī)煞N情況下平均訪存時(shí)間各是多少?解:(1)根據(jù)題意,約75%的訪存為取指令。因此,分離Cache的總體失效率為:(75%×0.15%)(25%×3.

27、77%)1.055%; 容量為128KB的混合Cache的失效率略低一些,只有0.95%。 (2)平均訪存時(shí)間公式可以分為指令訪問和數(shù)據(jù)訪問兩部分: 平均訪存時(shí)間指令所占的百分比×(讀命中時(shí)間讀失效率×失效開銷) 數(shù)據(jù)所占的百分比×(數(shù)據(jù)命中時(shí)間數(shù)據(jù)失效率×失效開銷) 所以,兩種結(jié)構(gòu)的平均訪存時(shí)間分別為: 分離Cache的平均訪存時(shí)間75%×(10.15%×50)25%×(13.77%×50)(75%×1.075)(25%×2.885)1.5275 混合Cache的平均訪存時(shí)間75%×

28、(10.95%×50)25%×(110.95%×50)(75%×1.475)(25%×2.475)1.725因此,盡管分離Cache的實(shí)際失效率比混合Cache的高,但其平均訪存時(shí)間反而較低。分離Cache提供了兩個(gè)端口,消除了結(jié)構(gòu)相關(guān)。5.11 給定以下的假設(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中的多路

29、選擇器使CPU的時(shí)鐘周期增加了10;(4) 這兩種Cache的失效開銷都是80ns;(5) 命中時(shí)間為1個(gè)時(shí)鐘周期;(6) 64KB直接映象Cache的失效率為1.4,64KB兩路組相聯(lián)Cache的失效率為1.0。解: 平均訪問時(shí)間命中時(shí)間失效率×失效開銷平均訪問時(shí)間1-路=2.0+1.4% *80=3.12ns平均訪問時(shí)間2-路=2.0*(1+10%)+1.0% *80=3.0ns兩路組相聯(lián)的平均訪問時(shí)間比較低CPUtime=(CPU執(zhí)行+存儲(chǔ)等待周期)*時(shí)鐘周期CPU time=IC(CPI執(zhí)行+總失效次數(shù)/指令總數(shù)*失效開銷) *時(shí)鐘周期=IC(CPI執(zhí)行*時(shí)鐘周期)+(每條指

30、令的訪存次數(shù)*失效率*失效開銷*時(shí)鐘周期)CPU time 1-way=IC(2.0*2+1.2*0.014*80)5.344ICCPU time 2-way=IC(2.2*2+1.2*0.01*80)5.36IC相對(duì)性能比:5.36/5.344=1.003直接映象cache的訪問速度比兩路組相聯(lián)cache要快1.04倍,而兩路組相聯(lián)Cache的平均性能比直接映象cache要高1.003倍。因此這里選擇兩路組相聯(lián)。二、(10分)判斷題:1、對(duì)計(jì)算機(jī)系統(tǒng)中經(jīng)常使用的基本單元功能,宜于用軟件來實(shí)現(xiàn),這樣可降低系統(tǒng)的成本。( F)2、由于RISC簡(jiǎn)化了指令系統(tǒng),因此,RISC上的目標(biāo)程序比CISC上

31、的目標(biāo)程序要短一些,程序執(zhí)行的時(shí)間就會(huì)少一些。(F)3、流水線調(diào)度是看如何調(diào)度各任務(wù)進(jìn)入流水線的時(shí)間,使單功能線性流水線有高的吞吐率和效率。(T)4、無論采用什么方法,只要消除流水線的瓶頸段,就能提高流水線的吞吐率和效率。( F)5、在滿足Cache與主存的一致性方面,寫回比寫直達(dá)法好。(F)6、在多處理機(jī)上,各個(gè)任務(wù)的執(zhí)行時(shí)間不同時(shí),在個(gè)處理機(jī)總的運(yùn)行時(shí)間均衡的前提下,取不均勻分配,讓各處理機(jī)所分配的任務(wù)數(shù)要么盡量的多,要么盡量的少,這樣,才可使總的運(yùn)行時(shí)間減少。(F)7、Cache組相聯(lián)映象的塊沖突概率比直接映象的高。(F)8、要使線性流水線的實(shí)際吞吐率接近于理想的最大吞吐率,應(yīng)將子過程數(shù)

32、分得越多越好。(F)9、在系列機(jī)內(nèi)可以將單總線改為雙總線,以減少公共總線的使用沖突。( F )1 (×)由于流水線的最大加速比等于流水線深度,所以增加流水段數(shù)總可以增大流水線加速比。2 ()流水線深度受限于流水線的延遲和額外開銷。3 ()編譯器可以通過重新排列代碼的順序來消除相關(guān)引起的暫停。4 ()多級(jí)存儲(chǔ)層次是利用程序局部性原理來設(shè)計(jì)的。5 ()“Cache主存”層次:彌補(bǔ)主存速度的不足。6 ()“主存輔存”層次: 彌補(bǔ)主存容量的不足。7 ()寫調(diào)塊策略是用于寫操作失效時(shí)的策略。8 ()寫合并是提高寫緩沖利用率的技術(shù)。9 ()相聯(lián)度越高,沖突失效就越少。10 (×)強(qiáng)制性

33、失效和容量失效也受相聯(lián)度的影響。11 (×)容量失效卻隨著容量的增加而增加。12 ()2:1的Cache經(jīng)驗(yàn)規(guī)則說明容量為N 的直接映象Cache的失效率約等于大小為N/2 的兩路組相聯(lián)Cache的失效率。13 ()一些降低失效率的方法會(huì)增加命中時(shí)間或失效開銷。14 (×)具有越低失效率的計(jì)算機(jī)系統(tǒng)性能越高。15 (×)具有越低平均訪存時(shí)間的系統(tǒng)性能越高。16 (×)具有越低失效率的存儲(chǔ)系統(tǒng)性能越高。17 ()具有越低平均訪存時(shí)間的存儲(chǔ)系統(tǒng)性能越高。18 (×)Victim Cache是位于CPU和Cache間的又一級(jí)Cache。19 (

34、15;)偽相聯(lián)cache取直接映象及組相聯(lián)兩者的優(yōu)點(diǎn),命中時(shí)間小,失效開銷低。20 ()偽相聯(lián)cache具有快速命中與慢速命中兩種命中時(shí)間。21 (×)預(yù)取必須和正常訪存操作并行才有意義。22 ()預(yù)取必須和正常指令的執(zhí)行并行才有意義。23 ()數(shù)據(jù)對(duì)存儲(chǔ)位置的限制比指令的少,因此更便于編譯器優(yōu)化。24 ()Cache中的寫緩沖器導(dǎo)致對(duì)存儲(chǔ)器訪問的復(fù)雜化。25 ()Cache命中時(shí)間往往會(huì)直接影響到處理器的時(shí)鐘頻率。26 ()采用容量小、結(jié)構(gòu)簡(jiǎn)單的Cache會(huì)減小cache的命中時(shí)間。27 ()寫操作流水化會(huì)減小cache的命中時(shí)間。28 ()組相聯(lián)或直接映象Cache中才可能存在沖突失效。29 ()TLB是頁表

溫馨提示

  • 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)論