mem.limits и gc - PullRequest
       6

mem.limits и gc

1 голос
/ 06 февраля 2012

Я использую mem.limits для ограничения предела памяти процесса R.Например:

mem.limits(500000, 20000000)
gc() #see limits
x <- rnorm(1e8); #should fail

Это все еще работает нормально, однако, начиная с R 2.14, появляется предупреждающее сообщение:

Предупреждение: «mem.limits» устарелаВместо этого используйте «gc».См. Справку («устарело»)

Теперь я не уверен, что с этим делать.Как сборка мусора связана с установкой лимита памяти?

1 Ответ

3 голосов
/ 06 февраля 2012

В R 2.14.x они устарели, но все еще функционируют:

> R.version.string
[1] "R version 2.14.0 (2011-10-31)"
> mem.limits(500000, 20000000)
nsize vsize 
5e+05 2e+07 
Warning message:
'mem.limits' is deprecated.
Use 'gc' instead.
See help("Deprecated") 
> gc() #see limits
         used (Mb) gc trigger (Mb) limit (Mb) max used (Mb)
Ncells 170754  9.2     350000 18.7       26.8   350000 18.7
Vcells 272683  2.1     905753  7.0       19.1   851886  6.5
> x <- rnorm(1e8); #should fail
Error: vector memory exhausted (limit reached?)

В R-devel все ограничения не действуютФункциональность была удалена без замены.Подробнее см. НОВОСТИ для R 2.14.0 и PR # 14795.

...