Я использую R для некоторых относительно больших данных и решаю некоторые проблемы с памятью.Это на Linux.У меня значительно меньше данных, чем доступно в системе, так что это проблема управления распределением переходных процессов.
Когда я запускаю gc (), я получаю следующий список
used (Mb) gc trigger (Mb) max used (Mb)
Ncells 2147186 114.7 3215540 171.8 2945794 157.4
Vcells 251427223 1918.3 592488509 4520.4 592482377 4520.3
, но R, похоже, выделяет 4 ГБ в резидентной памяти и 2 ГБ в свопе.Я предполагаю, что это выделенная ОС память, которую система управления памятью R выделит, а GC при необходимости.Однако допустим, что я не хочу, чтобы R OS выделяла более 4 ГБ, чтобы предотвратить перегрузку свопинга.Я всегда мог ограничиться, но тогда он просто падал, а не работал в ограниченном пространстве и чаще собирал GCing.Есть ли способ указать произвольный максимум для триггера gc и убедиться, что R никогда не выделяет больше os?Или есть что-то еще, что я мог бы сделать, чтобы управлять использованием памяти?