并行程序设计采用哪个库好呢?
发布网友
发布时间:2022-08-29 18:55
我来回答
共2个回答
热心网友
时间:2024-12-04 18:18
这两个是两种截然不同的并行方法。
MPICH是针对多主机联网并行计算(专业术语是 多地址空间 分布内存 并行计算),当然也可以用于单主机上多核/多CPU的并行计算(多地址空间 共享内存 并行计算),不过效率低。
OpenMP才是针对单主机上多核/多CPU并行计算而设计的,换句话说,OpenMP更适合单台计算机共享内存结构上的并行计算,主要是 单地址空间 共享内存 并行计算。不过OpenMP只能在单主机上工作,不能用于多台主机间的并行计算!如果要多主机联网,那必须有额外的库函数帮助,比如 MPICH + OpenMP 混合编程。
Fortran95语言是更适合并行程序设计的语言,或者Parallel C 。
如果大量进行科学计算的并行程序设计的话,Fortran95语言编程非常方便,特别是矩阵运算,比如 matmul(A, B),就能完成两个矩阵相乘的自动并行化,完全不用自己考虑并行矩阵乘法的算法。
你可以在这个BBS获取更多信息——
参考资料:http://www.unix-center.net/bbs/forumdisplay.php?fid=17
热心网友
时间:2024-12-04 18:19
自动转入投票流程专用模板