并行计算机组成

定义

并行计算机就是由多个处理单元组成的计算机系统,这些处理单元相互通信和协作,能快速,高效地求解大型复杂问题。

需求

满足在平台金字塔顶端对性能需求最强的应用程序,对运算速度的无止境追求

发展历程

金字塔

云计算(着重在软件-》网格运算)是并行计算(硬件)的一种发展形势

并行计算发展历程

并行计算发展历程2

考虑到功耗,cpu散热,摩尔定律中晶体管的数量(当前还在上升)、CPU频率(大概3.8GHZ,超频4.2GHZ)受限。

结构

并行计算机体系机构= 计算机体系结构 + 计算机通信

编程模型: 共享存储、消息传递、数据并行

计算机性能

执行时间(execution time)- 响应时间

性能 = 1/执行时间

性能加速比

吞吐率(Throughput)

即带宽-单位时间内完成的任务数量

程序执行时间:是指用户的响应时间 (访问磁盘和访问存储器的时间, CPU时间, I/O时间以及操作系统的开销)
CPU时间:它表示CPU的工作时间,不包括I/O等待时间和运行其它任务的时间。

性能公式

时间要素

性能计算举例

Amdahl定律 - 加速比(只改进一部分,则系统所获得的加速比有上限)

并行计算的提升,受到了程序中必须串行执行部分的限制

经典的Amdahl定律并不适用于规模可扩展的系统,加速比曲线理论与实际不一致。

为什么CPU不能通过成千上万个线程来加速?
CPU的架构和GPU不一样,CPU就算是采用超线程技术,一个核也只能开两个线程,4核就8个线程,如果强行开10000个线程实际上也是软系统层面的虚拟线程

参考资料

CMU并行体系结构与编程的网址

学校教材

---------------- 本文结束 ----------------

本文标题:并行计算机组成

文章作者:Pabebe

发布时间:2020年02月18日 - 08:53:29

最后更新:2020年06月16日 - 18:24:34

原始链接:https://pabebezz.github.io/article/517840f3/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

0%