Больше всего в MPI мне не нравится иметь дело с типами данных (то есть картами данных / масками), потому что они не очень хорошо подходят для объектно-ориентированного C ++. boost::mpi
однако поддерживает только MPI 1.1 со своего веб-сайта:
boost :: mpi - это дружественный к C ++ интерфейс стандартного интерфейса передачи сообщений… Boost.MPI может создавать типы данных MPI для пользовательских типов с помощью библиотеки Boost.Serialization.
У кого-нибудь был опыт boost::mpi
серьезных научных вычислений? Вы бы порекомендовали это? Были ли у вас какие-либо проблемы (проблемы с масштабированием, проблемы с компилятором, ошибки, не реализованные функции, необходимость некоторых функций MPI 2.2)?
Можете ли вы прокомментировать использование boost::mpi
вместо использования реализации MPI C из C ++? Можете ли вы объединить оба (используйте boost :: mpi, когда можете, C-MPI в другом месте)?
Знаете ли вы какой-либо большой научный код, использующий boost::mpi
?