«Не удается открыть соединение» - HPC в R со снегом - PullRequest
7 голосов
/ 22 ноября 2011

Я пытаюсь запустить параллельную работу в R, используя снег. Я был в состоянии выполнить чрезвычайно подобные работы без проблем на более старых версиях R и снега. Зависимости пакета R не позволяют мне вернуться.

Что происходит: Мои задания заканчиваются на шаге parRapply, т. Е. В первый раз, когда узлам приходится делать что-либо, кроме сообщения Sys.info(). Сообщение об ошибке гласит:

Error in checkForRemoteErrors(val) : 
3 nodes produced errors; first error: cannot open the connection 
Calls: parRapply ... clusterApply -> staticClusterApply -> checkForRemoteErrors

Технические характеристики: R 2.14.0, снег 0.3-8, RedHat Enterprise Linux Client выпуск 5.6. Пакет «Снег» построен на правильной версии R.

подробности: Похоже, что следующий код выполняется нормально:

cl <- makeCluster(3)
clusterEvalQ(cl,library(deSolve,lib="~/R/library"))
clusterCall(cl,function() Sys.info()[c("nodename","machine")])

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

1 Ответ

17 голосов
/ 18 декабря 2011

Эта загадочная ошибка возникла из-за того, что входного файла, запрошенного во время выполнения программы, на самом деле не было. Каждый узел будет пытаться загрузить этот файл и затем потерпит неудачу, но это приведет только к сообщению «не удается открыть соединение».

Это означает, что почти все может вызвать ошибку "соединения". Невероятно раздражает!

...