给定一个指令集其中一半指令的cpi 变为原来的一半但是时钟周期上升了百分之十这个新实现比原来快了多少
要计算新实现比原来快了多少,需要知道原来的指令执行时间和新实现的指令执行时间。
假设原来的指令执行时间为T,那么新实现的指令执行时间为0.5T(因为一半指令的cpi变为原来的一半)。
原来的时钟周期为C,那么新实现的时钟周期为1.1C(因为时钟周期上升了百分之十)。
原来的执行时间可以表示为:T = CPI * C,其中CPI为平均每条指令的时钟周期数。
新实现的执行时间可以表示为:0.5T = (CPI/2) * (1.1C),其中CPI/2为新实现的平均每条指令的时钟周期数。
将上述两个等式联立,可以得到:T = (CPI/2) * (1.1C)。
将T代入原来的执行时间等式中,可以得到:T = CPI * C = (CPI/2) * (1.1C)。
化简上述等式,可以得到:CPI * C = (CPI/2) * (1.1C)。
消去C,可以得到:CPI = (CPI/2) * 1.1。
化简上述等式,可以得到:1 = (CPI/2) * 0.1。
解得:CPI = 2。
所以,新实现比原来快了2倍。
原文地址: https://www.cveoy.top/t/topic/hFm6 著作权归作者所有。请勿转载和采集!