指令级并行:挖掘计算机性能的秘密

0 下载量 152 浏览量 更新于2024-06-29 收藏 3.21MB PPTX 举报
"计算机系统结构第四章主要探讨了指令级并行的概念和技术,旨在通过硬件和软件的结合提升处理机性能。本章介绍了指令级并行的实现方式,包括流水线处理机的实际CPI计算、循环级并行、指令调度以及解决冲突的方法。" 在计算机系统结构中,指令级并行(ILP)是一种重要的性能优化手段,它允许在单个处理器中同时处理多个指令,从而提高系统的执行效率。几乎所有的现代处理机都采用了流水线技术,以实现指令的重叠执行。流水线CPI(Cycle Per Instruction)是衡量其性能的关键指标,由理想CPI加上由于停顿(如结构冲突、数据冲突和控制冲突)引起的额外时钟周期数组成。降低这些停顿可以提高Instructions Per Cycle (IPC),即每个时钟周期内完成的指令数。 循环级并行是开发指令级并行性的常见方法,包括循环展开和使用向量指令及向量数据表示,以增强循环内部的并行性。指令调度,无论是静态还是动态,都是为了管理指令之间的相关性和冲突,以减少停顿。例如,数据相关(名相关、数据相关、控制相关)可能导致的冲突(HAZARDS或冒险),需要通过定向传送技术和指令调度来解决。 保持数据流和异常行为的正确性是确保程序正确执行的基础。数据流描述了数据从产生到消费的过程,而异常行为的不变性意味着无论指令执行顺序如何变化,程序中的异常情况不应发生变化,或者至少不应产生新的异常。 在解决流水线冲突时,结构冲突通常通过插入停顿(流水线气泡)来处理,而数据冲突则可以利用定向传送技术,有时结合停顿来避免。指令调度,特别是在乱序执行的流水线中,是防止和解决控制相关问题的关键,通常由编译器在编译阶段进行优化。 总结起来,计算机系统结构第四章深入讨论了指令级并行性及其在处理器设计中的应用,涵盖了从基本概念到高级策略,如指令调度和冲突解决,这些都是提高处理器性能和效率的核心技术。通过理解并巧妙地运用这些技术,可以显著提升计算机系统执行复杂任务的能力。
2023-05-25 上传
计算机系统结构作业题解 作1.2 如有一个经解释实现的计算机,可以按功能划分成4级。每一级为了执行一条指令需要下一级的N条指令解释。若执行第一级的一条指令需K(ns)时间,那么执行第2、3、4级的一条指令各需要用多少时间(ns)? 第1章 解: 第二级的 条指令需第1级的N条指令解释 第二级的一条指令执行时间为NKns; 第三级的一条指令执行时间为N2Kns; 第四级的一条指令执行时间为N3Kns。 计算机系统结构作业题解("指令"文档)共127张全文共127页,当前为第1页。 本题有两个问题应特别注意:第一个问题是"上一级"与"下一级"的关系,即哪是上一级,哪是下一级?在图1.1中第3级是第2级的"上一级",第1级又是第2级的"下一级"。第二个问题是该计算机是一个"经解释实现的计算机",上一级的程序在下一级上实现不是经翻译完成,只能是解释。 第1级 N3条指令解释 第2级 N2条指令解释 第3级 N条指令解释 第4级 一条指令 上级 下级 计算机系统结构作业题解("指令"文档)共127张全文共127页,当前为第2页。 作1.3 有一个计算机系统可按功能划分成4级,各级的指令都不相同,每一级的指令都比其下一圾的指令在效能上强M倍,即第i级的一条指令能完成第i-1级的M条指令的计算量。现若需第i级的N条指令解释第i+1级的一条指令,而有一段第1级的程序需要运行Ks,问在第2、3和4级上的一段等效程序各需要运行多长时间(s)? 解: 第2级上的一段等效程序运行时间为: 第3级上的一段等效程序运行时间为: 第4级上的一段等效程序运行时间为: 计算机系统结构作业题解("指令"文档)共127张全文共127页,当前为第3页。 作1.7 从机器(汇编)语言程序员看,哪些对应用程序员透明? 指令地址寄存器,指令缓冲器,时标发生器,条件码寄存器,乘法器,主存地址寄存器,磁盘外设,先行进位链,移位器,通用寄存器,中断字寄存器。 答:对机器语言程序员透明,指的是这些器件是机器语言程序员不可修改、不可控制。因此指令缓冲器,时标发生器,乘法器,先行进位链,移位器。 计算机系统结构作业题解("指令"文档)共127张全文共127页,当前为第4页。 作1.6 什么是透明性概念?对计算机系统结构,下列哪些是透明的?哪些是不透明的? 存贮器的模m交叉存取;浮点数据表示;I/O系统是采用通道方式还是外围处理机方式;数据总线宽度;字符行运算指令;阵列运算部件;通道是采用结合型的还是独立型的;PDP一1l系列中的单总线结构;访问方式保护;程序性中断;串行、重叠还是流水控制方式;堆栈指令;存贮嚣最小编址单位;Cache存贮器。 分析:有关系统结构属性所包括的内容,对系统结构都不透明。 计算机系统结构作业题解("指令"文档)共127张全文共127页,当前为第5页。 对于计算机系统结构透明的是:存储器的模m交叉存取、数据总线宽度、阵列运算部件、通道是采用结合型还是独立型、PDP-11系列的单总线结构、串行、重叠还是流水控制方式、Cache存储器。 对于计算机系统结构不透明的是:浮点数据表示、 I/O系统是采用通道方式还是外围处理机方式、字符型运算指令、访问方式保护、程序性中断、堆栈指令、存储器最小编址单位。 计算机系统结构作业题解("指令"文档)共127张全文共127页,当前为第6页。 例1.1 假设将某系统的某一部件的处理速度加快到10倍,但该部件的原处理时间仅为整个运行时间的40%,则采用加快措施后能使整个系统的性能提高多少? 解:由题意可知 fe=0.4, re=10, 根据Amdahl定律 计算机系统结构作业题解("指令"文档)共127张全文共127页,当前为第7页。 作1.13 假设高速缓存Cache工作速度为主存的5倍,且Cache被访问命中的概率为90%,则采用Cache后,能使整个存储系统获得多高的加速比? 解:fe=0.9 ,re=5 计算机系统结构作业题解("指令"文档)共127张全文共127页,当前为第8页。 作1.11 某工作站采用时钟频率为15MHz、处理速率为 10MIPS的处理机来执行一个巳知混合程序。假定每次 存储器存取为1周期延迟、试问: (1) 此计算机的有效CPI是多少? (2) 假定将处理机的时钟提高到30MHz,但存储器子 系统速率不变。这样,每次存储器存取需要两个时钟 周期。如果30%指令每条只需要一次存储存取,而另 外5%每条需要两次存储存取,还假定已知混合程序 的指令数不变,并与原工作站兼容,试求改进后的处 理机性能。 解 (1) 计算机系统结构作业题解("指令"文档)共127张全文共127页,当前为第9页。 (2) 依题意可知:30%的指令需要一次存储存取,则 这些指令在处理器提高时钟频率之后需要增加1个时 钟周期;另外5%