[仅供参考]
1.Amdahl's Law:
加速比Speedup与两个因素有关:Fraction[enhanced](计算时间中可以得到改进的
部分),Speedup[enhanced](使用改进的执行模式所获得的性能收益)
Speedup[overall]=1/((1-Fraction[enhanced])+Fraction[enhanced]/Speedup[
enhanced])
2.The example on p41:考虑对用于web服务的服务器系统的处理器的一个改进。在
web服务应用程序的计算中,新的处理器比原来的处理器快10倍。如果处理器40%的
时间用于计算,60%的时间等待I/O。求整体的加速比。
3.参见p41:应用Amdahl定律时,最常犯的错误是混淆了“fraction of time
converted to use an enhancement”和“fraction of time after enhancement
is in use”。
3.题意:考虑41页的例子,我们对计算机的某种执行模式做了改进,改进因子为10
。改进的模式用了50%的执行时间。
问题a.我们从改进的模式获得的加速比为多少?
解:50%是改进之后改进的模式占用的时间,也就是说改进之后改进的模式占用的时
间和未经改进的部分占用的时间相等,则有下列等式:
Fraction[enhanced]/Speedup[enhanced]=1-Fraction[enhanced]
Fraction[enhanced]/10=1-Fraction[enhanced]
Fraction[enhanced]=10/11
根据Amdahl定律有
Speedup[overall]=1/((1-10/11)+(10/11)/10)=5.5
问题b.原来执行时间的被转换成快速模式的百分比是多少?
解:Fraction[enhanced]=10/11=91%
不是类,题目中给出的50%是“fraction of time after enhancement is in use”,
我们可以根据它算出“fraction of time converted to use an enhancement”,你也看到了,结果是91%。
因为题中说“fraction of time after enhancement is in use”是50%,所以我说“也就是说改进之后改进的模式占用的时间和未经改进的部分占用的时间相等”,我是根据这个列出方程,为了求Fraction[enhanced],也就是“fraction of time converted to use an enhancement”,这样说你能理解吗?
我也不敢保证我的解正确。