计算机系统结构实验报告要点_第1页
计算机系统结构实验报告要点_第2页
计算机系统结构实验报告要点_第3页
计算机系统结构实验报告要点_第4页
计算机系统结构实验报告要点_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验一流水线相关.实验目的1. 熟练掌握 WinDLX模拟器的操作和使用,熟悉DLX指令集结构及其特点;2. 加深对计算机流水线基本概念的理解;3. 进一步了解DLX基本流水线各段的功能以及基本操作;4. 加深对数据相关、结构相关的理解,了解这两类相关对CPU性能的影响;5. 了解解决数据相关的方法,掌握如何使用定向技术来减少数据相关带来的暂停。二.实验内容1. 用WinDLX模拟器执行下列三个程序(任选一个):求阶乘程序fact.s求最大公倍数程序gcm.s求素数程序prim.s分别以步进、连续、设置断点的方式运行程序,观察程序在流水线中的执行情况,观察CPU中寄存器和存储器的内容。熟练掌握

2、WinDLX的操作和使用。注意:fact.s中调用了 input.s中的输入子程序。load程序时,要两个程序一起装入(都select后再点击load)。 gcm.s也是如此。2. 用WinDLX 运行程序structure_d.s,通过模拟:找出存在结构相关的指令对以及导致结构相关的部件;记录由结构相关引起的暂停时钟周期数,计算暂停时钟周期数占总执行周期数的百分比;论述结构相关对CPU性能的影响,讨论解决结构相关的方法。3. 在不采用定向技术的情况下(去掉Configuration 菜单中Enable Forwarding 选项前的勾选符),用WinDLX运行程序data_d.s。记录数据相

3、关引起的暂停时钟周期数以及程序执 行的总时钟周期数,计算暂停时钟周期数占总执行周期数的百分比。4. 在采用定向技术的情况下(勾选Enable Forwarding),用WinDLX 再次运行程序data_d.s。重复上述3中的工作,并计算采用定向技术后性能提高的倍数。三实验过程和截图1. 模拟执行fact.s和input.s流水线的状态如下: 在执行求阶乘程序fact.s之后,输入值5,查看寄存器的值为120,结果正确。阳 Cl:|il 1IM| WB |2执行程序structure_d.s之后的实验数据如下图:蠲 W1NDLX - Statistics File Window Execute

