Gene Amdahl, 计算领域的早期先锋之一,对提升系统某一部分性能所带来的效果做出了简单却有见地的观察。这个观察被称为 Amdahl 定律(Amdahl’s law)。该定律的主要思想是,当我们对系统的某个部分加速时,其对系统整体性能的影响取决于该部分的重要性和加速程度。若系统执行某应用程序需要时间为Told。假设系统某部分所需执行时间与该时间的比例为a,而运部分性能提升比例为 k。即该部分初始所需时间为aTold,现在所需时间为(aTold)/k因此,总的执行时间应为 ’
Tnew=(1-a)Told+(aTold)/k=Told[(1-a)+a/k]
由此,可以计算加速比 S=Told/Tnew为
S =1/[(1-a)+a/k]
举个例子,考虑这样一种情况,系统的某个部分初始耗时比例为 60%(a=0.6),其加速比例因子为 3(k=3)。则我们可以获得的加速比为 1/[0.4+0.6/3]=1.67 倍。虽然我们对系统的一个主要部分做出了重大改进,但是获得的系统加速比却明显小于这部分的加速比。这就是
Amdahl 定律的主要观点—要想显著加速整个系统,必须提升全系统中相当大的部分的速度。
深入理解计算机系统:Amdahl定律
最新推荐文章于 2024-03-02 21:54:23 发布