Сообщения MPI между библиотеками
Можете ли вы отправлять сообщения MPI через две библиотеки?
Пример. Если у меня установлен MS-MPI на компьютере с Windows, а затем Open-MPI на кластере Linux (в той же сети), могу ли я получать сообщения между кодом, работающим на двух разных ОС.
В основном несколько программ, несколько данных MPMD, но с использованием ресурсов Windows и Linux.
Просто нужно знать, возможно ли это, и если да, то любая информация была бы хорошей, но не нужна.
2 ответа
Нет, это невозможно. Вы даже столкнетесь с большими трудностями, если попробуете это с разными версиями или конфигурациями одной реализации.
MPI предназначен для однородных установок в системах HPC. Протокол связи не стандартизирован, есть только интерфейс программирования.
В общем, нет. Это не указано в стандарте MPI, и большинство реализаций не поддерживают такие задания. Я полагаю, это довольно необычный вариант использования.
Тем не менее, Intel MPI обеспечивает перекрестный запуск заданий, см.:
https://software.intel.com/en-us/mpi-developer-guide-linux-cross-os-launch-mode
Некоторые подробности: Intel MPI, а также другие коммерческие реализации MPI основаны на проекте с открытым исходным кодом MPICH. Я не уверен, что запуск кросс-ОС может быть каким-то образом достигнут через MPICH. Быстрое исследование Google дало только отрицательные, но, возможно, устаревшие результаты, например
https://lists.mcs.anl.gov/pipermail/mpich2-dev/2005-July/000085.html