Какова цель использования библиотеки Boost.MPI? - PullRequest
5 голосов
/ 24 марта 2012

Какова цель использования библиотеки Boost.MPI? Увеличивает ли это производительность? И в чем разница между ним и библиотекой MPICH?

Ответы [ 3 ]

8 голосов
/ 24 марта 2012

Boost.MPI предоставляет

альтернативный интерфейс C ++ к MPI, который лучше поддерживает современные стили разработки C ++, включая полную поддержку пользовательских типов данных и типов стандартной библиотеки C ++произвольные функциональные объекты для коллективных алгоритмов и использование современных методов библиотеки C ++.

Намерено

поддерживать максимальную эффективность

но не на самом деле улучшить производительность MPI;это невозможно, потому что он все еще привязан к существующим реализациям MPI (хотя он может реализовывать некоторые высокоуровневые шаблоны более эффективно, чем вы бы их написали, в зависимости от того, насколько вы эксперт MPI).В основном это удобнее, чем обычный C API.

7 голосов
/ 24 марта 2012

По сути, это «современный» интерфейс C ++ к тому же старому C API, который реализован, скажем, в MPICH.Поскольку он использует те же функции, он не может привести к какому-либо улучшению производительности, но может помочь с реальной реализацией, упрощая его.

4 голосов
/ 04 мая 2012

Привязки C ++ в MPI устарели с версии 2.2: http://www.mpi -forum.org / docs / mpi22-report / node328.htm

Boost.MPI на основе API C MPIТак что это хорошее решение для тех, кто хочет C ++ API: https://github.com/mpi-forum/mpi-forum-historic/issues/150

...