程序的指令计数(Instruction Count)由程序本身、ISA(指令集架构)和编译器决定。这表示一个程序中包含的指令数量受到程序编写方式、计算机体系结构和编译器的影响。
每条指令的平均周期数(Average cycles per instruction,CPI)是由CPU硬件决定的。不同的指令可能需要不同的时钟周期数来执行,因此平均CPI受指令混合(instruction mix)的影响。
指令混合是指程序中不同类型的指令的比例。某些指令可能需要更多的时钟周期来执行,而其他指令可能需要较少的周期。平均CPI是这些不同指令的CPI的加权平均,其中权重由它们在指令混合中的相对频率决定。我们可以用以下公式来计算: