Safari als Speicherfresser, revisited

Das Problem ist, Apple versucht damit den Nutzer zum RAM-Kaufen zu treiben… bzw. zum Kauf eines Neugerätes. Mein iMac mit seinen 3GB RAM, die er maximal verwalten kann, kommt wegen der schlechten Speicherverwaltung der Apple Programme ständig ins schwitzen…

Meiner Meinung nach ist das Absicht.
 
Das Problem ist, Apple versucht damit den Nutzer zum RAM-Kaufen zu treiben… bzw. zum Kauf eines Neugerätes. Mein iMac mit seinen 3GB RAM, die er maximal verwalten kann, kommt wegen der schlechten Speicherverwaltung der Apple Programme ständig ins schwitzen…

Meiner Meinung nach ist das Absicht.

Ich halte es für äußerst unwahrscheinlich, dass Apples Management aus strategischen Gründen die Entwickler dazu zwingt, eine schlechte Speicherverwaltung zu implementieren...Das fällt doch wohl eher in den Bereich Verschwörungstheorie ;)
 
Liegt wohlmöglich an den angesurften Seiten, dessen Javascripte und halt auch die Menge…

Lasse ich meinen Safari tagelang unbenutzt im Dock liegen frisst der auch keinen RAM…
 
Bei mir gehts hoch wenn man Videos geschaut hat. Bin dann oft bei 1GB
 
Hab jetzt auch den Test gemacht:

nach dem Start: 117 MB
mit allen Tabs: 464 MB (336 wenn nur im Hintergrund und bevor die Tabs angewählt wurden)
danach wieder nur MU: 383 MB

Safari 5.0.6 im 64 Bit Modus
 
Nach Start:
attachment.php


Mit allen angegebenen Tabs:
attachment.php


Alle tabs wieder geschlossen:
attachment.php



screenshot 2011-06-20 um 13.14.29.pngscreenshot 2011-06-20 um 13.15.18.pngscreenshot 2011-06-20 um 13.16.04.png
 
Start: 71,5 / 196,8 MB (phys. / virt. RAM)
Alle Tabs: 241,7 / 342,6 MB
geschl.: 241,4 / 315,3 MB
 
Das Problem ist, Apple versucht damit den Nutzer zum RAM-Kaufen zu treiben… bzw. zum Kauf eines Neugerätes. Mein iMac mit seinen 3GB RAM, die er maximal verwalten kann, kommt wegen der schlechten Speicherverwaltung der Apple Programme ständig ins schwitzen…

Meiner Meinung nach ist das Absicht.

Das ist Quatsch: siehe z.B. Testergebnisse von Safari 3.0 http://www.dotnetperls.com/browser-memory
und im Vergleich dazu Safari 4.0 - jeweils mit den Konkurrenten im Vergleich
http://www.dotnetperls.com/chrome-memory

Das Problem sind in erster Linie Speicherlöcher - siehe z.B. http://www.webkit.org/blog/24/update-on-memory-leaks/
Prinzipiell haben die alle - einige eben mehr als andere - Webkit traditionell eher mehr als andere, aber die Hersteller arbeiten alle daran sie zu minimieren.

Man kann das Problem nur eingrenzen, in dem man diese Speicherlöcher möglichst alle fixt. Was aber wohl nie vollständig klappen wird und zumindest bei Webkit/Apple war hierbei auch nie sonderlich hinter her - in Vergleich zu anderen. Oder man macht es so wie Google mit Chrome. Immer neue Prozesse zu starten und sie auch komplett zu schließen löst das Problem an sich auch. Hat nur den Nachteil, dass die Methode grundsätzlich erheblich mehr Speicher benötigt. Macht man aber alle Prozesse wieder zu bzw. Tab und Fenster wieder zu, geht der Speicherverbrauch nun mal ganz sicher auch wieder komplett zurück bzw. Speicherlöcher sind sicher auch vorhanden, aber eben nicht mehr so relevant. Führer oder später wird auch Safari und Firefox u.s.w. diese Methode komplett übernehmen - teils tun sie es ja bereits, in dem z.B. Flashkram ja bereits in eigene Prozesse ausgelagert werden. Grundsätzlich verbrauchen dann alle Browser in der Regel sogar deutlich mehr Arbeitsspeicher. Aber eben nur wenn man auch viele Fenster und Tabs auf hat - wenn nicht .. dann nicht .. ;-)
 
