并行计算机分类 什么是SIMD 并行计算机
可以同时执行一条指令处理多个数据的计算机 什么是MIMD 并行计算机
可以同时执行多条指令处理多个数据的计算机 什么是SPMD 并行计算机
同时执行一个程序处理多个数据的计算机 什么是MPMD 并行计算机
同时执行多个程序处理多个数据的计算机 什么是分布式内存并行计算机
各处理器不共享内存的并行计算机 什么是共享内存并行计算机
处理器共享内存的并行计算机 并行编程模式 隐式并行、数据并行、消息传递、共享变量 现在串行编程语言几乎都是高级语言,为什么在并行计算领域编程语言却还相对级别较低
并行计算目前还缺乏统一的模型和标准 你知道的并行语言有哪些
HPF,各种并行C,并行C++,并行PASCAL 你认为串行语言和并行语言的区别有哪些
是否提供并行的结构,是否提供并行的语义 并行算法的分类是怎样的
粗粒度/细粒度并行算法,同步/异步并行算法 同步并行算法在具有什么特点的并行计算机上可以高效实现
SIMD 类并行计算机 粗粒度的并行算法在什么条件下性能优于细粒度的并行算法
并行的粒度越小就有可能开发更多的并行性提高并行度这是有利的方面但是另一个不利的方面就是并行的粒度越小通信次数和通信量就相对增多这样就增加了额外的开销,因此合适的并行粒度需要根据计算量、通信量、计算速度、通信速度进行综合平衡这样才能够取得高效率
一个好的并行算法的前提是什么
一个好的并行算法要既能很好地匹配并行计算机硬件体系结构的特点又能反映问题内在并行性 如何设计适合机群系统的并行算法
对于机群系统一次通信的开销要远远大于一次计算的开销,因此要尽可能降低通信的次数或将两次通信合并为一次通信,基于同样的原因,机群计算的并行粒度不可能太小,因为这样会大大增加通信的开销,如果能够实现计算和通信的重叠那将会更大地提高整个程序的执行效率