加速比(speedup),是同一个任务在单处理器系统和
并行处理器系统中运行消耗的时间的比率,用来衡量并行系统或程序并行化的性能和效果。
定义
加速比以如下公式定义:
其中:
指CPU数量
当 时, 便可称为“线性加速比”(英语:linear speedup,又名“理想加速比”)。当某一并行算法的加速比为理想加速比时,若将处理器数量加倍,执行速度也会加倍,即如“理想”之意,有“优秀的
可扩展性”。
“效率”
由加速比派生出的效率(英语:efficiency)则是量度性能的指标,并如下定义:
效率 的值一般介于0~1之间,用于表示在解决问题时,相较于在通信与同步上的花费,参与计算的处理器得到了什么程度的充分利用。由定义易见,拥有线性加速比的算法与在单处理器上执行的算法的效率为1。
超线性加速比
在
并行计算过程中,有时会遇到加速比 比处理器数 更大的情况,此时求得的加速比即称超线性加速比(英语:superlinear speedup)。超线性加速比很少出现,且由于初学者常以为理论上加速比的最大值应与参与计算的处理器的总数 相等,这一情况常使初学者迷惑不已。
并行计算加速比-阿姆达尔定律
阿姆达尔定律(英语:Amdahl's law,Amdahl's argument),一个计算机科学界的
经验法则,因
吉恩·阿姆达尔而得名。它代表了
处理器并行运算之后效率提升的能力。
特点:要求实时性,因此时间是关键因素,而计算负载是确定的。适用于固定计算负载。对于固定的问题规模,通过增加处理器,减少平均的计算负载,来提升运算速度。
并行计算中的加速比是用并行前的执行速度和并行后的执行速度之比来表示的,它表示了在并行化之后的效率提升情况。
阿姆达尔定律是固定负载(计算总量不变时)时的量化标准。可用公式: 来表示。式中 分别表示问题规模的串行分量(问题中不能并行化的那一部分)和并行分量,p表示处理器数量。
只要注意到当 时,上式的极限是 ,其中, 。这意味着无论如何增大处理器数目,加速比是无法高于这个数的。
基于阿姆达尔定律和兰特法则计算的加速比
评价多核CPU加速比已知模型的基础上,基于第一性计算原理融合理解阿姆达尔定律和兰特法则,提出描述多核CPU加速比的一个新模型.研究方法是从传统的阿姆达尔定律切入,论述的逻辑顺序分别基于约束固定任务,固定时间,存储器和互连复杂性;兼顾了举例论述同构多核的NoC带宽性质和最大温度特性.计算表明:基于固定时间模型与存储器模型预测多核的加速能力,容易得到估计结果的乐观上限;本文提出的基于兰特法则的模型计算结果,在并行比例较大时稍小于但接近前述模型估计值,而比固定任务模型的保守结果要好;NoC带宽和最大温度的结果提示,多(同构)核CPU期盼相对高的并行度架构。
并行处理中节点间通信对加速比的影响
加速比是衡量并行处理性能的重要指标之一; 较高加速比的获得除与任务的划分、并行算法的选择等有关外 ,还与各节点间的通信有关; 在大多数并行系统中 ,在数据规模确定的情况下 ,程序的加速比随节点数的增加而增加 ,但是大多数机群系统的节点间是共享物理传输介质的 ,这就使得许多并行程序的加速比在节点数目超过某一个值之后会随着节点数的增加而减少;文章通过数值实验研究 ,分析了节点间通信对加速比的影响 ,进一步论证了节点间通信对加速比的重要影响。