4、 Mtmbry CphfigurliDh 益日 hwti 匚 sTotal:1羽匚闪匕|w|亡wculedID EweculBd bp lntiuc:liDn|x|.2 Insliuctionh) curienllji h Fi peine.Hard con f igrurat ionMmbry ;ise: 32768 BybeifaddE:tage& 1t reqjred Cd&t: 2fmUEX-S lages: b iequredCjM:le$: 5MvEX-Sl-flger 1. rcqurRl Qjretet 19Fradn diirahed.Stalls:RAW 曲鮭96 (49詔

5、囂剖CjdMWAW 血 b 0 (0 00 究別-d ci 词Slructuralstals. 0 0 00 ol 刖 CdetCcnlral stals- 3 462即 E al QydesTiap 时刖学 3l|l 畀器 of jil CjdH)T9tal 10S SLal|t) (55 3S墨 cl Ml Cydt|Conditional Branches)T ctql 1U (11 S3常 q/ all Initruclbrul Ihmc td-:.m 9 (9I10CR; d dleond Branehes| nrt taken: 1ol 刖也nd.日 isidiesLd/Store

6、Im1 茂al. 3Q (23126 M ail Irrttrucliantl. IhereLoads: 20 100.00說 ol Load-ZStixe lnsliuDtionsIS loess: 0 0.00 of Lid!/SliorjH rtshuctKins)Floating- point stage instruetions.1 otat 20 23.26 厲 all Instruclians:. thereof:Addtiong- 206100.00. of Flwirig ponl 血ge hsl.Muhpltccns s. | j 0能 ol Fhdrig puHt 时ag

7、已 n )Diviaons: 0 (0.0& of Flawing point stage in st.)Traps-T iapx 1 (1 16S: gl 占I 佔吐lydion到由实验数据显示:(1 )该程序没有结构相关;(2) 该程序总共暂停的时钟周期数为:108个时钟周期,暂停的时钟周期数占总的时钟周期数的百分比为108 =55.38%1953不采用定向技术,运行data_d.s程序,实验数据如下图:醫 W1NDLX = tStatistic File Window Execute Memory Configuration Statistics丁毗自丄:202etKculedID en

8、ecufed by 35 Imstructionts.2 lntiutfon(s) ewerWy 诂 Pipeline.Hardware conf iguration:Memory dze: 32760 BtesfaddDZStorB-lnEtnjctions)Sides:; 10 (33 33器 al LMd-ZStore-lnstiuctons)Floating point stage instructiions:Totdl: 0 (O.OIK of dl ln$tiuction thseof.Addihons: 0 (0.00怎 d Floating pard stage insL)Mi

9、dtiplications 0 fO 00琴 of Floaiirijg point slage in$tJDivisions. 0 (0.00* of Floaling point stag。insLTraps:T rp$ 1 1 18K of ail Inftruchoriis:)由实验数据显示:(1) 由数据相关引起的暂停的时钟周期数为:104(2) 程序执行的总的时钟周期数为:202(3) 暂停的时钟周期数占总的时钟周期数的百分比:104 =51.49%2024采用定向技术执行程序data_d.s,实验数据如下图:WINDLX Statistics-j File Window Exec

10、ute Memory Configuration Statistics Total:128 Cycles) executed.ID eecuied by 85 I nstfuction(s).2 instruction($) currently in Pipeline.Hardware contiguration: Memary size 327&B Bytes faddEX-S tages: 1, required Cycles: 2 frwIEX-Stages: 1 ” required Cydes: 5 fdr/EX-Stges; 1, requb亡d 匚丫匚1 巳說 19 Forwar

11、ding enabled.Stalls:RAW細$: 30 344毬 of dl Cycles), thereof: LD stalls: 20 (66.67 of RAW 戏日树 BranchZJunnp stalls: 1D (33.33% of RAW stalls Floating point sials: 0 (0.00 of RAW stalls)WAW stalk: OfUOOqf all Cctes Struclursl stalls: 0 (0. Q0 of al Cycles) Control stalk 9 (7.03X of all Cycles Trap stale

12、3 (2.34 of all Lydes) j olalt 4232. S1 囂 of al Cycles)匚onditional Branches):T 话I 10(11,7濮 cf all Instruct ions, thereof taken: 9 (90.00 al all cond. Branches) not taken: 1 10 OQ of al cond BranchesLoad-Stcre-Iinstruct ion :T otal: 30 (35 29 of all Instnjctions), thereof: Loads; 20 fGS 673; of Lodd-/

13、Store-instructionj) Stores 10 (33 33 of Load ZSlore-lnstructnnt)Float mg point stage instructi口ns:Total: 0 Cid爾 of all InstrudionsL thereof:Additions: 0 (0 00 时 Floating point stage in$t.) Multiplications: 0 (0.00: of Floalirrg point stage insi.) Dpisions: 0 (0 00 of Floating poiri 址ag ihstTraps:T r

14、aps: 1 f1.18 of all Instrjcticns)由实验数据显示:(1) 程序由于数据相关引起的暂停的时候周期数为:30;(2) 程序执行的总的时钟周期数为:128;(3 )暂停的时钟周期数占总的时钟周期数的百分比为:30/128=23.44%(4)CPU性能提高的倍数:202/128=1.58。四实验体会本次实验是计算机系统结构该课程的第一次实验,刚刚开始的时候由于不会使用 WINDLX 软件,所以导致得到了一些错误的实验数据,但是后来在老师和同学的帮助下渐 渐的熟悉了该软件对于实验的作用, 也学会了如何运用该软件来观察程序在流水线的状态下 的执行, 我们可以看到实验的真实数

15、据, 流水线的时空图等等, 这让我们对流水线的的认识 更加深刻。实验二 循环展开及指令调度一实验目的1. 加深对循环级并行性、指令调度技术、循环展开技术以及寄存器换名技术的理解;2. 熟悉用指令调度技术来解决流水线中的数据相关的方法;3. 了解循环展开、指令调度等技术对CPU 性能的改进。二实验内容1用指令调度技术解决流水线中的结构相关与数据相关(1) 用DLX汇编语言编写代码文件*.s,程序中应包括数据相关与结构相关(假设:加 法、乘法、除法部件各有 2个,延迟时间都是3个时钟周期)(2) 通过Configuration菜单中的 “ Floating point stages 选项,把加法、

16、乘法、除 法部件的个数设置为 2 个,把延迟都设置为 3 个时钟周期;(3) 用 WinDLX 运行程序。记录程序执行过程中各种相关发生的次数、发生相关的指 令组合,以及程序执行的总时钟周期数;( 4) 采用指令调度技术对程序进行指令调度,消除相关;(5) 用 WinDLX 运行调度后的程序,观察程序在流水线中的执行情况,记录程序执行 的总时钟周期数;(6) 根据记录结果,比较调度前和调度后的性能。论述指令调度对于提高CPU 性能的意义。2. 用循环展开、寄存器换名以及指令调度提高性能(1) 用DLX汇编语言编写代码文件*.s,程序中包含一个循环次数为 4的整数倍的简单 循环;(2) 用Win

17、DLX运行该程序。记录执行过程中各种相关发生的次数以及程序执行的总 时钟周期数;(3) 将循环展开 3 次,将 4 个循环体组成的代码代替原来的循环体,并对程序做相应的 修改。然后对新的循环体进行寄存器换名和指令调度;(4) 用 WinDLX 运行修改后的程序,记录执行过程中各种相关发生的次数以及程序执 行的总时钟周期数;(5) 根据记录结果,比较循环展开、指令调度前后的性能。三实验过程和截图1.(1)用 DLX 汇编语言写的代码如下:Main:addf f1,f2,f3;addf f3,f2,f1;addf f5,f6,f5;addf f4,f6,f4;multf f8,f7,f6;mult

18、f f11,f10,f9;Finish: trap 0;用WinDLX运行程序,实验数据如下图:v avw w ff w v v mu w i v a v wwrw e-p-wpv wwTotal1 bexecuted.ID executed bjf 7 nsfiuctto:.In州uttionfTcuM如购 in Pipeline,Hardware configurtionM erf.ory ?ceByleiliddEX SlJts. 2, reQLifd Cycifri: 3 ImulEMSfdges. 2” required Cj)cte$. ? (divEX-St? tequifed

19、Cyctei 3 Fa胸肉耳er b*edStalls:RAW 恥 1$ 2of Cycles,上诒7LD stAlk: 0 (LOO誥 of RAWBrchZJimp stoJs 0 (:.JJi. . of RAW ttaH? F如ng pom!阳玮2|1QU哄出RAW報目刚WAV/ 事 0 (0-00 of di CdevSmcturl 3hh: 1 (t .-. . ot aS Cycles)Conbd Mb: 00.00君 of * Cydes)Trapalt?:(31 曲:;Tofai 8Slsl(S!- -! ofalCjtesCond i ticn1 Branches)r EH

20、 0 (OlO(K of M InjVuchonet theaed; t-jkfb 0 (0 00-; of alccnd Branches) no Slaei. C p.GG*- orf LtwI-ZStvensbuctione)Fl&atin point stege instructicnsT ott & (85 71 d *ln$tmciiontL thcfeof: Addrtions: 4 (Sb t.? ot FJoatng point $1祥 irrst| MiAjpictiDns: 2 3133器(rf FloaHng point stage inst.)D inions 0 0

21、 C1I : ; Of Floaifjng poirtt 戟妁 ift$l jTrapsTi妙 1 14 常 of 舶 In骑由实验数据显示:(1)数据相关发生次数:2(2)结构相关发生次数:1(3)程序执行的总的时钟周期数:16(3)米用指令调度技术实验数据如下图进行指令调度之后的指令代码:main:addff1,f2,f3;addff5,f6,f5;multff8,f7,f6;addff4,f6,f4;multff11,f10,f9;addff3,f2,f1;Fi nish:trap0您 WINDLX - StatisticFile Window Execute Memory Config

22、uratiori Stathl Total:1 3 Cycled) executedID exectled by / lnihuction(s)2 dWuchc阀到 cuTfentJy in PipelineHardware conf igurat icn rWetnory $i第:32/8 Bytes laddEX-Stages:込 required Cycles: 3 fmuX-SLage$: lequired Cycles: 3 ItivEX Siage$: 2, required Cydts 3 Fo wading 自 tabled.Stalls:RAW 职日!住 0 (J 0朋 d

23、aHthereofLD 0 (0 (TO of RAW Z ernchZJunop stalls |J p 11 百爲 orf RAW slts) FZmg poh* 丸11$ D 0 00% ct RAW $UH$J WAW 規韵h 0 (0.0G d all Cycles) Shuctujai slalh; 0 (0 Uj- d aU Cycle对Contfol $la掠;0 (0.00 of di Cycles) Tiapttelh 5 (38.46 of d Cde$) Total 5(33 46 of CycledConditional Branches):Totai 0 (0 00

24、:;耐 HI I祕luction*, thereof; Idken: 0 (0 00 of al cond Branches) not tAkert 0 (OlOOSi of al cond Bfandie$)Load-/Store-Instruct ions:T otaJ: C (I? 00说 of all tnUucijons), lheied: Loach: 0 (0 00 of LMdTStore lnstructions) Stores: 0 (0 00 一 of Load-/Store*lnstf(jcticins|由实验数据显示:(1 )消除了数据相关,使数据相关的次数为0;(2

25、 )消除了结构相关,使结构相关的次数为0;(3 )程序执行的总的时钟周期数为13 ;(4) CPU 性能提升:16/13=1.23 倍;2. 用循环展开、寄存器换名以及指令调度提高性能(1) 使用DLX汇编语言写的循环指令代码:main:addi r2,r0,#0addi r1,r0,#8loop:addi r2,r2,#1addi r1,r1,#-1bnez r1,loopFi nish:trap 0(2) 用WinDLX执行程序,实验数据如下图:|j Fife Window Execute Memory Configuration Statrtics Total:4S Cycle! s e

26、xecutedID executed by 27 Insbuckt).2 ln$t(uCtion(s) curfently in Pij: ehne.Hardware conf igurcit ion : Memoiy 割花:3276S Bytes hddEX Stages: 2” 趙quned 匚艸属: 2t feqwed Cydes: 3 fdivEX占怙g龄:j; requted Cjctes. 3 Fswdng enabled.Stalls:RAW 3* jils: S (17,39 : of al Cyde$L thereofID ftah: 0(0.00 of RAW 秋刮朴Bin

27、chAJump 鲁風 8100.00 of RAW 就血)Flawing pdnE 韓肚 0 (U Gu af RAW 亦树WAW 戒对h: 0 0.00 出 al Cydes) Shucturl $taH$. 0 (0 0O of 2 Cpde) Ccrtrol stalk: ? (15.2農 of 咬 Cycles T iap sijfc: 3 (6 52 of 3ll Cvcfel Total 1 -j 5 怡I阖国Cycles)Condition*! Branches):T ot.j! 9(23163% of alln$liuc*ion$ thereof takn 7 (87.50-

28、of 出 nd. Branches) not laken: 1 ?. 50?- of Ncond E ranches)Load-/Stcnb-Instruct ions:Total 0 (U Oil, of alt Inshuctionsl thereof:Lm4$: 0 (0.00* ot LMd-/$Uxe-h$trucliom)Sroftt: Cl (0 OCT: d Lod/Starednhuctiom)由实验数据显示:(1 )数据相关发生的次数:8;(2 )结构相关发生的次数:0;(3 )程序执行的总的时钟周期数:46;(3) 采用循环展开技术,将指令展开七次,代码如下:main:a

29、ddi r2,r0,#0addi r1,r0,#8;loop:addi r2,r2,#1addi r1,r1,#-1addi r2,r2,#1addi r1,r1,#-1addi r2,r2,#1addi r1,r1,#-1addi r2,r2,#1addi r1,r1,#-1addi r2,r2,#1addi r1,r1,#-1addi r2,r2,#1addi r1,r1,#-1addi r2,r2,#1addi r1,r1,#-1addi r2,r2,#1addi r1,r1,#-1;bnez r1,loopFi nish:trap 0用WinDLX执行该程序,实验数据如下:僦 V.QN

30、OLX - StatisticsFrit Window ExecuteConfiguration tatiTotal23 匚yclelw executed.ID e-Kecuiedby 1】I幅帕捕列主 .InlruChorXI 3帕ritly n Pi; ebrHardware configurationMarawy m* 327S8 tiddEX-Stage: 7 required Cycles; 3 ImdEX-Slages: Z required Cjtcb&s: 3 fdrvEX-Sidjf s ?r Eequired Cycles 3 Founding enabledStalls;

31、FLAW jtaih: 0 (0 (JUi of al Cyde?l fhereof:LD sUlr b(OLO峻卅丽 如BMnchZJurr)siaKs: 0 U OC (jf RAWFk呦j poW010 OO 站出 RAW 轼血AW stals: 0 (0.00 ol 諂 Cycles) Sliucturel $M: 0 (P.00 of Cydftt) Cwiftiol sitalk: U (0 ijij ; of aI Cyclei) Iiap stdfc: 3 (13.04 of * Cycles) Tot*! 3 sral (i 3 d l Cyde*)Cond i t i on

32、1 BranchesJ;Tot 0 p.00 ot 创 IrtruchonsL theteof: 3b旳 ij (U (KJ-:0 那 cond Blanches) nor iak*n 0 O.OCl ot All cond BlancheLoadInstructions:Tot出.0 (0 iDO d al Instfuctions). iheteof:Lo*d$ 0 (0 U d Load /$ tae -I nitructiomStores: “00:; of LoadTS tore-instruclns)由实验数据显示:(1 )数据相关次数:0(2 )结构相关次数:0(3 )程序执行的

33、总的时钟周期数:23(4)CPU性能提高了 1倍四实验体会该实验的目的是让我们加深对指令调度和循环展开技术的了解,在大多数指令中会涉及到循环指令,循环指令中存在着数据相关、结构相关和控制相关等等,这些相关的存在都 影响着CPU的性能,要想得到更高的效率,所以我们需要减少这些相关的次数,甚至消除 这些相关。循环展开和指令调度就是消除这些相关来提高 CPU 性能的技术,由实验可以看 出,指令调度和循环展开对于相关的减少和性能的提高具有显著的作用。实验三 记分牌算法和 Tomasulo 算法一实验目的1. 掌握 DLXview 模拟器的使用方法;2. 进一步理解指令动态调度的基本思想,了解指令动态调

34、度的基本过程与方法;3. 理解记分牌算法和 Tomasulo 算法的基本思想,了解它们的基本结构、运行过程;4. 比较分析基本流水线与记分牌算法和 Tomasulo 算法的性能及优缺点。二实验内容1. 用DLX汇编语言编写代码文件*.s (程序中应包括指令的数据相关、控制相关以及结构相 关),以及相关的初始化寄存器文件 *.i 和数据文件 *.d ;2. 观察程序中出现的数据相关、控制相关、结构相关,并指出三种相关的指令组合;3. 将自己编写的程序 *.s、 *.i 、 *.d 装载到 DLXview 模拟器上,( 1 ) 分别用基本流水线、记分牌算法和 Tomasulo 算法模拟,针对每一种

35、模拟做如下分 析: 统计程序的执行周期数和流水线中的暂停时钟周期数; 改变功能部件数目重新模拟,观察并记录性能的改变; 改变功能部件延迟重新模拟,观察并记录性能的改变; 论述功能部件数目、功能部件延迟对性能的影响。(2) 记录运行记分牌算法时的功能部件状态表和指令状态表;( 3) 记录运行 Tomasulo 算法时的指令状态表和保留站信息;三实验过程和截图1. 用 DLX 汇编语言编写的代码如下:add r4, r0, r0add r5, r0, r0addi r1, r0, 5LOOP:subi r1, r1, 1multf f4,f4,f4multf f5,f5,f5multf f6,f6

36、,f6multf f7,f7,f7addi r4, r4, 2addi r5, r5, 10bnez r1, LOOPnopadd r6, r4, r5nopnopnopnoptrap #02观察程序中出现的数据相关、控制相关、结构相关x V1NDLX 亠St at 1st icsI Jilt Window E沪Mwitory oni curatiQbtiicKTot 3 1121 Cycte(s executedID executed by 50 InJruc! |/ ImUuction(s) curfentV ir F :二:二Hardware configuration:Mer:iory

37、 size: 327f8 B*e$JidEX-Stages: 1, required Cycte$: 2 -Stages 1 required Cafes 廿圧 Stages: 1, fequired Cycles 13F 朝异$dinq -Ji abled.Stalls;RAW alls: 2 (1.65 of 出 CycteJWAW stalls: 0 (0.00:: d a* Cycles)Sduciijfai stalls: 60 (49.B0 & 剖 Cycle到Controf 或创Is: 4 33D; d 越 Cycfes)Trap talh: 32,48% of al Cycle

38、s Toli 1 Stall(s) (57 Cl/ cf 主 CyclesCond1tlOnal Bran匚he生)TotM 5 (10.00 of dl Instfuctorrtt thereof: laken: 4 (80.00 of al cond. Branches) not taken: 1 20 DQ鬼 ci al cond Branches)Load-Store-Instractions:ToUl 0 (!100 of all Instrucbonsl thereof: Leads 0 (0 00: of Load-ZStore fnskuebons) 帕心:;0 (n 00;

39、of LcB(ZStofe-ln$tructlam)Floating point stge instruct ionsToUt 20 (40.005; of 捕 Inshucbonsl thereof:-ddihmrii. U (IJ ilU cl F1l 寸 mg point ilage in;i I Muftplcalions: 20 100LOO% of Floating poirit stage ir. Divisions: 0 0.00: of Floatrsg point stage tnst.)Traps.Tiap: 1 12 00 of all Insttucbora)由实验数

40、据显示:(1) 数据相关引起的暂停的时钟周期数:2(2) 结构相关引起的暂停的时钟周期数:60(3) 控制相关引起的暂停的时钟周期数:43将程序加载到DLXview模拟器上运行:(1) BasicPipeLine状态下执行程序截图如下:StT桶基本流水线下程序执行的时钟周期数是53;(2)ScoreBoard算法下执行该程序,截图如下:在ScoreBoard算法中程序执行的总的时钟周期数为 168 (3) Tomasulo算法下执行该程序,截图如下:在Tomasulo算法下该程序的执行时间是140。四实验体会该实验的目的首先是让我们熟悉DLXview该模拟器,让我们能够熟练的在该平台上做实验,

41、实验内容包括基本流水线、ScoreBoard算法和Tomasulo算法。在该实验中,我了解到程序的数据相关、结构相关和控制相关引起时钟周期暂停的原因和影响。ScoreBoard算法和Tomasulo算法是动态调度的算法,其中ScoreBoard算法的思想是将基本的流水线分为四个段:流出、取操作数、执行、写结果,在该算法中能够自动的消除RAW相关,但是不能消除WAR和WAW相关;Tomasulo算法的思想是顺序流出、乱序执行和乱序写结果,该算 法能够通过寄存器换名消除WAR和WAW相关,通过推迟执行能够减少RAW相关。实验四 Cache 性能分析一实验目的1. 加深对 Cache 的基本概念、基

42、本组织结构以及基本工作原理的理解;2. 掌握Cache容量、相联度、块大小对 Cache性能的影响;3. 掌握降低 Cache 不命中率的各种方法以及这些方法对提高 Cache 性能的好处;4. 理解 LRU 与随机法的基本思想以及它们对 Cache 性能的影响。二实验内容首先要掌握 MyCache 模拟器的使用方法。1. Cache 容量对不命中率的影响1. 启动 MyCache。2. 用鼠标点击“复位”按钮,把各参数设置为默认值。3. 选择一个地址流文件。方法:选择“访问地址”下的“地址流文件”选项,然后点击“浏 览”按钮,从本模拟器所在的文件夹下的“地址流”文件夹中选取。4. 选择不同的

43、 Cache 容量,包括:2KB , 4KB , 8KB , 16KB , 32KB , 64KB ,128KB , 256KB , 分别执行模拟器(点击“执行到底”按钮) ,然后在表 1 中记录各种情况下的不命中率。5. 以容量为横坐标,画出不命中率随 Cache 容量变化而变化的曲线。并指明地址流文件名。6. 根据该模拟结果,你能得出什么结论?2. 相联度对不命中率的影响1. 用鼠标点击“复位”按钮,把各参数设置为默认值。这时的 Cache 容量为 64KB 。2. 选择一个地址流文件。方法:选择“访问地址”下的“地址流文件”选项,然后点击“浏 览”按钮,从本模拟器所在的文件夹下的“地址流

44、”文件夹中选取。3. 选择不同的 Cache 相联度,包括:直接映象, 2 路, 4 路, 8 路, 16 路, 32 路,分别执 行模拟器(点击“执行到底”按钮) ,然后在表 2 中记录各种情况下的不命中率。4. 把Cache的容量设置为256KB,重复上一步的工作。5. 以相联度为横坐标,画出在 64KB和256KB的情况下不命中率随 Cache相联度变化而变 化的曲线。并指明地址流文件名。6. 根据该模拟结果,你能得出什么结论?3. Cache 块大小对不命中率的影响1. 用鼠标点击“复位”按钮,把各参数设置为默认值。2. 选择一个地址流文件。方法:选择“访问地址”下的“地址流文件”选项

45、,然后点击“浏 览”按钮,从本模拟器所在的文件夹下的“地址流”文件夹中选取。3. 选择不同的Cache块大小,包括:16B,32B,64B,128B,256B,对于Cache的各种 容量,包括: 2KB , 8KB , 32KB , 128KB , 512KB ,分别执行模拟器(点击“执行到底” 按钮),然后在表 4 中记录各种情况下的不命中率。4. 分析Cache块大小对不命中率的影响。4. 替换算法对不命中率的影响1. 用鼠标点击“复位”按钮,把各参数设置为默认值。2. 选择一个地址流文件。方法:选择“访问地址”下的“地址流文件”选项,然后点击“浏 览”按钮,从本模拟器所在的文件夹下的“地

46、址流”文件夹中选取。3. 对于不同的替换算法、 Cache 容量和相联度, 分别执行模拟器 (点击“执行到底” 按钮),然后在表5中记录各种情况下的不命中率。4. 分析不同的替换算法对 Cache不命中率的影响。5. 混合Cache和分离Cache的比较1. 用鼠标点击“复位”按钮,把各参数设置为默认值。2. 选择一个地址流文件。方法:选择“访问地址”下的“地址流文件”选项,然后点击“浏 览”按钮,从本模拟器所在的文件夹下的“地址流”文件夹中选取。3. 分别在分离Cache和混合Cache的情况下,选择不同的Cache容量,包括:4KB,8KB, 16KB,32KB,64KB,128KB,25

47、6KB,分别执行模拟器(点击“执行到底”按钮) ,然后在表6中记录各种情况下的不命中率。4. 对模拟结果进行分析。三实验过程和截图I.Cache容量对不命中率的影响地址流文件名:ccl.dinCache容量大小对实验的影响Cache容量2KB4KB8KB16KB32KB64KB128KB256KB不命中 率14.22%10.46%7.59%4.78%2.84%1.97%1.26%0.98%F面折线图显示的是 Cache容量大小对不命中率的影响(地址流文件名:ccl.din):Cache容量对不命中率的影响不命中率容量由折线图可以看出:Cache的容量越大,不命中率越小 2.相联度对不命中率的影响地址流文件名:ccl.din64KB时:相联度对实验的影响相联度12481632不命中率1.97%1.15%0.99%0.93%0.92%0.91%256KB时:相联度对实验的影响相联度12481632不命中率0.98%0.78%0.74%0.73%0.71%0.71%F面折线图显示的分别是 Cache容量为64KB和256KB下相联度对不命中率的影响(地址流文件名:ccl.dinSche容量为64KB时,相联度对不命中率的影响不命中率由折线图可以看出:当 Cache容量为64KB时,相联度越大,不命中率越并且在1路到2路下降趋势明显,2路之后下降的趋势不算太明显。C

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论