正文

基于任务的程序设计(10)

C#并行编程高级教程 作者:(美)Gastón C.Hillar


同一个算法在具有8个物理内核的微处理器上的最大加速比也就是1.77x。因此,增加了这么多物理内核之后代码也还需要至少562.5秒的时间完成。

最大加速比(倍数) = 1 / ((1 - 0.50) + (0.50 / 8)) = 1.77x 

图1-9展示了这个算法在物理内核数为1~16的时候的加速比。从图中可以看出,加速比并不是线性变化的。随着内核数的增加,处理资源的浪费也越多。图1-10展示了同样的内容,只不过使用了新版本的算法,其中总任务的90%(P=0.90)都是并行执行的。事实上,90%的并行率是非常高的成就了,但在具有16个物理内核的微处理器上只获得了6.40x的加速比。

最大加速比(倍数) = 1 / ((1 - 0.90) + (0.90 / 16)) = 6.40x 


上一章目录下一章

Copyright © 读书网 www.dushu.com 2005-2020, All Rights Reserved.
鄂ICP备15019699号 鄂公网安备 42010302001612号