Снижение использования памяти Compiz


37

Я следил за обновлениями, которые появляются каждую неделю, и влияют на производительность и использование ресурсов 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).


Отключите некоторые плагины Compiz, которые вам не нужны. Вы можете сделать это с помощью compizconfig-settings-manager. sudo apt-get install ccsmтогда беги ccsm.
— Аноним

@Anonymous - у меня уже установлен ccsm, и, как я уже упоминал, плагин Unity и плагины OpenGL в вопросе, я подумал, что нет необходимости говорить, что я его установил. В любом случае я прошу, какую оптимизацию делать в ccsm, gconf или любой другой.
— Луис Альварадо

+1 за вопрос, Луис - поскольку, выполняя все обычные обновления до 11.10, я больше не могу использовать Unity на своем нетбуке, - перед новой установкой все работало нормально. Это только компиз замедляет мою систему, так как Unity 2D и Gnome Shell работают отлично .....
— Марк Руни

Ответы:


19

По моему опыту довольно сложно снизить использование памяти 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 

Я знаю, что это не самый лучший ответ, поэтому я сам следую за этим вопросом, чтобы узнать, есть ли у кого-нибудь лучшие советы.


3
Знаете ли вы, как перезапустить Compiz, не облажаясь расположение окон в их рабочих пространствах. После того, как я убил compiz, все окна переместились в первое рабочее пространство, и мне пришлось их реорганизовать, что является болью
— ivotron

1
@ivotron, к сожалению, нет. Я буду искать решение, хотя.
— RolandiXor

2
Работал на меня, хотя я немного нервничал, когда ничего не показывалось на моем рабочем столе в течение нескольких секунд :)
— Carlton

21

Обойти утечку памяти в compiz можно следующим образом:

sudo kill -HUP <compiz_process_id>

Не очень хорошее решение, но оно освобождает утечку памяти, не убивая полностью процесс.


Не уверен, почему это отрицательно. Это прекрасно сработало для меня. (хотя это сбрасывает много оконных рабочих пространств)
— dpb

2
sudo kill -HUP $(pgrep compiz)
— isaaclw

8
@isaaclw, илиpkill -HUP compiz
— Петр Финдейзен

Спасибо. По крайней мере, мне не нужно перезапускать весь X.
— Мохамад

Это решение не поддерживает мои настройки рабочих пространств. Все мои окна перемещаются случайным образом из рабочего пространства в другое.
— х

10

Я знаю, что это старый пост, но ответ Гаса помог мне, и я хотел бы добавить к нему. Вот что я сделал (на Ubuntu 12.04):

  • Alt+ F2(запустить приложение)
  • Дела по расписанию
  • Новое повторяющееся задание
  • killall compiz -HUP
  • Каждый день в 00:00

Теперь compiz будет перезапускаться автоматически каждую ночь, без необходимости знать идентификатор процесса.

Моя проблема заключалась в том, что, если я оставил свой экран заблокированным на несколько дней, потребовалось ~ 30 секунд, чтобы открыть блокировку экрана, и использование памяти compiz составило около 1000 МБ.


1
На 64-битной Ubuntu 14.04 compiz получает до 2 Гб оперативной памяти всего за 5 или 6 дней непрерывной работы. Возможно, это лучшее решение, приведенное здесь, и оно не беспокоит ни одно из запущенных приложений.
— Луис де Соуза
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.