Verringern der Speicherauslastung von Compiz

37

Ich verfolge seit der Installation von 11.10 die wöchentlich erscheinenden Aktualisierungen, die sich auf die Leistung und die Ressourcennutzung von Compiz auswirken (derzeit werden 12.04 und 14.04 getestet). Für das, was ich gesehen habe, sind die CPU- und Speicherauslastung gesunken (besonders Speicher). Ich vergleiche die Installation von 12.04 / 14.04 ohne Updates und wende dann alle Updates an und vergleiche auch 12.04 mit 14.04. Zum Beispiel verbraucht nautilus weniger als 35 MB (für mich waren es zwischen 70 MB und 150 MB, die vor mehreren Versionen die gleichen Aktivitäten damit ausgeführt haben).

Andere Prozesse haben ebenfalls Optimierungen erhalten, die meinen Gesamtspeicherbedarf von 850 MB auf 610 MB gesenkt haben (ich verwende auch Dienste wie Apache, MySQL usw.), aber nach all der Zeit ist dies der einzige geblieben fast das gleiche ist Compiz. Zum Starten werden immer noch mehr als 100 MB benötigt. Wenn Sie den Desktop nur mit Unity verwenden und keine anderen Programme ausführen, benötigen Sie (derzeit) 133 MB. Welche Optionen kann ich verwenden, um den Speicherbedarf zu verringern, ohne die Stabilität von Unity zu beeinträchtigen (das Entfernen des OpenGL-Plugins aus der Compiz-Konfiguration ist beispielsweise eine schlechte Idee).

Welche Optimierungen können vorgenommen werden, um die Speichernutzung von Compiz zu verringern?

HINWEIS - Ich habe Compiz Config Settings Manager (CCSM) bereits installiert.

Luis Alvarado
quelle
Deaktivieren Sie einige Compiz-Plugins, die Sie nicht benötigen. Sie können dies mit compizconfig-settings-manager tun. sudo apt-get install ccsmdann lauf ccsm.
Anonym
@Anonymous - Ich habe bereits ccsm installiert und als ich das Unity-Plugin und die OpenGL-Plugins in der Frage erwähnte, dachte ich, dass ich nicht sagen muss, dass ich es installiert habe. In beiden Fällen frage ich, welche Optimierungen in ccsm, gconf oder anderen zu tun sind.
Luis Alvarado
+1 für die Frage Luis - seitdem ich alle regelmäßigen Updates auf 11.10 gemacht habe, kann ich Unity auf meinem Netbook nicht mehr verwenden - hat bei einer Neuinstallation einwandfrei funktioniert. Es ist nur ein Compiz, der mein System verlangsamt, da Unity 2D und Gnome Shell perfekt funktionieren .....
Mark Rooney,

Antworten:

19

Nach meiner Erfahrung ist es ziemlich schwierig, die Speichernutzung von Compiz zu verringern. Das Beste, was ich vorschlagen kann, um die Texturqualität im OpenGL-Plugin zu verringern, aber dies wird afaik nicht viel ändern.

Eine weitere Quelle für Speichererweiterungen bei compiz können Speicherverluste sein. Dies scheint manchmal durch Indikatoren ausgelöst zu werden, kann aber auch aus anderen Quellen stammen (noch nicht sicher).

Meine Lösung bestand darin, Unity regelmäßig mithilfe eines einfachen Skripts neu zu starten, das Folgendes enthält:

#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 

Ich weiß, dass dies nicht die beste Antwort ist, deshalb folge ich dieser Frage selbst, um zu sehen, ob jemand bessere Tipps hat.

RolandiXor
quelle
3
Wissen Sie, wie Sie compiz neu starten können, ohne die Position der Fenster in ihren Arbeitsbereichen zu verändern? Nachdem ich Compiz alle töten die Fenster bewegen , um den ersten Arbeitsplatz , und ich habe sie neu zu organisieren, was ein Schmerz
ivotron
1
@ivotron leider nicht. Ich werde aber eine Lösung suchen.
RolandiXor
2
Arbeitete für mich, obwohl ich etwas nervös wurde, als für ein paar Sekunden nichts auf meinem Desktop angezeigt wurde :)
Carlton
21

Eine Problemumgehung für das Compiz Memory Leak ist:

sudo kill -HUP <compiz_process_id>

Keine großartige Lösung, aber es setzt Speicherlecks frei, ohne den Prozess vollständig zu beenden.

Gus West
quelle
Nicht sicher, warum dies abgelehnt wird. Bei mir hat es super geklappt. (obwohl es viele Fensterarbeitsbereiche zurücksetzte)
DPB
2
sudo kill -HUP $(pgrep compiz)
Isaaclw
8
@isaaclw, oderpkill -HUP compiz
Piotr Findeisen
Vielen Dank. Zumindest muss ich nicht das ganze X neu starten.
Mohamad
Diese Lösung hat meine Arbeitsbereichseinstellungen nicht beibehalten. Alle meine Fenster wurden zufällig von einem Arbeitsbereich zu einem anderen verschoben.
jc
10

Ich weiß, dass dies ein alter Beitrag ist, aber Gus 'Antwort hat mir geholfen und ich möchte noch etwas hinzufügen. Das habe ich gemacht (unter Ubuntu 12.04):

  • Alt+ F2(Anwendung ausführen)
  • Geplante Aufgaben
  • Neue wiederkehrende Aufgabe
  • killall compiz -HUP
  • Jeden Tag um 00:00 Uhr

Jetzt wird compiz jede Nacht automatisch neu gestartet, ohne dass die Prozess-ID bekannt sein muss.

Mein Problem war, dass, wenn ich meinen Bildschirm für ein paar Tage gesperrt ließ, das Öffnen der Bildschirmsperre ~ 30 Sekunden dauerte und der Compiz-Speicher etwa 1000 MB betrug.

Northmoor
quelle
1
Unter Ubuntu 14.04 64bit erreicht compiz in nur 5 oder 6 Tagen ununterbrochener Aktivität 2 GB RAM. Dies ist möglicherweise die beste Lösung, die hier angegeben ist, und stört keine der Anwendungen, die ausgeführt werden.
Luís de Sousa,