
答案
二、(10分)请推导Amdahl定律公式,并说明其意义。
答:假设系统加速前的运行时间为 Tbefore ,系统中可加速部分在 Tbefore 中所占比例为 f ,不可加速部分所占比例则为 1 - f ,可加速部分的加速比设为 a ,系统加速后的运行时间设为 Tafter ,则有:
Tafter = Tbefore * f / a + Tbefore * (1 - f)
系统加速后,相对于加速前的加速比 S 应为:
S = Tbefore / Tafter = Tbefore / ( Tbefore * f / a + Tbefore * (1 - f) ) = 1 / ( f / a + 1 - f)
即
S = 1 / (1 - f + f / a)
上式就是Amdahl定律公式。
令 a → + ,即假设可以对可加速部分无限加速,则有
S → 1 / (1 - f)
这说明系统可达到的加速比受限于系统中不可加速部分所占比例的倒数。