mpi4py не дает ускорить разложение 2D блока - PullRequest
0 голосов
/ 25 декабря 2018

Я возился с распределенной многопроцессорной обработкой в ​​python и собрал решатель двумерных уравнений теплопроводности, который использует блок-декомпозицию домена.Этот код работает одинаково (с точки зрения правильного ответа) для других реализаций MPI на C и Fortran.

Однако на моей машине с точками сетки 256x256 и 4 процессами я вообще не вижу ускорения.Для сравнения, реализация C (скомпилированная с mpicc) дает мне хорошее ускорение, как и ожидалось.Любопытно, что когда я развертываю этот код на другой машине (на одном и том же количестве процессов) - я получаю правильную скорость.Mpi4py и последовательные версии этого кода можно найти здесь .Я думал, что это может быть связано с ограничениями размера кэша, но у меня также наблюдаются похожие тенденции и при меньшем количестве точек сетки.Есть ли какое-то требование для mpi4py, которое мне не хватает, что вызывает замедление?

...