文档介绍:课程主要内容总结
多核构架
多线程编程
高性能多核编程
多核应用编程工具
多核构架
芯片组
CPU
操作系统并行平台
多核构架分类
按硬件层次分 Core1 Core2
Bus
芯片级
板级 2 MB L2 Cache
机架级
核核核核
网络级
核核核核
网格
核核核核
核核核核
CPU的Core微架构
FP Unit FP Unit
Core1 Core2
EXE Core EXE Core
Bus L1 Cache L1 Cache
L2 Cache
2MBL2C2 MB L2 Cac he
System Bus
(667MHz, 5333MB/s)
单核、多处理器以及多核结构之间
的简单对比(一)
CPU 状态 CPU 状态 CPU 状态
中断逻辑中断逻辑中断逻辑
执行单元 Cache 执行单元 Cache 执行单元 Cache
(a) 单核结构(b) 多处理器结构
CPU 状态 CPU 状态 CPU 状态 CPU 状态
中断逻辑中断逻辑中断逻辑中断逻辑
执行单元 Cache 执行单元 Cache 执行单元 Cache
(c) 超线程技术(d) 多核体系结构
单核、多处理器以及多核结构之间
的简单对比(二)
CPU 状态 CPU 状态
中断逻辑中断逻辑
执行单元执行单元
Cache
(e) 共享Cache 的多核体系结构
CPU 状态 CPU 状态 CPU 状态 CPU 状态
中断逻辑中断逻辑中断逻辑中断逻辑
执行单元 Cache 执行单元 Cache
(f) 采用超线程技术的多核体系结构
与多核对应的芯片组
Processor
Front Side Bus
North Bridge / MCH High-Speed I/O • PCI Express
• Memory
(北桥)
• PCI • USB
• Hard Disk • Audio
South Bridge / ICH
Low-Speed I/O • LAN
(南桥)
并行计算模型
SIMD同步并行计算模型
共享存储的SIMD模型(PRAM模型)
分布存储的SIMD模型(SIMD互联网络模型)
MIMD异步并行计算模型
异步PRAM模型
BSP模型
LogP模型
C3模型
并行编程环境
比较流行的并行编程环境主要有3类:消息传递、
共享存储和数据并行
特征消息传递共享存储数据并行
典型代表 MPI, PVM OpenMP HPF
可移植性所有主流并行 SMP, DSM SMP, DSM,
计算机 MPP
并行粒度进程级大粒度线程级细粒度进程级细粒度
并行操作方式异步异步松散同步
数据存储模式分布式存储共享存储共享存储
数据分配方式显式隐式半隐式
学习入门难度较难容易偏易
可扩展性好好较差较差一般
多线程编程
基本概念
同步问题
基于Visual C 的多线程编程
基于OpenMP的多线程编程