MPI并行计算期末考试复习题 下载本文

内容发布更新时间 : 2024/5/29 9:53:12星期一 下面是文章的全部内容请认真阅读。

并行计算机分类

什么是SIMD并行计算机?

可以同时执行一条指令处理多个数据的计算机 什么是MIMD并行计算机?

可以同时执行多条指令处理多个数据的计算机 什么是SPMD并行计算机?

同时执行一个程序处理多个数据的计算机 什么是MPMD并行计算机?

同时执行多个程序处理多个数据的计算机 什么是分布式内存并行计算机? 各处理器不共享内存的并行计算机 什么是共享内存并行计算机? 处理器共享内存的并行计算机

并行编程模式

隐式并行、数据并行、消息传递、共享变量

现在串行编程语言几乎都是高级语言,为什么在并行计算领域编程语言却还相对级别较低?

并行计算目前还缺乏统一的模型和标准

你知道的并行语言有哪些?

HPF,各种并行C,并行C++,并行PASCAL

你认为串行语言和并行语言的区别有哪些? 是否提供并行的结构,是否提供并行的语义

并行算法的分类是怎样的?

粗粒度/细粒度并行算法,同步/异步并行算法

同步并行算法在具有什么特点的并行计算机上可以高效实现? SIMD类并行计算机

粗粒度的并行算法在什么条件下性能优于细粒度的并行算法? 并行的粒度越小就有可能开发更多的并行性提高并行度这是有利的方面但是另一个不利的方面就是并行的粒度越小通信次数和通信量就相对增多这样就增加了额外的开销,因此合适的并行粒度需要根据计算量、通信量、计算速度、通信速度进行综合平衡这样才能够取得高效率。

一个好的并行算法的前提是什么?

一个好的并行算法要既能很好地匹配并行计算机硬件体系结构的特点又能反映问题内在并行性 如何设计适合机群系统的并行算法?

对于机群系统一次通信的开销要远远大于一次计算的开销,因此要尽可能降低通信的次数或将两次通信合并为一次通信,基于同样的原因,机群计算的并行粒度不可能太小,因为这样会大大增加通信的开销,如果能够实现计算和通信的重叠那将会更大地提高整个程序的执行效率。

并行算法的一般设计过程:PCAM设计过程

该过程分为四步:任务划分、通信分析、任务组合和处理器映射,简称PCAM设计过程。

MPI是不是一门并行语言?为什么? 不是,它只是一个消息传递库

目前MPI支持哪些语言? FORTRAN 77/C/Fortran90/C++

MPI的三个主要目标是什么? 功能强/移植性好/性能高

目前MPI的主要免费实现有哪些? MPICH/LAM/CHIMP