22、并行编程全解:概念、架构与实践指南

并行编程全解:概念、架构与实践指南

1. 并行与并发的基础概念

在探讨并行编程之前,我们先通过一个国际象棋比赛的例子来理解并行和并发的概念。假设一个象棋俱乐部为比赛增添竞争元素,聘请了两位象棋大师。原本每位大师要进行10场比赛,若采用串行方法,每场比赛耗时10分钟,每步棋耗时50秒,移动到下一张桌子需6秒,总共101分钟。现在有两位大师,若依旧采用串行方法,每位大师只需进行5场比赛,比赛总时长变为50.5分钟。

但如果采用并发和并行的方法,两位大师同时进行5场比赛。每位大师每6秒走一步棋,然后花6秒移动到下一张桌子。虽然每场比赛仍需10分钟,每步棋还是50秒,但由于同时进行的比赛减少到5场,移动时间仅需30秒。这样,整个比赛仅需15.77分钟(946秒),这是四种比赛方式中用时最短的。由此可见,创建并发程序并在并行机器上运行,能显著提高效率。

需要注意的是,并发是算法的属性,而并行是机器的属性。

2. 并行计算机架构

计算机科学家在过去50年里认识到,并行性可用于提高性能和处理大规模问题。接下来,我们将介绍几种不同类型的并行计算机架构。

架构类型 特点 应用场景
SISD(单指令流,单数据流) 经典的冯·诺依曼计算机架构,单程序处理单数据流 单处理器计算机
MISD(多指令流,单数据流)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值