据我所知:
ICR(指令完成率):是(指令数/时间)
指令吞吐量:通常是每个时钟周期完成的指令数的平均值。
IPC(每个时钟的指令):每个时钟周期完成的指令数量。 (也许这通常是一个平均值?)
我对这些定义感到困惑,我当然希望澄清一下。他们甚至可能是错的,我一直很难找到明确的定义。
指令完成率如何影响处理器的整体性能?
与IPC相比,指令吞吐量如何受到影响?
非常感谢任何帮助。
答案 0 :(得分:2)
指令吞吐量通常用于特定类型的指令,并且用于在结构危险的背景下提供指令调度信息。例如,有人可能会说"这个完全流水线的乘法器具有三个周期的延迟和一个"的指令吞吐量。重复率是吞吐量的倒数。
IPC描述了每周期性能 ,而您对指令完成率的定义直接描述了性能(与时钟频率无关)。
(当然,"指令"的性能值取决于指令集,编译器和应用程序 - 所有这些都会影响为完成任务而执行的指令的数量(和类型)此外,不同指令的相对性能可能取决于硬件实现;反过来,这可能会推动编译更改,有时还会改变应用程序编程,甚至会发生ISA更改。)