Amdahl定律(Amdahl's law, 阿姆达尔定律)
该定律的主要思想是,当我们对系统的某个部分加速时,其对系统整体性能的影响取决于该部分的重要性和加速程度。若系统执行某应用程序需要时间为。假设系统某部分所需执行时间与该时间的比例为,而该部分性能提升比例为。即该部分初始所需时间为,现在所需时间为(。因此,总的执行时间应为
由此,可以计算加速比为
举个列子,小王从武汉开车去某南方城市,全程2500公里,小王计划以时速100km/h前行,当行驶了10小时后,小王发现剩下1500公里路程高速不限速,小王准备以时速150km/h跑完剩余里程。求小王行驶的加速比?
通过上面的公式我们就很容易算出来了
Amdahl定律有一个有趣的特殊情况是考虑趋向于∞时的效果。这就意味着,我们可以取系统的某一部分将其加速到一个点,在这个点上,这部分发费的时间可以忽略不计。
于是我们得到
举个例子,如果60%的系统能够加速到不花时间的程度,我们获得的净加速比将仍只有。
由此我联想到,如果系统能够加速到不花时间的部分接近100%呢,那就是分子趋向于无穷小但是大于0,那加速比将趋向于无穷大,这里有两个关键的条件:
- 提升的程度要足够大
- 提升的占比要足够大 同样应用到我们的生活中,如果我们想要提升自己的能力,我们不但要提升单方面的能力,而更重要是要提升整体的综合能力,以及能力提升的高度。举个例子,英语综合能力,听说读写,如果我们只是特别善于听力,说读写都来不了,当老外跟你沟通的时候,虽然你能听懂,但是却不会表达,只能在那里手足舞蹈一番,弄的老外一脸懵比。所以,我们只有提高英语听说读写的综合能力,当我们的综合能力提高到接近native speaker时,我们的就是趋向于∞了。