- 1、本文档共62页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
tomasulo算法流水线控制issuefpoperation
小结 可通过软件或硬件来挖掘指令级并行潜力 循环级并行是最容易判断的 程序内在的相关性限制了用软件方法挖掘程序的并行性 编译器的数据相关性分析结果,确定了是否可以进行循环展开 当对存储器单元引用时,数据相关分析很困难 硬件方法挖掘ILP 在编译阶段无法确定的相关性,可以在程序执行时,用硬件方法判定 这种方法还可以使得程序代码在其他机器上有效地执行 记分牌的主要思想是:允许stall后的指令继续进行处理 可以out-of-order execution = out-of-order completion ID 段检测结构相关和WAW相关 CDC 6600 Scoreboard 编译器优化,加速比可达到1.7,手工优化加速比可达到 2.5 ,其存储系统较慢 (no cache)限制了性能的发挥 6600 scoreboard的缺陷: 没有定向数据通路 指令窗口较小,仅局限于基本块内的调度 功能部件数较少,容易产生结构相关,特别是其Load store操作也是用IU部件完成的 结构冲突时不能发射 WAR相关是通过等待解决的 WAW相关时,不会进入IS阶段 指令级动态调度方案:Tomasulo 动态调度方案之二:Tomasulo Algorithm 该算法首次在 IBM 360/91上使用( CDC6600推出三年后) 目标: 在没有专用编译器的情况下,提高系统性能 IBM 360 CDC 6600 ISA的差别 IBM360只有 2位寄存器描述符 vs. CDC 6600寄存器描述符3位 IBM360 4个FP 寄存器 vs. CDC 6600 8个 IBM 360 有memory-register 操作 为什么研究? Alpha 21264, HP 8000, MIPS 10000, Pentium II, PowerPC 604,… Tomasulo Algorithm vs. Scoreboard 控制和缓存分布在各部件中 vs. 控制和缓存集中在记分牌 FU 缓存称为 “reservation stations”; 保存待用操作数 指令中的寄存器在RS中用寄存器值或指向RS的指针代替。称为 register renaming ; 避免 WAR, WAW hazards RS多于寄存器,因此可以做更多编译器无法做的优化 传给FU的结果,从RS来而不是从寄存器来,FU的计算结果通过Common Data Bus 以广播方式发向所有的功能部件。 Load和Store部件也看作带有RS的功能部件 可以跨越分支,允许FP操作队列中的FP操作不仅仅局限于基本块 Tomasulo Organization Tomasulo Organization (cont.) Reservation Station 结构 Op: 部件所进行的操作 Vj, Vk: 源操作数的值 Store 缓冲区有V域,用于存放要写入存储器的值 A:用于存放存储器地址。开始存立即数,计算出有效地址后,存放有效地址 Qj, Qk:产生源操作数的RS 注:没有记分牌中的准备就绪标志, Qj, Qk=0 = ready Store 缓存区只有Qi表示产生结果的RS Busy: 标识RS或FU是否空闲 Register result status—如果存在对寄存器的写操作,指示对该寄存器进行写操作的部件. Qi: 保留站的编号 Tomasulo 算法的三阶段 1. Issue—从FP操作队列中取指令 如果RS空闲(no structural hazard), 则控制发射指令和操作数 (renames registers). 消除WAR,WAW相关 2. Execution—operate on operands (EX) 当两操作数就绪后,就可以执行 如果没有准备好,则监测Common Data Bus 以获取结果。通过推迟指令执行避免RAW相关 3. Write result—finish execution (WB) 将结果通过Common Data Bus传给所有等待该结果的部件; 表示RS可用 通常的数据总线: data + destination (“go to” bus) Common data bus: data + source (“come from” bus) 64 bits 数据线 + 4位功能部件源地址( FU source address) 产生结果的部件如果与RS中等待的部件匹配,就进行写操作 广播方式传送 Tomasulo 算法流水线控制 Execute FP Operation wait until: (RS[r].Qj=0) and (RS[r].Qk=0
您可能关注的文档
- minitab软件应用——统计学专业-南方医科大学.doc
- mimo无线通信系统的统一建模-read.pdf
- microsoft商业体系结构.ppt
- mms与goose网合一的组网方式.doc
- migrantepidemiology定义对移民人群的疾病分布进行研究.ppt
- mrp能力需求计划.ppt
- mtp升级版涵盖这些模块.doc
- muirhousemedicalgroup缪尔豪斯医疗中心.doc
- nandflash的坏块处理-得技通电子单片机编程器.ppt
- newzealandhealthsystem新西兰健康系统-我们都在新西兰.pdf
- 2022二级造价工程师考试真题及答案5章.pdf
- 2022届江西省九校高三上学期期中联考化学试卷.pdf
- 2022年大学生安全知识竞赛试题库及答案(精选150题) .pdf
- 2022一建《建设工程法规及相关知识》考前测试B卷(附答案).pdf
- 2022年普陀区中考历史二模.pdf
- 2022国开合同法形考任务3.pdf
- 2022承担责任书_原创精品文档.pdf
- 2022年新高考全国卷1英语阅读理解C篇深度解读含译文.pdf
- 2022年哈尔滨工业大学(深圳)数据科学与大数据技术专业《操作系统》科目期末试卷B(有答案).pdf
- 2022-2023学年山西省长治市壶关县实验中学高二化学月考试题含解析.pdf
文档评论(0)