2013-08-30 2 views
0

Я пытаюсь отправить R в пакетном режиме на Linux, но обычно через 30-40 минут после отправки процесс останавливается, и я получаю сообщение ниже. Сообщение появляется в файле .Rout, а не в оболочке Linux. Подавать я использую R CMD BATCH myprogram.R &Ошибка с пакетом submit in R

terminate called after throwing an instance of 'CxException' 
    what(): 

Программа работает без проблем, если они представлены в течение самого R, но по какой-то причине он останавливается на полпути через исполнение, когда представленные в пакете. Процесс останавливается при создании матрицы 45000 x 10000

Вот краткий обзор программы. Он начинается с чтения трех файлов из CSV. Затем он создает матрицу 45000 x 10000, которая занимает около 3,7 ГБ оперативной памяти. Матрица является матрицей документов-термов, в которой 1 присваивается, когда член находится в документе, 0 в противном случае. Затем он проходит еще несколько шагов, в которых эта матрица используется для получения результатов. В этот момент ОЗУ увеличивается примерно до 4,5 ГБ, и он остается на этом уровне. Я контролирую работу в Linux, и кажется, что для всех остальных процессов достаточно свободных ресурсов, как процессора, так и ОЗУ.

Любые идеи/предложения, что может быть причиной этого?

Добавлено уточнение:
1) Версия R является Revolution R v.6.2; 2) Никакие дополнительные пакеты не используются;

+0

Ваш алгоритм детерминированным (ничего случайного?) Любая идея, что функция вызывается, как он бросает ошибку? Какие пакеты вы используете? – flodel

ответ

0

Возможно, вам повезло с использованием Rscript.exe, а не R CMD BATCH.

Синтаксис вы хотели бы использовать для этого является:

"%PATH TO EXE%\Rscript.exe" "%PATH TO SCRIPT%\script.R" "INPUT ARGUMENTS (if any)"

+0

Привет, я попробовал, но с тем же результатом, что и R CMD BATCH. Процесс останавливается, и я получаю ту же ошибку. – vatodorov

0

Это то, что Rev-R должен это исправить. Тем не менее, вы можете выполнить свой код с использованием исходной функции в сеансе R. Синтаксис является:

R -e 'source("Your_Script.R")' 
Смежные вопросы