常见的并行程序设计模型包括.doc

上传人:marr****208 文档编号:137861838 上传时间:2020-07-12 格式:DOC 页数:3 大小:43KB
返回 下载 相关 举报
常见的并行程序设计模型包括.doc_第1页
第1页 / 共3页
常见的并行程序设计模型包括.doc_第2页
第2页 / 共3页
常见的并行程序设计模型包括.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《常见的并行程序设计模型包括.doc》由会员分享,可在线阅读,更多相关《常见的并行程序设计模型包括.doc(3页珍藏版)》请在金锄头文库上搜索。

1、一、 填空题1 常用的并行算法设计的基本技术有_ _,_,_,_ _,_,_等。2 常见的并行计算模型有_ _,_,_,_ _等。3 PCAM设计过程分为_,_,_ 和_四步。4 常见的并行程序设计模型包括_ _,_ _,_,_等。二、 问答题1 请简述从上个世纪80年代至今,主流并行计算机体系结构的变化趋势。2 基于蝶式计算原理的FFT在二维mesh连接和蝶式网络连接的处理器上均可并行实现。(1)请问哪种实现效率较好?并给出原因。(2)蝶式网络连接的处理器在实际的并行计算机系统并不常见,这是否会影响FFT在蝶式网络连接上的并行实现在实际中的使用?为什么?3 基本的开关技术有哪两种?各具有什么

2、特点?三、 阅读题1阅读以下新闻报道,回答问题。2004 年 6月29日 国家科技部今日在人民大会堂宣布:“863计划重点项目曙光4000A通过鉴定验收,曙光4000A实现了对每秒10万亿次运算速度的技术和应用的双跨越,成为国内计算能力最强的商品化超级计算机”。在今年6月22日刚刚公布的全球高性能计算机TOP500排行榜中,曙光4000A以每秒11万亿次的峰值速度和80610亿次Linpack计算值位列全球第十,这是中国超级计算机得到国际同行认可的最好成绩。随着曙光4000A的推出,中国已经成为继美、日之后第三个跨越了10万亿次计算机研发、应用的国家。曙光4000A拥有自主研制的机群系统软件包

3、括机群管理系统、机群部署系统、机群作业管理系统、并行文件系统、机群监控系统、机群并行通信系统、机群高可用系统、机群负载均衡系统等。(1)请问文中提到的“TOP500排行榜”是按照什么方法对高性能计算机进行排序的?这种方法具有什么样的优点和不足?(2)结合高性能计算的应用,谈谈为什么中国需要研制高性能计算机。(3)文中所说的机群系统指的是什么?它具有什么样的特点?2以下是一段用MPI实现的并行程序代码,用来并行求一组数的和。#include #include #include #define SIZE 10 void main(int argc, char *argv)int myid, num

4、procs;int dataSIZE, i, x, low, high, myresult, result;char fn255;char *fp;MPI_Init(&argc,&argv);MPI_Comm_size(MPI_COMM_WORLD,&numprocs);MPI_Comm_rank(MPI_COMM_WORLD,&myid);if (myid = 0) /* Open input file and initialize data */strcpy(fn,getenv(HOME);strcat(fn,/data);if (fp = fopen(fn,r) = NULL) prin

5、tf(Cant open the input file: %snn, fn);exit(1);for(i = 0; i SIZE; i+) fscanf(fp,%d, &datai);/* broadcast data */MPI_Bcast(data, SIZE, MPI_INT, 0, MPI_COMM_WORLD);/* Add my portion Of data */x = SIZE/numprocs;low = myid * x;high = low + x;if(myid = numprocs - 1) high = SIZE;myresult = 0;for(i = low;

6、i high; i+)myresult += datai;/* Compute global sum */MPI_Reduce(&myresult, &result, 1, MPI_INT, MPI_SUM, 0, MPI_COMM_WORLD);if (myid = 0) printf(The sum is %d.n, result);MPI_Finalize();请回答以下问题:(1) 请问上述并行程序的并行执行的进程数是何时指定的,如何确定的?在程序中,使用什么函数得到了进程数的信息。(2) 试分析上述并行程序对应的并行算法的时间复杂度。(3) 说明上述并行程序是如何对计算任务进行划分的

7、。请问这种划分方式是循环划分还是块划分?试写出另一种划分方式的代码。(4) 试对上述并行程序的加速比进行分析,并以此为例简要说明Amdahl定律和Gustafson定律的不同。(5) 结合上述并行程序的输入输出部分,说明SPMD程序的特点。(6) 请问上述程序中使用了MPI哪些群集通信的函数?它们实现了什么功能?四、 综合题1假定和已加载到如下所示的处理器阵列上,试用图表示Cannon矩阵乘法或者Fox矩阵乘法的具体过程(任选一种即可)。2以下是上三角方程组回代解法的串行算法的形式化描述。 Begin (1)for i=n downto 1 do (1.1)xi=bi/aii (1.2)for j=1 to i-1 do bj=bj-ajixi aji=0 endfor endfor End请指出串行算法哪些部分可以并行化。写出并行算法的形式化描述(需要注明计算模型类型),分析你的算法的时间复杂度。- 3 -

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号