Amdahl 定律(也叫阿姆达尔定律)的主要思想是:当我们对系统的某个部分加速时,其对系统整体性能的影响取决于该部分的重要性和加速程度。
若假设系统执行某个应用程序所需时间为 T1 , 优化后的时间为 T2 ,用 S 表示 (T1 / T2),则公式为:
S = 1 / (1 - a + a / k)
推导过程:
假设系统某个部分的初始时间与 T1 的比值为 a ,则这部分的初始时间为 a*T1,然后我们给这部分优化,优化的比例因子为k,则优化后这部分所需时间为a * T1 / k。
我们先把 T1 拆开:
T1 = a * T1 + (1 - a) * T1
将优化后的时间a * T1 / k代入得到 T2
T2 = a * T1 + (1 - a) * T1 / k
所以:
S = (T1 / T2) = 1 / (1 - a + a / k)
来自刚开始学操作系统的蒟蒻 :-)