MPI+OpenMP 可扩展性

计算科学 并行计算 mpi
2021-12-18 05:06:49

我有一个 MPI+OpenMP(混合)并行化的数字代码和 32 个节点的可用计算资源,每个节点上有 16 个内核。该代码已针对不同节点上最多 16 个内核的 MPI 可扩展性和单个节点上 16 个内核的 OpenMP 可扩展性进行了测试。

我可以假设混合并行化在核上可扩展吗?32×16

编辑:MPI+OpenMP 的完成方式是 MPI 进程本身在开始时启动,共享内存并行化是在每个进程中使用几个 PARALLEL DO 循环完成的。

2个回答

不可以。您需要对其进行测试,尤其是当您在 OpenMP 区域内进行 MPI 调用时。

作为一般规则,我会测试核心和节点的组合,因为可伸缩性取决于很多因素:在每个节点上都有足够的工作要做,然后是核心、问题中的任务/数据并行性、代码的架构如何在不中断 openMP 线程等的情况下执行 MPI 通信。大多数时候可以避免来自 openMP 循环内的 MPI 调用,我有。