根据CPI,指令等计算程序的执行时间

时间:2014-11-27 07:05:40

标签: performance assembly mips cpu

我试图计算应用程序的执行时间。假设在存储器访问指令上发生唯一的停顿惩罚(100个周期是惩罚)。 我怎么能用这个信息在几秒钟内找出执行时间?

CPI (CPUCycles?) = 1.0
ClockRate = 1GHZ
TotalInstructions = 59880
MemoryAccessInstructions = 8467
CacheMissRate = 62% (0.62) (5290/8467)
CacheHits = 3117
CacheMisses = 5290
CacheMissPenalty = 100 (cycles)

假设没有其他处罚。

1 个答案:

答案 0 :(得分:0)

totalCycles = TotalInstructions + CacheMisses * CacheMissPenalty?

我认为缓存命中成本与其他操作码相同,因此它们包含在TotalInstructions中。

那是588880个周期,1GHz是每秒1000000个周期。 因此代码执行时需要0.58888ms(5.8888e-7秒)。

这个值当然纯粹是理论估计,因为现代CPU不能像那样工作(1指令= 1个周期)。如果您对真实世界的价值感兴趣,只需对其进行分析即可。