版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验项
循功展开及指令调度
目
名称
实验1.加深对循环级并行性、指令调度技术、循环展开技术以及寄存器换名技术的理解;
目的及2.熟悉用指令调度技术来解决流水线中的数据相关的方法;
要求3.了解循环展开、指令调度等技术对CPU性能的改进。
实验(1)I.用指令调度技术解决流水线中的结构相关与数据相关
内容(2)用MIPS汇编语言编写代码文件*§程序中应包括数据相关与结构相关(假设:加
法、乘法、除法部件各有2个,延迟时间都是3个时钟周期)
(3)通过Configuration菜单中的^Floatingpointstagesw选项,把加法、乘法、除法
部件的个数设置为2个,把延迟都设置为3个时钟周期;
(4)用winMIPS64运行程序。记录程序执行过程中各种相关发生的次数、发生相关的
指令组合,以及程序执行的总时钟周期数:
(5)采用指令调度技术对程序进行指令调度,消除相关;
(6)用winMIPS64运行调度后的程序,观察程序在流水线中的执行情况,记录程序执
行的总时钟周期数;
根据记录结果,比较调度前和调度后的性能。论述指令调度对于提高CPU性能的意义。
(1)2.用循环展开、寄存器换名以及指令调度提高性能
(2)用MIPS汇编语言编写代码文件*.s,程序中包含一个循环次数为4的整数倍的简
单循环;
(3)用winMIPS64运行该程序。记录执行过程中各种相关发生的次数以及程序执行的
总时钟周期数;
(4)将循环展开3次,将4个循环体组成的代码代替原来的循环体,并对程序做相应的
修改。然后对新的循环体进行寄存器换名和指令调度;
(5)用winMIPS64运行修改后的程序,记录执行过程中各种相关发生的次数以及程序
执行的总时钟周期数;
根据记录结果,比较循环展开、指令调度前后的性能。
1.用指令调度技术解决流水线中的结构相关与数据相关
1)代码:
divff2,f5,f6
divffl,f2,f6
divff3,fi,f5
divffO,f4,f7
addffl4,fO,f6
实验步addffl5,f5,f7
骤muitff20,f4,f6
multff21,f5,f7
2)设置运算部件个数以及运算时钟周期数
FloatingPointStageConfigura...
Count:Delay:
AdditionUnits:e
MultiplicationUnits:2
DivisionUnits:2
图i
。ClockCycleDx“raa
FdpniQ
c^nzni
c^tzni
2
(S4OJ1/5
gffUJOJS
gfnmn
i⑶乂JS
图2.Pipeline图
以下为出现的数据相关
由于只有两个除法部件,所以出现了功能部件的冲突。总的执行周期是38指令调度后代码:
将无关指令放在一起执行,相关指令分开尽量避免数据相关
divff2,f5.f6
multff20,f4,f6
multff21,f5,f7
divffl,f2,f6
addffl5,f5,f7
divffi,fkf5
addffl4,fO,f6
NClockCys&vt&Mi
0
mari
—ar:
ww*JD
VUUHMH
图5.Pipeline图
X
Total:
35Cycle(s)executed.
IDexecutedby26Instruction⑸.
2Instruction(s)currentlyinPipeline.
Hardwareconfiguiraition:
Memorysize:32768Bytes
faddEX-Stages:2,requiredCycles:3
fmulEX-Stages:2,requiredCycles:3
fdivEX-Stages:2,requiredCycles:3
Forwardingenabled.
StalIs:
RAWstalls:318.57%ofallCycles),thereof:
LDstalls:010.00»ofRAWstalls)
8ranchZJumpsfalls'0(0erfRAWstalls)
Floatingpointstalls:3(10000^ofRAWstalls)
WAWstalls:0(0.00^»ofallCycles)
Structuralstalls:0(0.00%ofallCycles)
Controlstalls:0(0.00^ofallCycles)
Trapstalls:7(2000^ofallCycles)
Total:10Stall⑸(2857NofallCycles)
Conditionai1Biramches):
Total:0(0.00^ofallInstructions),thereof:
taken:0(0.00^ofallcondBranches)
nottaken:0(O.OOz^ofallcond.Branches)
图6.Statistics图
总执行时钟周期为35个。
指令调度后,数据相关减少了,总时钟周期数减少了,效能提高了。调度前的时钟周期数为
38,调度后的时钟周期数减少为35,加速比=38/35=1.08
2.用循环展开、寄存器换名以及指令调度提高性能
带循环指令
代码:求四个1相加的和,结果存在r2中
.text
.globalmain
main:addirl,rO,#4
addir2,rO,#0
Loop:sgtr3,rl,rO
bnezr3,Subl
trap0Subl:
addir2,r2,#1
subirl,rl,#1
jLoop
结果:总时钟周期是42个,5rawstalls,循环了4次,结果
r2=4
IKAJi-OxOOOCOUC
(VOockCyd«
1R-0x20420001
oxaoocwuo
Inmjdow/CycbtAHI・OxOOOCOOOO
B-OxOOOCOOOO
OxOOOCOOOO
8TA-OiOOOCOOOO
■ILEDALU-OxQOOCOOOO
ALUMI-OxOOOCOOUO
yMFPSR-OxOOOCOOOO
OxODOCOOOO
SDR-0mMe0000
SXfOil-OkOOOCPUQO
aAiil/V.OklLDR,OxODOCQOOO
LI«<I«Ox330COOOO
|L«POxODOCQOOO
QMOOOCOOOO
Z
UxUJQCWOO
"如1川DxQOOCOOQO
DxOOOCOOOO
tms,159
Tot«l
FX
©3d>256~ctEi】
2cwwiljFnP^ifinv
Hardvarccom!igur«tice
UdcFX-StagH1requmjC>cbc?
iaufX$M0»t1.CyOtot5
kMX5即ieBCwtei13
ForwoR>^crated
Stella后r,r
SIHtttcf^CfdHlIhsecf
92Qeootgw…
J"i"lOOgaRA^…
r»-Af—rsa>>>i-4-*
图7
循环展开:
代码:
.text
.globalmain
main:
addiikr0,#4
addir2,r(),#()
addir2,r2.#1
subirl,rl,#l
addir2,r2,#l
subirl,rl,#l
addi22#I
subirl,rl,#l
addir2,r2,#l
subirl,rl,#l
trap0
结果:总时钟周期是15个,0rawstalls,执行了4次,结果r2=4
XJUkK*UXUUUUU1ZC
0x00000000
0x00000000
ln»huc*oi»»/C>c*MAKI-0x00000000
B・0x00000000
皿
i2iO(hOBK1-0x00000000
BTi-0x03000000
Mr2j2Q>1ALU-0x09000000
ALUKI-OxOOOOOOOO
(ubif1j1.0KlFPSR-oxooooaooo
DKAR・0x00000000
血
r272Ai1I',:■MJSDR-oxooooaooo
SORHI>OxOOOOOOOO
i,1,L0k1UIOKL;U>R・OxOQOQQOOO
LDRKT-OxOOOOaOQO
0x00000000
OxODOSOOC
•ubiUlOkl
R■■OxO3CC:CDC
血,212&10x00000000
-1□1doxoaoooooc
Tot,】
>T4P<M)15CycM»l«NVCsMd
IDmoMd》11kuiMcacr(i|
2lrt»*wc*q»<r|nRo>«trw□a
H«rdv«r«ccnfiguration:
32766BVM
UddEKSU0M1teqjiedCyciKZ
twUEX-S-m^IwQiMdC*dw5
t*«<XStagestrwxcdCjKbi19
Forwaw^enabled
Stalls
RAWil0|D00*daCydMl
•4.-AA*•一一•.■・
图8
原因的对比:
是因为LOOP指令执行完后会有一个nop指令的延迟。
addir2j20x1
zmaaFW1
subir1j1,0x1
iLoopIF
nopIF(aborted
图9
多Cache一致性:
实验目的
1.加深对多CACHE一致性的理解。
2.进一步掌握解决多CACHE一致性的目录协议和监听协议的基本思想。
3、掌握在各种情况下,目录协议和监听协议是如何工作的。给出进行操作的类
型以及CACHE决状态的变化情况
模拟器使用方法简介(目录式)
该模拟器模抵4个CPU(A.B.C.D)访存的工作过程。每个CPU中都有一
个Cache,该Cache包含有4个块,其块地址为0-3。分布式存储器中有32个块,
其块地址为0-31。每个块状态用色块表示,其中灰色为“无效”状态,淡青色为
“共享”状态,橘红色为“独占”。主存中块的状态由其右边的目录项的颜色
来表示,未缓冲状态由黄色来表示,其他两种状态同Cache块。
对于每一个CPU都可以指定所要进行的访问是读还是写(从列表中选),并在输入框
中输入所要访问的主存块号,然后用鼠标单击在其右边的标有“I”的按钮,模抵器就将开
始演示该访问的工作过程。
|___1...
多CuchQ一致性梗依器——目录法
5“加
图10
模拟器简介(监听协议)
该模拟器模抵4个CPU(A.B.C.D)访存的工作过程。每个CPU中都有一
个Cache,该Cache包含有4个块,其块地址为0-3。集中共享存储器中有32个
块,其块地址为0-31。每个块状态用色块表示,其中灰色为“无效”状态,淡青
色为“共享”状态,橘红色为“独占”。
对于每一个CPU都可以指定所要进行的访问是读还是写(从列表中选),并在输入框
中输入所要访问的主存块号,然后用鼠标单击在其右边的标有“I”的按钮,模抵器就将开
始演示该访问的工作过程。
二忙”
图11
实验步骤(目录协议)
对于以下访问序目录协议所进行的操作
1.读2不命中;3本地:向宿主结点发读不命中(A,6)消息;4.宿主:
CPUA读第6块把数据块送给本地结点;5.共享集合为:{A}
读;2.不命中;3.本地:向宿主结点发读不命中(B,6)消息;
CPUB读第6块4.宿主:把数据块发送给本地结点;5.共享集合为:{A}+{B}
4.宿主:把数据块发送给本地结点;5.共享集合为:{A}+{B}
A-4--|«Yt4^4471I4«、工ZAA-1-nf.Z,-|-1-=-M-A_.,▲、,c、
1.读;2.不命中;3.本地:向宿主结点发读不命中(D,6)消息;
CPUD读第6块4.宿主:把数据块发送给本地结点;5.共享集合为:{A,B)+{D}
4.宿主:把数据块发送给本地结点;5.共享集合为:{A,B}+{D}
44fn4-T314-<4/-^./,人.X*111.,八・l44-人、1一,▲.
1.写;2.命中;3.本地:向定主结点发写命中(
,6)消息,宿主:向远程结点A发作废(6)消息,宿主:向远程
CPUB写第6块
结点D发作废(6)消息:4.共享集合为:{B}
1读;2.不命中;3.本地:向宿主结点发读不命中(C,6)消息;
4.宿主:给远程结点发取数据块(6)的消息;5.远程:把数据块
CPUC读第6块
送给宿主结点;6.宿主:把数据块送给本地结点;7.共享集合为:
iRi-i-iri
1.写;2.不命中;3.本地:向宿主结点发写不命中(D,20)消息;4.宿
CPUD写第20块主:把数据块发送给本地结点;5.共享集合为:{D}
1.写;2.不命中;3.本地:向宿主结点发写不命中(A,20)消息;4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年非全日制用工劳动合同
- 护士人力资源研究
- PTCD引流管居家护理
- T∕CCMI 36-2025 双极板成形伺服闭式多连杆压力机
- 《数控机床加工零件》课件-螺纹车刀与车螺纹加工要领1
- 2025年巴中市恩阳区招聘综合应急救援队员考试真题
- 2025年绥化青冈县乡镇卫生院招聘医学相关专业毕业生真题
- 2025年福州国有资产投资控股有限公司招聘真题
- 2026年胃壁间质炎性病变诊疗试题及答案(消化内科版)
- 2026年巢湖市文化局系统事业单位人员招聘考试备考试题及答案详解
- GB/T 46562-2025能源管理体系多组织共用能源管理体系实施指南
- 成都市人事考试中心2025年下半年招考编外工作人员易考易错模拟试题(共500题)试卷后附参考答案
- 2025年慢性乙型肝炎治疗指南
- 2025年湖北省仙桃市小升初数学试卷(含答案)
- 2025大学党校入党积极分子网络培训考试题库【含答案】
- 2025高中英语词汇5500词汇手册
- 知到《卫生统计学(湖南中医药大学)》智慧树网课完整版章节测试答案
- 园林绿化养护标准 DG-TJ08-19-2023
- JJF 2309-2025重点排放单位碳计量审查规范
- 仓储管理信息系统操作流程及规范
- 基于PLC的变电所智能型无功补偿控制系统设计
评论
0/150
提交评论