每周期指令
在计算机体系结构中,每周期指令(IPC,instructions per cycle ,又称 instructions per clock)是衡量处理器性能的一个指标:每个时钟周期执行的平均指令数。它是每条指令周期的乘法逆数。[1]
说明
对IPC的计算
通过运行一组代码,计算完成运行代码所需的机器级指令的数量,然后使用高性能计时器计算在实际硬件上完成运行代码所需的时钟周期数,即可完成IPC的计算。最终结果由指令数除以CPU时钟周期数得来。
处理器的每秒指令(IPS)和每秒浮点运算次数(FLOPS)可以通过将每个周期的指令数乘以相关处理器的时钟频率(每秒的周期数,以Hz为单位)得出。每秒指令数是处理器可能性能的近似指标。
对于给定的处理器,每个时钟执行的指令数不是常数。这取决于运行的特定软件如何与处理器乃至整个机器(尤其是存储器层次结构)进行交互。 但是,某些处理器功能倾向于导致设计的IPC值高于平均水平,因为它们存在多个算术逻辑单元(ALU是可以执行基本算术和逻辑运算的处理器子系统)和短管线。当比较不同的指令集时,与使用相同芯片技术实现更复杂的指令集相比,更简单的指令集可能会导致更高的IPC数字。但是,更复杂的指令集可能能够以更少的指令实现更多有用的工作。
参考文献
- ^ John L. Hennessy, David A. Patterson. "Computer architecture: a quantitative approach (页面存档备份,存于互联网档案馆)". 2007.