Sonntag, 1. Dezember 2013

Mein Browser braucht zu viel Speicher, was kann man dagegen tun?

Jeder bekommt, was er verdient hat. Das gilt auch für Web Browser und ihren Speicherverbrauch. Trotz 4GB Arbeitsspeicher bekomme ich leider regelmäßig Speicherprobleme.

Hier eine kurze Liste von mir, um Abhilfe zu schaffen. Ich möchte keine spezifischen Tipps oder tiefgreifenden Einstellungen für diese oder jene Surfmaschine zeigen, sondern nur allgemeine Hinweise geben (Sterne-Rating dahinter):

1.  weniger Tabs gleichzeitig offen halten. Klingt doof, aber wer ständig 100+ Tabs offen hat, braucht sich nicht wundern (★★★)

2. Browser häufiger neu starten (die letzte Browsersession lässt sich einfach wiederherstellen in Firefox, Safari & Co): Etwas lästig, aber wirksam (★★★★)

3. nur die nötigsten Plugins, Addons, Themes, etc. aktivieren: Es gibt leider einige Plugins, die sich recht negativ auf den Speicherverbrauch auswirken; teilweise entsteht das Ungemach auch erst aus der Kombination von (unverträglichen) Plugins und anderer Erweiterungen. Deshalb der eher allgemein Rat, nur das nötigste zu aktiveren (★★★)

(- Browser im 32-Bit Modus betreiben, ... leider nicht mehr möglich
  * Im Finder zur Safari.app navigieren; Datei-Informationen öffnen ⌘+i und im Info-Dialog "32-Bit" anhaken, sowie (ab Safari 5.1) auch für Webprocess.app auf die gleiche Art den 32-Mode aktivieren! Die App ist zu finden unter /System/Library/StagedFrameworks/Safari/WebKit2.framework/ bzw. /System/Library/PrivateFrameworks/WebKit2.framework/ )

Safari Webprocess zu entladen, wie's geht steht unten (★★★★★)
  Damit kann man massig Speicher freischaufeln! Einziger Nachteil dabei ist, dass alle Seiten beim ersten erneuten Zugriff neu geladen werden.

Eine ähnliche Übersicht von Mozilla gibt es hier: http://kb.mozillazine.org/Reducing_memory_usage_(Firefox)

Gerade für Firefox und Chrome gibt es zahlreiche Stellschrauben unter der Haube, die aber angesichts neuerlichen der Speichereffizienz von Firefox bei hoher Last mir weniger sinnvoll erscheinen. Der Fuchs ist letztlich (wieder) der Browser der Wahl, wenn es darum geht mit möglichst geringer Speicherlast vielen Seiten gleichzeitig offen zu halten. siehe ghacks.com

#Update 3: Abschnitt zum Entladen des Safari Webprocess ergänzt

Folgendes Shellscript beendet den Webprocess von Safari, wenn dieser mehr als 6 (LIMIT-Variable) Prozent des systemweit verfügbaren RAM-Speichers belegt. Der WebProzess wird in dem Fall neu gestartet und die offenen Webseiten refreshed. Es wird keine Webseite geschlossen, sie werden nur neu geladen. Eingaben in Foren & Formulare sollte man aber vorher abschicken / speichern.
Man kann natürlich auch einen höheren Wert einstellen. Der Wert wurde aber deshalb so niedrig gewählt, um sicherzustellen, dass der von Safari belegte Speicher für andere Anwendungen so früh freigegeben wird, sobald es sich lohnt.

Den Code unten kopieren und  als .sh-Datei abspeichern; das Script noch im Terminal per chmod +x ausführbar machen; danach kann es bei Bedarf vom Terminal aus oder mit einem Launcher wie Alfred, Quicksliver, etc. aus gestartet werden.) 

#!/bin/bash
filename=".tt_0e92309ei2390i209ei9203"
LIMIT=6
ps -eo pmem,pid,args | grep WebProcess.app | grep -v grep | cut -d"/" -f1 > $filename
while read line
do
  mem=`echo "${line}"| awk '{print $1}'`
  mem=$(echo $mem | sed -e 's/,/./g')
  pid=`echo "${line}"| awk '{print $2}'`
  status=$(echo "$mem > $LIMIT" | bc -l)
  if [ "$status" -eq "1" ]
  then
    kill $pid
  fi
done < $filename
rm $filename

Keine Kommentare :

Kommentar veröffentlichen