Снижение использования памяти Compiz
Я следил за обновлениями, которые появляются каждую неделю, и влияют на производительность и использование ресурсов Compiz с тех пор, как я установил 11.10 (сейчас я тестирую 12.04 и 14.04). Для того, что я видел, использование процессора и памяти снизилось (особенно память). Я сравниваю установку 12.04/14.04 без каких-либо обновлений и затем применяю все обновления, а также сравниваю 12.04 и 14.04. Например, nautilus использует менее 35 МБ (для меня это было от 70 МБ до 150 МБ, выполняющих те же действия с ним несколько версий назад).
Другие процессы также получили некоторую оптимизацию, которая снизила мое общее использование памяти с примерно 850 МБ до 610 МБ (я также использую такие сервисы, как Apache, MySQL и т. Д.), Но после всего этого времени осталась единственная, которая осталась почти то же самое есть Compiz. Он по-прежнему использует более 100 МБ для запуска. Только используя рабочий стол с Unity и без других запущенных программ, требуется (прямо сейчас) 133 МБ. Какие варианты я могу использовать, чтобы уменьшить объем памяти, БЕЗ ставящий под угрозу стабильность Unity (например, удаление плагина OpenGL из конфигурации Compiz - ПЛОХАЯ идея).
Какие оптимизации можно сделать, чтобы снизить использование памяти Compiz?
ПРИМЕЧАНИЕ. - У меня уже установлен менеджер настроек Compiz Config (CCSM).
3 ответа
По моему опыту довольно сложно снизить использование памяти Compiz. Лучшее, что я могу предложить, - снизить качество текстур в плагине OpenGL, но это не сильно изменится.
Другим источником увеличения памяти Compiz могут быть утечки памяти. Это, кажется, иногда вызывается индикаторами, но может быть и из других источников (пока не уверен в них).
Мое решение состояло в том, чтобы периодически перезапускать единство, используя простой скрипт, который содержит:
#kill compiz completely, including all child processes, freeing it's memory:
killall -9 compiz &
#run unity and give you back a free terminal.
unity & disown
Я знаю, что это не самый лучший ответ, поэтому я сам следую за этим вопросом, чтобы узнать, есть ли у кого-нибудь лучшие советы.
Обойти утечку памяти в compiz можно следующим образом:
sudo kill -HUP <compiz_process_id>
Не очень хорошее решение, но оно освобождает утечку памяти, не убивая полностью процесс.
Я знаю, что это старый пост, но ответ Гаса помог мне, и я хотел бы добавить к нему. Вот что я сделал (на Ubuntu 12.04):
- Alt+F2 (запустить приложение)
- Запланированные задачи
- Новое повторяющееся задание
killall compiz -HUP
- Каждый день в 00:00
Теперь compiz будет перезапускаться автоматически каждую ночь, без необходимости знать идентификатор процесса.
Моя проблема заключалась в том, что, если я оставил свой экран заблокированным на несколько дней, потребовалось ~30 секунд, чтобы открыть блокировку экрана, и использование памяти compiz составило около 1000 МБ.