2010年第12题
下列选项中,能缩短程序执行时间的措施是( )
I. 提高 CPU 时钟频率
II. 优化数据通路结构
III. 对程序进行编译优化
A. 仅 I 和 II \qquad B. 仅 I 和 III \qquad C. 仅 Ⅱ 和 III \qquad D. I、II 和 III
解析
本题考察计算机组成原理和计算机体系结构中与程序执行时间优化相关的知识点。程序执行时间(通常指 CPU 时间)是衡量计算机性能的关键指标,其计算公式为:
CPU 时间
=
指令数
×
CPI
×
时钟周期时间
\text{CPU 时间} = \text{指令数} \times \text{CPI} \times \text{时钟周期时间}
CPU 时间=指令数×CPI×时钟周期时间
其中:
- 指令数:执行程序所需的总指令条数。
- CPI(Cycles Per Instruction):每条指令的平均时钟周期数,反映指令执行效率。
- 时钟周期时间:CPU 时钟周期的持续时间(单位为秒),与时钟频率(单位为 Hz)成反比,即 (\text{时钟周期时间} = \frac{1}{\text{时钟频率}})。
要缩短程序执行时间,必须减少该公式的乘积值。题目中的三个选项分别针对公式中的一个或多个变量进行优化。下面详细解释每个选项考查的知识点。
- CPU 时钟频率:
- 时钟频率是 CPU 每秒的时钟周期数,直接影响时钟周期时间。提高时钟频率会降低时钟周期时间(例如,频率从 2 GHz 提高到 3 GHz,周期时间从 0.5 ns 减少到约 0.33 ns),从而直接减少 CPU 时间。
- 时钟频率与性能的线性关系。提高频率是硬件层面的优化,但受限于物理约束(如功耗、散热),在理想模型中,频率提升会缩短执行时间。
- 数据通路结构:
- 数据通路是 CPU 中数据流动的路径,包括寄存器、ALU、总线等组件。优化数据通路(如采用流水线、超标量架构或增加硬件并行单元)可以减少 CPI。例如:
- 流水线技术:允许多条指令重叠执行,降低平均 CPI(理想 CPI 可接近 1)。
- 增加功能单元:减少指令等待时间,降低 CPI。
- 微架构设计对 CPI 的影响。优化数据通路是硬件设计的关键,旨在提高指令吞吐率。
- 数据通路是 CPU 中数据流动的路径,包括寄存器、ALU、总线等组件。优化数据通路(如采用流水线、超标量架构或增加硬件并行单元)可以减少 CPI。例如:
- 对程序进行编译优化:
- 编译优化是编译器在生成机器代码时应用的变换,以减少指令数或降低 CPI。常见技术包括:
- 减少指令数:如循环展开(减少分支指令)、常量传播、死代码消除。
- 降低 CPI:如指令调度(减少流水线停顿)、寄存器分配(减少内存访问延迟)。
- 编译优化作用于指令级别,是软硬件协同的体现。
- 编译优化是编译器在生成机器代码时应用的变换,以减少指令数或降低 CPI。常见技术包括:
由以上知识可知,题目所有选项均能缩短程序执行时间,其中:
- I 和 II 是硬件优化,直接影响公式的时钟周期时间和 CPI。
- III 是软件优化,间接影响指令数和 CPI。
- 三者独立或协同作用时,均能减少 CPU 时间,无冲突。
本题答案:D