Как установить ограничение памяти в RStudio (настольная версия)?

Я знаю, что здесь уже был подобный вопрос , но ответ устарел. Информация, которую я нашел в Интернете, относится к RStudio Server, а не к рабочему столу.

У меня ограниченные ресурсы на моем ПК с Windows 7 x64. Я установил переменную среды R_MAX_MEM_SIZE, и это принято RGui (как видно при вводе memory_limit()). Однако RStudio (версия 0.98.507) игнорирует этот параметр и по-прежнему использует всю память моего компьютера, что иногда приводит к сбоям всей системы. Как я могу ограничить объем памяти, используемый R при ее запуске в RStudio Desktop?

Ответ 1

Если я не ошибаюсь, по умолчанию ограничение на Windows составляет 4 ГБ. Вы можете использовать cmd, предложенный @rischan, но с незначительными изменениями: rstudio.exe --max-mem-size = 8GB.

Для информации не забудьте почистить кеш при запуске выполнения нового скрипта. Для этого используйте следующий cmd:

    rm(list=ls())  --> for clean your environment
    gc() --> for launch the ''garbage collection''

Ответ 2

Если ваш вопрос заключается в том, как предотвратить сбой R при достижении предела памяти, а не выяснить, почему не работает memory_limit(), вот несколько вариантов.

Если memory_limit() не позволяет вам ограничить память в Windows:

  • Убедитесь, что ваша версия Windows совпадает с вашей версией R (не Rstudio). То есть, если у вас Windows x64bits, убедитесь, что Rstudio работает на R x64bits. Это можно сделать с помощью Sys.getenv("R_ARCH").
  • Очистите вашу среду с помощью rm(list=ls()) чтобы избавиться от ранее сохраненных наборов данных и функций.
  • Закройте Rstudio и R. Нажмите WINDOWS + R, это откроет окно Run. Напишите cmd и нажмите enter. Перейдите в этот каталог C:\Program Files\RStudio\bin then start rstudio.exe с помощью cd. Возможно, вам придется изменить это в зависимости от того, где находится папка RStudio на вашем компьютере. Затем напишите --max-mem-size=4GB и нажмите ввод. Вам нужно будет повторять это каждый раз, когда вы хотите начать сеанс R. Это может не работать на каждом компьютере.
  • Большинство компьютеров могут обрабатывать больше памяти, чем было установлено ранее. Проверьте, какой максимальный объем памяти может обрабатывать ваш компьютер, и подумайте о покупке дополнительной физической памяти.
  • Нажмите Ctrl+Alt+Del и выберите диспетчер задач. В разделе " Processes проверьте, какая программа использует значительные объемы памяти и можете ли вы безопасно завершить их. Пользователи Windows склонны накапливать ненужные программы.