中 国 科 学 技 术 大 学
2008-2009 学年第一学期考试试卷
考试科目: 并行程序设计 得分:____ ______
学生所在系:___________ 姓名:____ _ _____ 学号:_____ ______
一、给出以下循环中的迭代依赖图。(10 分)
for( k = 0; k
四、仔细阅读以下程序代码(30 分)
(1) 给出 OpenMP 并行化实现(尽可能多地采用多线程并行化);
(2) 给出 MPI 并行化实现;假设:数组 a 采用行连续划分方式顺序分布于各计算进程,
数组 x 的初值也被广播到各个进程(不必写数据分布与最后结果的回收代码了)。
注:在上述两种实现里,可以添加适当的变量及操作。
#define N 5000
#define epsilon 1e-5 // 10-5
double x[N], newx[N], a[N][N], b[N], diff;
int i,j;
main(){
… … // a,b 的初始化;
for(i=0;i= epsilon) do {
diff = 0;
for( i=0;i