ограничьте затмение от приема в RAM

Я использую Eclipse в Ubuntu 14.04 для научного материала, и мой код использует много RAM. Когда я выполняю свой код в Eclipse, я вижу в Системном мониторе, что Использование оперативной памяти подходит почти к 100%, и в те же моменты ОС становится очень безразличной (например, открыть терминал займет больше чем минуту). Существует ли способ ограничить сумму RAM, используемой затмением, таким образом, ОС будет всегда оставаться быстро реагирующей?

Спасибо!

1
задан 6 November 2015 в 16:20

2 ответа

При запуске приложения в затмении оно создает отдельный поток в ОС. Использованием оперативной памяти того потока не может управлять затмение.

Один способ избежать Вашей системы от катастрофического отказа состоит в том, чтобы увеличить размер раздела подкачки. Даже в этом случае система становится очень вялой, но не отказывает.

Существуют другие способы управлять использованием оперативной памяти приложения, сказать, закрывают программу, когда использование идет вне определенного значения. Если Вы устанавливаете такие жесткие пределы для использования памяти, то Вы могли бы столкнуться с некоторым непредсказуемым поведением/катастрофическими отказами. Посмотрите ссылки ниже, которые говорят об ограничении Использования оперативной памяти.

https://unix.stackexchange.com/questions/44985/limit-memory-usage-for-a-single-linux-process

https://stackoverflow.com/questions/26860822/how-limit-memory-usage-for-a-single-linux-process-and-not-kill-the-process

Я рекомендовал бы пытаться оптимизировать Ваш код, чтобы заставить его использовать меньше поршня или думать о некотором способе вывести данные к жесткому диску и считать его при необходимости вместо того, чтобы сохранить его в RAM. Еще лучше должен увеличить RAM!

1
ответ дан 7 December 2019 в 16:06

Здесь сценарий Perl для точно этой проблемы.

ВВЕДЕНИЕ

сценарий перерыва - программа мониторинга ресурса для ограничения времени и потребления памяти черных помещенных в коробку процессов в соответствии с Linux. Это управляет командой, которую Вы определяете в командной строке и часах для ее памяти и потребления времени, прерывая процесс, если это выходит из пределов и уведомления пользователя с заданным сообщением.

особенность убийцы этого сценария (и, на самом деле, причина, почему это появилось) - то, что это не только следит за процессом, порожденным непосредственно, но также и отслеживает его впоследствии разветвленных детей. Вы можете выбрать, если объем следивших процессов ограничен группой процесса или деревом процесса.

Источник

0
ответ дан 7 December 2019 в 16:06

Другие вопросы по тегам:

Похожие вопросы: