2015-05-26 2 views
0

Мне нужно выполнить различные задачи с помощью Python: анализ чувствительности, оптимизация и запуск симулятора. Однако первая постобработка результатов моделирования основывается на R и громоздкой базе данных, хранящейся в Rdata (8 Гб с некоторыми таблицами данных, представляющими до 3 Гб). Поэтому мне нужно повторить вызов R-скриптов без повторной загрузки данных (что занимает несколько минут). Я первый попытался с pyRserve, но я столкнулся пределы памяти, которые кажутся более строгими, чем с сырым R.Управление памятью с помощью Rserve на Windows

С:

import pyRserve 
conn = pyRserve.connect() 
conn.r.load('.Rdata') 

Я получаю следующее сообщение об ошибке:

REvalError: Error: cannot allocate vector of size 640.3 Mb 

Итак:

1/Есть ли способ выделить больше памяти Rserve (обычно это сумма, выделенная в raw R ie 16 Gb с моей конфигурацией)?

2/Есть ли альтернатива Rserve, чтобы загрузить Rdata раз и навсегда, а затем запустить R-скрипты в пределах одного рабочего пространства?

ответ

0

Следующие работы прекрасно.

memory_limit = getattr(conn.r, 'memory.limit') 
memory_limit(16287.0) 
Смежные вопросы