Параллельные вычисления с использованием компьютеров в локальной сети? - PullRequest
2 голосов
/ 13 апреля 2011

Я пишу проект на C ++ для решения проблемы коммивояжера с использованием генетических алгоритмов . Естественно, я хотел бы сделать это быстрее, используя кучу (около 40) компьютеров в одной локальной сети. Все компьютеры работают под управлением Windows XP ... Итак, вопрос в том, как можно распараллелить его с помощью данного оборудования

Обновление: Вы помогли мне сузить мой выбор до mpich Open MPI, так что остался только один вопрос - использовать ли для них обертки MPI boost? Также, можете ли вы порекомендовать учебник по mpich / OpenMPI?

Ответы [ 2 ]

3 голосов
/ 13 апреля 2011

Вам нужно будет использовать некую форму связи для синхронизации процессов между системами.Общий API для этого типа приложений должен использовать Интерфейс передачи сообщений (MPI) .Существует довольно много реализаций MPI / MPI-2, которые работают в Windows XP.

1 голос
/ 13 апреля 2011

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

Еще один интересный способ - использовать OpenMP.Существуют реализации кластера OpenMP.Это решение может быть проще в реализации, но в некоторых случаях не настолько масштабируемым, как MPI.

...