Ошибка при попытке сделать пример doSMP - PullRequest
0 голосов
/ 22 июля 2011

Я пытаюсь запустить простой пример в виньетке doSMP, но получаю следующую ошибку.Во-первых, я не уверен, как существует существующий сеанс doSMP, так как я выполнил приведенный ниже код сразу после перезагрузки компьютера.Кроме того, есть повторяющиеся ошибки о несуществующем пакете doSMP, но вызов библиотеки (doSMP) работает просто отлично.помогите!

> librayr(doSMP)
Error: could not find function "librayr"
> library(doSMP)
Loading required package: foreach
Loading required package: iterators
Loading required package: codetools
foreach: simple, scalable parallel programming from Revolution Analytics
Use Revolution R for scalability, fault tolerance and more.
http://www.revolutionanalytics.com
Loading required package: revoIPC
Warning messages:
1: package 'doSMP' was built under R version 2.13.1
2: package 'foreach' was built under R version 2.13.1
3: package 'revoIPC' was built under R version 2.13.1
> w <- startWorkers(workerCount=4)
Warning messages:
1: In startWorkers(workerCount = 4) :
  there is an existing doSMP session using doSMP1
2: In startWorkers(workerCount = 4) :
  there is an existing doSMP session using doSMP2
> Error in library(doSMP) : there is no package called 'doSMP'
Calls: suppressMessages -> withCallingHandlers -> library
Execution halted
Error in library(doSMP) : there is no package called 'doSMP'
Calls: suppressMessages -> withCallingHandlers -> library
Execution halted
Error in library(doSMP) : there is no package called 'doSMP'
Calls: suppressMessages -> withCallingHandlers -> library
Execution halted
Error in library(doSMP) : there is no package called 'doSMP'
Calls: suppressMessages -> withCallingHandlers -> library
Execution halted

Ответы [ 2 ]

1 голос
/ 02 августа 2011

Закрытие этого вопроса - пакет слишком глючит для использования. Если кто-то заставил это работать надежно, ответьте, и я сниму этот пост как ответ.

0 голосов
/ 23 июля 2011

Очередь задач создается doSMP при каждом вызове функции startWorkers.Если вы не вызовете stopWorkers () до выхода из сеанса R, то ресурсы межпроцессного взаимодействия, использованные для запуска очереди задач, все еще будут существовать после выхода из R.

Вы можете удалить очередь задач следующим образом:

>rmSessions(all.names=TRUE)
attempting to delete qnames: doSMP1, doSMP2, doSMP3, doSMP4, doSMP5, doSMP6, doSMP7, doSMP8
successfully deleted queues: doSMP1, doSMP2, doSMP3, doSMP4, doSMP5

Теперь любые последующие вызовы startWorkers () не должны создавать никаких предупреждений.Это задокументировано в файле справки для rmSessions.

Стивен Веллер
Инженер технической поддержки Revolution Analytics
Revolution Analytics, Inc.
1505 Westlake Ave North Suite 300
Сиэтл,WA 98109

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...