任务
并行任务
串行任务
共享存储
分布式存储
通信
同步
粒度
加速比
并行开销
可扩展性
存储器架构:共享存储、分布式存储、吻合分布式存储。
并行程序的编程模型:共享存储模型、线程模型(启动多线程)、消息传递模型(MPI,彼此独立的存储单元上,通过消息传递)、数据并行模型(整个数据进行切分)
SPMD 单个程序多个数据 MPMD 多个程序多个数据
设计并行处理程序和系统
- 自动和手动并行,简单模型可以,复杂不可以
- 理解问题和程序
- 分块分割,任务分配
- 通信、同步
- 数据依赖
- 负载均衡,多个任务之间是否平衡
- 粒度,每个人办多少砖
- I/o
- 成本,可用性的关键因素,性能付出的成本
- 性能分析和优化
Amdahl's Law程序可能的加速比取决于可以被并行化的部分
P是可并行化的部分
如果没有课并行化的部分,P= 0.加速比为1。
如果有N个处理器并行处理
P= 并行部分,N = 处理器数码,S= 串行部分
并行化的可扩展性有极限,当P=0.5时,处理器增多,加速比最高为2