Boost.MPI vs Boost.Asio

Добрый день!

Какая разница между этими библиотеками?

Я читал документацию MPI и имею небольшой опыт работы с asio. Для меня это другое реализации сетевого взаимодействия и не более.

Но каждая из них вводит разные абстракции (я не уверен насчет того же уровня этих абстракций), что приводит к разному дизайну приложения.

Когда мне следует использовать ту или иную библиотеку? Что я должен знать, чтобы сделать правильный выбор решение в каждой отдельной ситуации?

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

А как насчет сокет-подобной связи: если это обязательно, мы можем инкапсулировать такую ​​логику в модуль на Asio или любой другой платформе и по-прежнему использовать MPI для других коммуникаций.

Для меня сокеты и стандарт MPI - это разные сетевые сервисы, и непонятно, что является фундаментальным в реальном мире, где расстояние от простой пары клиент-сервер до некоторых средних вычислений составляет один шаг. Также я не думаю, что MPI имеет значительные накладные расходы по сравнению с Asio.

Может быть, это плохой вопрос и все, что нам нужно, это что-то вроде ICE (Internet Communications Engine)? Поддержка разных языков и опять же (как уверяет ZeroC) отличная производительность.

И, конечно же, я никогда не встречал в документации такой темы, как «не используйте для этого эту библиотеку!»

Я просто не могу такая разобщенность: в одном случае это сокеты, в другом - асинхронные сообщения и, наконец, тяжелая платформа промежуточного программного обеспечения. Где ясность в жизненном цикле разработки? Может быть, это несправедливый вопрос, но чтобы начать сокращать этот зоопарк, нам нужна какая-то точка.

7
задан Iakov Minochkin 11 November 2010 в 19:37
поделиться