Любые библиотеки C ++ для запуска одной программы на нескольких компьютерах (т. Е. «Использовать сеточные вычисления для запуска моего приложения») - PullRequest
0 голосов
/ 07 июля 2010

Мне нужен метод преобразования одной программы для работы на нескольких компьютерах в сети (подумайте «сетевые вычисления»).

Я использую MSVC 2007 и C ++ (не для .NET).

Программа, которую я написал, идеально подходит для параллельного программирования (она выполняет анализ научных данных), поэтому, чем больше компьютеров, тем лучше.

Ответы [ 2 ]

2 голосов
/ 08 июля 2010

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

Существует несколькореализации.Я работал с MPICH , но я мог бы рассмотреть возможность сделать это с Boost MPI (которого не было в прошлый раз, когда я был в районе).

1 голос
/ 08 июля 2010

Во-первых, эта тема освещена здесь: https://stackoverflow.com/questions/2258332/distributed-computing-in-c

Во-вторых, при поиске «Библиотека сетевых вычислений C ++», «Сетевые вычисления для Visual Studio» и «Библиотека распределенных вычислений C ++» было получено следующее:

  • OpenMP + OpenMPI. OpenMP управляет запуском одной программы C ++ на нескольких ядрах ЦП на одном компьютере, OpenMPI обрабатывает обмен сообщениями между несколькими компьютерами. OpenMP + OpenMPI = грид-вычисления.
  • POP-C ++, см. http://gridgroup.hefr.ch/popc/.
  • Xoreax Grid Engine, см. http://www.xoreax.com/high_performance_grid_computing.htm. Xoreax фокусируется на ускорении сборок Visual Studio, но Xoreax Grid Engine также можно применять к универсальным приложениям. Глядя на цитаты http://www.xoreax.com/xge_xoreax_grid_engine.htm, мы видим цитату «Как только набор задач (набор задач для распространения вместе с их определениями зависимостей) определен через один из интерфейсов, описанных ниже, он может быть выполнен на любой машине запуск агента IncrediBuild. " См. Прилагаемую статью CodeGuru на http://www.codeproject.com/KB/showcase/Xoreax-Grid.aspx
  • Алхими, см. http://www.codeproject.com/KB/threads/alchemi.aspx.
  • RightScale, см. http://www.rightscale.com/pdf/Grid-Whitepaper-Technical.pdf. Цитата из раздела примеров этой статьи: «Анализ фармацевтического белка: несколько миллионов сравнений белковых соединений были выполнены менее чем за день - задача, которая заняла бы неделю внутренние ресурсы клиента ... "
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...