1 / 45
文档名称:

12 并行程序设计基础.ppt

格式:ppt   页数:45
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

12 并行程序设计基础.ppt

上传人:中国课件站 2011/10/11 文件大小:0 KB

下载得到文件列表

12 并行程序设计基础.ppt

文档介绍

文档介绍:十二章并行程序设计基础
11/10/2017
1
Copyright Parallel Programming
并行程序设计基础
并行程序设计概述
进程
线程
同步
通信
并行程序设计模型
11/10/2017
2
Copyright Parallel Programming
并行程序设计概述
并行程序设计难的原因
并行语言的构造方法
并行性问题
交互/通信问题
五种并行编程风范
计算圆周率的样本程序
11/10/2017
3
Copyright Parallel Programming
1 并行程序设计难的原因
技术先行,缺乏理论指导
程序的语法/语义复杂, 需要用户自已处理
任务/数据的划分/分配
数据交换
同步和互斥
性能平衡
并行语言缺乏代可扩展和异构可扩展, 程序移植困难, 重写代码难度太大
环境和工具缺乏较长的生长期, 缺乏代可扩展和异构可扩展
11/10/2017
4
Copyright Parallel Programming
2 并行语言的构造方法
串行代码段
for ( i= 0; i<N; i++ ) A[i]=b[i]*b[i+1];
for (i= 0; i<N; i++) c[i]=A[i]+A[i+1];
(a) 使用库例程构造并行程序
id=my_process_id();
p=number_of_processes();
for ( i= id; i<N; i=i+p) A[i]=b[i]*b[i+1];
barrier();
for (i= id; i<N; i=i+p) c[i]=A[i]+A[i+1];
例子: MPI,PVM, Pthreads
(b) 扩展串行语言
my_process_id,number_of_processes(), and barrier()
A(0:N-1)=b(0:N-1)*b(1:N)
c=A(0:N-1)+A(1:N)
例子: Fortran 90
(c) 加编译注释构造并行程序的方法
#pragma parallel
#pragma shared(A,b,c)
#pragma local(i)
{
# pragma pfor iterate(i=0;N;1)
for (i=0;i<N;i++) A[i]=b[i]*b[i+1];
# pragma synchronize
# pragma pfor iterate (i=0; N; 1)
for (i=0;i<N;i++)c[i]=A[i]+A[i+1];
}
例子:SGI power C
11/10/2017
5
Copyright Parallel Programming
三种并行语言构造方法比较
2 并行语言的构造方法
11/10/2017
6
Copyright Parallel Programming
3 并行性问题
进程的同构性
SIMD: 所有进程在同一时间执行相同的指令
MIMD:各个进程在同一时间可以执行不同的指令
SPMD: 各个进程是同构的,多个进程对不同的数据执行相同的代码(一般是数据并行的同义语)
常对应并行循环,数据并行结构,单代码
MPMD:各个进程是异构的, 多个进程执行不同的代码(一般是任务并行,或功能并行,或控制并行的同义语)
常对应并行块,多代码
要为有1000个处理器的计算机编写一个完全异构的并行程序是很困难的
11/10/2017
7
Copyright Parallel Programming
并行块
parbegin S1 S2 S3 …….Sn parend
S1 S2 S3 …….Sn可以是不同的代码
并行循环: 当并行块中所有进程共享相同代码时
parbegin S1 S2 S3 …….Sn parend
S1 S2 S3 …….Sn是相同代码
简化为
parfor (i=1; i<=n, i++) S(i)
进程的同构性
3 并行性问题
11/10/2017
8
Copyright Parallel Programming
用单代码方法说明SPMD
要说明以下SPMD程序:
parfor (i=0; i<=N, i++) foo(i)
用户需写一个以下程序:
pid=my_process_id();
numproc=number_of _processes();
parfor (i=pid; i<=N, i=i+numproc) foo(i)
此程序经编译后生成可执行程序A, 用shell脚本将它加载到

最近更新

2025年安庆医药高等专科学校单招职业适应性考.. 40页

2025年安徽交通职业技术学院单招职业适应性考.. 41页

《空气净化用煤质颗粒活性炭》征求意见稿 16页

2025年安徽国际商务职业学院单招综合素质考试.. 41页

2025年安徽工业经济职业技术学院单招综合素质.. 39页

2025年安徽电子信息职业技术学院单招综合素质.. 39页

2025年安徽省宣城市单招职业倾向性测试模拟测.. 39页

2025年安徽省蚌埠市单招职业倾向性测试模拟测.. 41页

2025年安徽艺术职业学院单招职业适应性测试模.. 39页

2025年安阳幼儿师范高等专科学校单招综合素质.. 41页

2025年定西师范高等专科学校单招职业倾向性考.. 41页

2025年宜春幼儿师范高等专科学校单招职业适应.. 40页

2025年宝鸡职业技术学院单招综合素质考试题库.. 39页

2025年宿迁职业技术学院单招职业倾向性测试模.. 40页

2025年山东华宇工学院单招综合素质考试模拟测.. 40页

2025年山东外贸职业学院单招职业倾向性测试模.. 41页

2025年山东理工职业学院单招职业适应性测试模.. 39页

2025年山东省德州市单招职业适应性测试模拟测.. 40页

2025年山东省烟台市单招职业倾向性考试模拟测.. 40页

2025年山东经贸职业学院单招职业适应性测试题.. 39页

2025年山东英才学院单招职业技能考试模拟测试.. 39页

2025年山西体育职业学院单招职业倾向性测试题.. 42页

2025年山西卫生健康职业学院单招职业适应性考.. 40页

2025年山西省临汾市单招职业倾向性考试模拟测.. 40页

2025年山西省财政税务专科学校单招职业技能测.. 40页

2025年山西经贸职业学院单招职业适应性测试模.. 39页

2025年山西药科职业学院单招职业倾向性考试模.. 40页

2025年岳阳现代服务职业学院单招职业技能测试.. 40页

2025年重庆市《保安员证》考试题库含答案 39页

混凝土工程培训课件优秀PPT 26页