Разница между SOCK, PVM, MPI и NWS для пакета R SNOW

Функция makeCluster для пакета SNOW имеет разные типы кластеров "SOCK", "PVM", "MPI" и "NWS", но мне не очень понятны различия между ними, а точнее, какой из них лучше всего подходит для моя программа.

В настоящее время у меня есть очередь задач разной длины, поступающих в кластер балансировки нагрузки с clusterApplyLB, и я использую 64-битную 32-ядерную машину Windows.

Я ищу краткое описание различий между четырьмя типами кластеров, которые лучше всего подходят для моего использования и почему.


person jpd527    schedule 25.09.2013    source источник
comment
+1 Какое решение вы выбрали в итоге? У меня такая же проблема.   -  person Tomas    schedule 24.03.2014
comment
Я пошел с MPI по умолчанию. Это (и PVM, который является резервным по умолчанию) позволяет вам просто указать целое число для количества подчиненных узлов.   -  person jpd527    schedule 24.03.2014
comment
Итак, вам пришлось установить какой-то MPI на рабочие узлы? Какой из них вы выбрали? Я спрашиваю, потому что мне нужно решить подобную проблему. Буду признателен, если вы опубликуете свой опыт в качестве ответа!   -  person Tomas    schedule 24.03.2014
comment
О, я имел дело только с одной 32-ядерной машиной, без сети для рабочих узлов. Я опубликую ссылку, которая может помочь, хотя.   -  person jpd527    schedule 24.03.2014


Ответы (1)


Добро пожаловать в параллельное программирование. Вы можете просмотреть виньетку отличного пакета parallel, который поставляется вместе с R, так как он дает общее введение. Это также дает вам представление о том, что вы можете или не можете делать в Windows — короче говоря, PVM и MPI — это стандартные подходы к параллельному программированию, поддерживаемые одноименными библиотеками. Они существуют в Windows, но используются реже и часто не так зрелы, как их аналоги в Unix.

Если вы хотите придерживаться снега, ваши возможности по существу ограничены кластерами типов SOCK. Опять же, документация пакета будет иметь указатели.

person Dirk Eddelbuettel    schedule 25.09.2013