Performance 指令完成率Vs.指令吞吐量Vs.每时钟指令数

Performance 指令完成率Vs.指令吞吐量Vs.每时钟指令数,performance,assembly,cpu,computer-science,cpu-architecture,Performance,Assembly,Cpu,Computer Science,Cpu Architecture,据我所知: ICR(指令完成率):是(指令的数量/时间) 指令吞吐量:通常是每个时钟周期完成的指令数的平均值 IPC(每个时钟的指令数):是完成每个时钟周期的指令数。(也许这通常是平均值?) 我对这些定义感到困惑,我肯定在寻求澄清。它们甚至可能是错的,我一直很难找到它们的明确定义 指令完成率如何影响处理器的整体性能 与IPC相比,指令吞吐量如何受到影响 指令吞吐量通常用于特定类型的指令,用于在结构危险的情况下提供指令调度信息。例如,有人可能会说“这个完全流水线乘法器的延迟为三个周期,指令吞

据我所知:

ICR(指令完成率):是(指令的数量/时间)

指令吞吐量:通常是每个时钟周期完成的指令数的平均值

IPC(每个时钟的指令数):是完成每个时钟周期的指令数。(也许这通常是平均值?)

我对这些定义感到困惑,我肯定在寻求澄清。它们甚至可能是错的,我一直很难找到它们的明确定义

  • 指令完成率如何影响处理器的整体性能

  • 与IPC相比,指令吞吐量如何受到影响


指令吞吐量通常用于特定类型的指令,用于在结构危险的情况下提供指令调度信息。例如,有人可能会说“这个完全流水线乘法器的延迟为三个周期,指令吞吐量为一个”。重复率与吞吐量成反比

IPC描述每个周期的性能,而指令完成率的定义直接描述性能(与时钟频率无关)


(当然,“指令”的性能值取决于指令集、编译器和应用程序——所有这些都会影响指令的数量(和类型)为完成任务而执行的指令。此外,不同指令的相对性能可能取决于硬件实现;这反过来会导致编译更改,有时会导致应用程序编程更改,甚至ISA更改。)

指令吞吐量通常用于特定类型的指令,旨在提供结构危险情况下的指令调度信息。例如,有人可能会说“这个完全流水线乘法器的延迟为三个周期,指令吞吐量为一个”。重复率与吞吐量成反比

IPC描述每个周期的性能,而指令完成率的定义直接描述性能(与时钟频率无关)


(当然,“指令”的性能值取决于指令集、编译器和应用程序——所有这些都会影响指令的数量(和类型)为完成任务而执行的指令。此外,不同指令的相对性能可能取决于硬件实现;这反过来会导致编译更改,有时会导致应用程序编程更改,甚至ISA更改。)

@PeterCordes这也是我的想法,这让我觉得我没有正确定义它们。无论我看哪里,我似乎都能得到相同的答案。不,我认为你很好。不同的作者使用不同的名称来表示真正相同的指标并不罕见。如果选择谈论ICR与IPC之间的关系有任何微妙的含义,那就是由一个给定的CPU运行一个给定的程序来实现的,我很确定他们还没有足够的知名度,以至于你仅仅通过阅读论文,甚至是图表上的标题都无法了解到。我当然可以想象在英语句子中使用短语“指令吞吐量”而不是说“IPC”;这听起来很自然。请结束这个问题,在这里缓和一下:@PeterCordes这也是我的想法,这让我觉得我没有正确定义它们。无论我看哪里,我似乎都能得到相同的答案。不,我认为你很好。不同的作者使用不同的名称来表示真正相同的指标并不罕见。如果选择谈论ICR与IPC之间的关系有任何微妙的含义,那就是由一个给定的CPU运行一个给定的程序来实现的,我很确定他们还没有足够的知名度,以至于你仅仅通过阅读论文,甚至是图表上的标题都无法了解到。我当然可以想象在英语句子中使用短语“指令吞吐量”而不是说“IPC”;这听起来很自然。请关闭问题并转到此处: