《并行计算》总结
标签: 并行计算
. | . |
---|---|
郑冬健 | zhengdongjian@tju.edu.cn |
- 更新日志
编号 | 更新时间 | 内容 |
---|---|---|
1 | 201606062144 | Openmp gcc 编译选项为-fopenmp |
2 | 201606062144 | 虚进程不能避免死锁,系理解错误 |
一、并行介绍
域分解
- 针对的分解对象:数据
- 首先确定数据如何划分到各处理器
- 然后确定各处理器要做的事情
- 示例:求最大值
任务(功能)分解
- 针对的分解对象:任务(功能)
- 首先将任务划分到各处理器
- 然后确定各处理器要处理的数据
二、并行硬件性能
Flynn弗林分类
- SISD: Single Instruction stream Single Data stream
- SIMD
- MISD
- MIMD
并行计算机结构模型
- PVP(Parellel Vector Processor),并行向量处理机。特点:不使用高速缓存,而是使用大量向量寄存器和指令缓存。只有充分考虑了向量处理特点的程序才能获得较好的性能。
- SMP(Symmetric Multiprocessor),并行多处理器,共享存储器。扩展性有限。
- MPP(Massively Parellel Processor),大规模并行处理器。只有微内核(每个节点无独立的操作系统etc),高通信带宽,低延迟互联网络,分布存储。异步MIMD。
- Cluster,集群。分布存储,每个节点是一个完整的计算机。投资风险小、结构灵活、性价比高、充分利用分散的计算资源、可扩展性好。问题:通信性能。
内存访问模型
- UMA(Uniform Memory Access),均匀存储访问。
- 物理存储器被均匀共享(访存时间)
- 可带私有Cache
- 外围设备也共享
- NUMA(Nonuniform Memory Access),非均匀存储访问。
- 被共享的存储器分布在所有处理器中
- 处理器访问存储器的时间不同:本地(LM)和群内共享(CSM)较快,外地和全局共享(GSM)较慢
- 可带私有Cache
- 外围设备共享
- NORMA(No-Remote Memory Access),非远程存储访问
- 所有存储器私有
- 节点间通过消息传递进行数据交换 -> 网络、环网、超立方、立方环
多核技术
- 摩尔定律(18个月单位面积晶体管数量翻一倍)
- Power Wall(性能越高,提高性能需要的功率越大)
Memory Wall,内存性能提高不及CPU
- 多核(Dual core)与超线程(Hyper Thread, HT)
- 双核是真正意义上的双处理器,不会发生资源冲突,每个线程拥有自己的缓存、寄存器和运算器
- 超线程提高性能>1/3,双核相当于 2×NHT
性能指标
- 执行时间 Elapsed Time, Tn=T计算+T并行开销+T通信
- 浮点运算数 Flop (Floating-point operation)
- 指令数目 MIPS (Million Instructions Per Sencond)
- 计算/通信比 TcompTcomm
- 加速比 S(n)=tstp
- 效率 E=tstp×n
- 代价 Cost=tsnS(n)=t