Zuletzt bearbeitet:
Bei Firefox gibt es diese Diskussion seit Jahren auf allen Betriebssystemen, doch die Entwickler weigern sich, das ernst zu nehmen. .
Ebenso Quatsch. Sie arbeiten durchaus sehr hart daran.
Man liest zwar immer wieder von einigen die z.B. schreiben das nach wenigen Minuten Firefox ein paar Gigabyte Speicher verbraucht. Aber wenn das passiert, hat das wohl nur etwas damit zu tun das grundsätzlich an ihrem Firefox etwas zerdeppert ist - kann man auch selber wieder fixen z.B. neues Profil anlegen. Oder sie ballern ihren Firefox (oder auch Safari, oder ..) extrem mit Erweiterungen voll. Dann müssen sie eben auch selber entscheiden was sie wollen .. mehr Funktion über viele Erweiterungen, oder eben einen schlanken Fuchs, Safari u.s.w ..
 
Test:
Safari 5 64bit
114MB nur macuser.de Seite offen
340MB alle Tabs geöffnet und fertig geladen
316MB alle Tabs wieder geschlossen, bis auf auf macuser.de

Opera im Vergleich
130
330
285
 
Das Problem sind in erster Linie Speicherlöcher - siehe z.B. http://www.webkit.org/blog/24/update-on-memory-leaks/
Prinzipiell haben die alle - einige eben mehr als andere - Webkit traditionell eher mehr als andere, aber die Hersteller arbeiten alle daran sie zu minimieren.

Das ist klar, allerdings liegt das nicht an Webkit, denn Chromium bleibt bei mir auch nach Wochenlanger, konstanter Nutzung unter 300MB physikalisch genutztem RAM.
Und ich denke nicht, dass Apple in seine Webkit Builds Speicherlöcher reinfriemelt, die sie dann nicht bemerken bzw. durch reverts beheben könnten…
 
Das ist klar, allerdings liegt das nicht an Webkit, denn Chromium bleibt bei mir auch nach Wochenlanger, konstanter Nutzung unter 300MB physikalisch genutztem RAM.
Und ich denke nicht, dass Apple in seine Webkit Builds Speicherlöcher reinfriemelt, die sie dann nicht bemerken bzw. durch reverts beheben könnten…

Dann lies doch mal ein paar Beispielbugs https://bugs.webkit.org/buglist.cgi?quicksearch=memory+leak um zu verstehen, wo hier das Problem ist.
oder z.B. von Mozilla https://bugzilla.mozilla.org/buglist.cgi?quicksearch=memory+leak
Das hat mit angeblicher Absicht nichts zu tun ;-)

Warum du jetzt das Chromium Beispiel bringst, ist mit allerdings nun schleierhaft. Dort wird eben, wie bereits erwähnt, alles in eigene Prozesse ausgelagert.
Ist somit praktisch ein permanentes neu starten des Browsers. Prinzipiell ist das so natürlich die bessere Methode. Hat aber nur den Nachteil, das diese Methode grundsätzlich erheblich mehr Speicher verbraucht - nicht immer, aber in der Regel bzw. in der Praxis eben schon.
 
Nebenbei - grundsätzlich: http://de.wikipedia.org/wiki/Speicherleck
Von wegen des technischen Unterbaus der nächsten, oder übernächsten, oder wann auch immer Safari Version.
http://trac.webkit.org/wiki/WebKit2
Mit anderen Worten, das wird auch alles in separate Prozesse ausgelagert.
Praktisch wird die Speichernutzung dem von Chrome angeglichen - bei vielen Tabs und Fenstern eben sehr, sehr viel mehr Verbrauch.
Aber das Problem, das sich Safari kontinuierlich immer mehr Speicher schnappt und nicht mehr freigibt wird so auch gelöst. Nicht weil man das grundsätzliche Problem löst, sondern eben mit permanenten Prozessneustarts umgeht ;-)
Hätten die Rechner schon immer derartig viel Speicher wie heute, hätten wohl schon lange alle Browser die Methode - nur ist das ja mal nicht so gewesen ;-)
 
Nach Start: 100,8 MB
alle Tabs: 325,9 MB (geladen und aufgerufen)
alle zu bis auf MU: 264,1 MB
 
Zurück
Oben Unten