📜  计算机组织 |阿姆达尔定律及其证明

📅  最后修改于: 2021-09-27 06:24:01             🧑  作者: Mango

它以计算机科学家 Gene Amdahl(来自 IBM 和 Amdahl 公司的计算机架构师)的名字命名,并于 1967 年在 AFIPS Spring Joint Computer Conference 上提出。它也被称为Amdahl 的论点。它是一个公式,它给出了在固定工作负载下任务执行延迟的理论加速,这可以预期资源得到改善的系统。换句话说,它是一个公式,用于通过仅改进系统的特定部分来寻找可能的最大改进。它通常用于并行计算,以预测使用多个处理器时的理论加速比。

加速-
加速比定义为使用增强的整个任务的性能与不使用增强的整个任务的性能或加速比可以定义为不使用增强的整个任务的执行时间与整个任务的执行时间的比率使用增强的任务。
如果Pe是使用增强的整个任务的性能, Pw是不使用增强的整个任务的性能, Ew是不使用增强的整个任务的执行时间,Ee是使用增强的整个任务的执行时间如果可能的话,

加速比 = Pe/Pw
要么
加速比 = Ew/Ee

Amdahl 定律使用两个因素来从某些增强中找到加速 –

  • 增强的分数 – 原始计算机中可以转换为利用增强的计算时间的分数。例如-如果总共需要 40 秒的程序执行时间的 10 秒可以使用增强功能,则分数为 10/40。这个获得的值是Fraction Enhanced
    增强的分数总是小于 1
  • 加速提升——增强执行模式获得的提升;也就是说,如果整个程序使用增强模式,任务运行速度会快多少。例如 – 如果增强模式需要,比如说程序的一部分需要 3 秒,而在原始模式中是 6 秒,则改进为 6/3。该值是加速增强的。
    Speedup Enhanced 总是大于 1

    整体加速比是执行时间的比率:-

    证明 :-
    设Speedup为S,旧的执行时间为T,新的执行时间为T’,A部分(将被增强)占用的执行时间为t,A部分(增强后)占用的执行时间为t’ ,不会被增强的部分所花费的执行时间是 t n ,分数增强是 f’,加速增强是 S’。

    现在从上面的等式,

         S=\frac{T}{T'}

       T=t_{n}+ t

        T'=t_{n}+ t'

         f' = \frac{t}{T}

          = \frac{t}{t+t_{n}}

           1-f'= 1- \frac{t}{t+t_{n}}

        = \frac{t_{n}}{t+t_{n}}

           S'=\frac{t}{t'}

          t'=\frac{t}{s'}

         =\frac{T*f'}{S'}

         =\frac{(t_{n}+t)*f'}{S'}

        =\frac{t'}{t_{n}+t}=\frac{f'}{S'}

      S=\frac{T}{T'}

        = \frac{t_{n}+t}{t_{n}+t'}

            S = \frac{1}{1-f' + \frac{f'}{S'}}

      Overall Speedup = \frac{1}{1 - Fraction Enhanced + ( Fraction Enhanced/Speedup Enhanced )}
    因此证明。