Frage zum Arbeitsspeicher / Swapfile

eeeeeskimo

Aktives Mitglied
Thread Starter
Dabei seit
03.01.2011
Beiträge
142
Reaktionspunkte
5
Hallo,

klärt mich doch mal auf:

Ich wollte das andauernde Schreiben auf die SSD verhindern und habe SWAP deaktiviert. Das Swap-File ist jetzt auch 0 Byte groß, aber dennoch werden einige hundert MB bei Seiteneinlagerung und Seitenauslagerung angezeigt.

Verstehe ich nicht. Dachte immer die Seiteneinlagerung wäre die Auslagerung vom RAM auf die Platte. Genau das wollte ich ja verhindern.
 
.. ja genau so isses ....

Aber wie du es schon geschrieben hast SWAP .... RAM ---> Platte (Einlagern)
...also ist der RAM das Problem !!

Wieviel Arbeitsspeicher haste denn ?
 
...normalerweise sollte das für den Normal-User reichen ... :)

kritisch sind die Seiteneinlagerungen ( OS X denkt da andersherum)
schau also mal in die Aktivitätsanzeige genau hin Ein- / Auslagerungen ....?!
 
Bildschirmfoto 2013-02-08 um 12.38.24.jpg


Ist mir schon klar das mit den Seiteneinlagerungen.
Aber wo schreibt der die denn hin, wenn ich Swap deaktiviert habe und das Swap-file auch 0Byte gross ist?
 
...normalerweise sollte das für den Normal-User reichen ... :)

kritisch sind die Seiteneinlagerungen ( OS X denkt da andersherum)
schau also mal in die Aktivitätsanzeige genau hin Ein- / Auslagerungen ....?!

Ähm nein, Seiteneinlagerungen sind RAM-Pages, die von der HDD in den RAM gelesen werden. Seitenauslagerungen sind RAM-Pages die vom RAM in das Swapfile geschrieben werden.
 
  • Gefällt mir
Reaktionen: Madcat
Ähm nein, Seiteneinlagerungen sind RAM-Pages, die von der HDD in den RAM gelesen werden. Seitenauslagerungen sind RAM-Pages die vom RAM in das Swapfile geschrieben werden.


...Nö ... Interessanterweise "denkt" Mac-OS X anders herum: Daten im virtuellen Speicher gelten als "eingelagert" (Englisch "page in"), sie von dort zu holen, heißt "auslagern".
 
Ist ja eigentlich auch egal in welche Richtung es einlagern, oder auslagern heisst.
Fakt ist, das wollte ich verhindern und das swap file ist ja auch 0 Byte gross.
Schreibt OS X jetzt noch auf die Platte und wenn ja wohin?

Vor allen Dingen - kann ich es abstellen?
 
Das soll also bedeuten, dass Mac OS X bei meinen 16GB RAM insgesamt 354,3MB Daten in ein 0 Kbyte großes Swapfile geschrieben hat, dabei aber grundsätzlich nichts von der Platte einliest, obwohl ich Programme öffne und benutze?

Halte ich für etwas unrealistisch.

attachment.php


Vielleicht kann jemand das ganze mit einer seriösen Quelle belegen. Würde mich wirklich interessieren.
 

Anhänge

  • Swap.png
    Swap.png
    15,7 KB · Aufrufe: 444
... ist es nicht vielmehr so ...
Virtueller Speicher und SWAP-Speicher (WAS OSX benutzt) ist ein kleiner aber feiner Unterschied. Während virtueller RAM eher wie echter RAM benutzt wird (in kleinen Blöcken) und als tatsächliche Erweiterung des Hauptspeichers, werden länger nicht benutzte Daten in den SWAP-Speicher in größeren Stücken ausgelagert um wieder RAM freizuschaufeln.


...seriös genug ...?

... hier nocheinmal von Apple ....

der letzte Absatz ist interessant ...(meines Erachtens ist der EINGEDEUTSCHT worden .. ;) )

...."Tipp: Seitenauslagerungen treten auf, wenn der Mac Daten aus dem RAM auf die Festplatte schreiben muss (weil der RAM-Speicher voll ist). Durch Vergrößerung des RAM können Seitenauslagerungen verringert werden."
 
Natürlich ist das ein Unterschied. Trotzdem gibt es im OSX (so wie in jedem Unix) Speichermanagement den „virtuellen Speicher“ und den „SWAP“, wenn man ihn denn so nennen will.
Beide haben unterschiedliche Aufgaben, die Verwirrung unter Mac Usern stamm vornehmlich aus Mac OS 9 Zeiten, wo der SWAP-Speicher (sprich die „Auslagerungsdatei“) fälschlicherweise immer als „virtueller Speicher“ bezeichnet wurde.

Pageouts bzw. das Paging dient der Speicherverwaltung. Der Kernel liest Pages ein (Pagein), wenn ein Programm startet. Wenn der physikalische RAM aufgebraucht ist, werden einzelne Speicherseiten über einen Pageout ausgelagert, damit wieder mehr physikalischer RAM verfügbar wird.

Ein Swap ist letztendlich das Auslagern eines gesamten Prozesses, wenn dieser etwa seit Stunden untätig ist. Dahingehend ist ein Swap auch nichts dramatisches, dramatisch ist eine hohe Anzahl an Pageouts.

Der Begriff „virtueller Speicher“ beschreibt lediglich diesen gesamten Sachverhalt des Speichermanagements. Den Wert, den die Aktivitätsanzeige als virtuellen Speicher anzeigt, wird das „Swap-File“ niemals erreichen. Bei mir steht der virtuelle Speicher bei 350GB, soviel Platz habe ich auf meiner System-SSD garnicht. Daraus folgt, dass „virtueller Speicher“ als solcher wirklich virtuell ist. Er beschreibt den theoretischen Speicherverbrauch aller laufenden und schlafenden Prozesse, falls diese zur gleichen Zeit aktiv werden müssten. Um diesen theoretischen Speicher bei wechselnden Anwendungen auch physikalisch adressieren zu können, muss der Kernel eben paging und swapping betreiben.

Mehr dazu in diesem Artikel.

P.S.: Mit dem zitierten Tip hast du dir gerade selbst widersprochen
 
  • Gefällt mir
Reaktionen: Madcat
Klingt alles irgendwie logisch - dann aber doch wieder nicht.

Das swapfile ist bei mir 0 Byte groß, weil ich ja auch über einen Terminal-Befehl das Ganze abgestellt habe.
Dieser Ordner (im unsichtbaren Ordner "/private/var/vm") ist doch das Swap-File oder?
Dennoch werden Seiteneinlagerungen und Seitenauslagerungen irgendwo hingeschrieben.
 
...Nö ... Interessanterweise "denkt" Mac-OS X anders herum: Daten im virtuellen Speicher gelten als "eingelagert" (Englisch "page in"), sie von dort zu holen, heißt "auslagern".

Quatsch, Page Ins (Seiteneinlagerungen) sind die Daten, die in den RAM geschrieben werden, Page Outs (Seitenauslagerungen) in den Swap.

-> https://developer.apple.com/library...#//apple_ref/doc/uid/20001880-99406-TPXREF103


.… "Tipp: Seitenauslagerungen treten auf, wenn der Mac Daten aus dem RAM auf die Festplatte schreiben muss (weil der RAM-Speicher voll ist). Durch Vergrößerung des RAM können Seitenauslagerungen verringert werden."

Was ja auch der zitierte Satz bedeutet.

Virtueller Speicher erweitert auch nicht den RAM, sondern ist nur der logische Adressraum.
 
Klingt alles irgendwie logisch - dann aber doch wieder nicht.

Das swapfile ist bei mir 0 Byte groß, weil ich ja auch über einen Terminal-Befehl das Ganze abgestellt habe.
Dieser Ordner (im unsichtbaren Ordner "/private/var/vm") ist doch das Swap-File oder?
Dennoch werden Seiteneinlagerungen und Seitenauslagerungen irgendwo hingeschrieben.

Wie ich schrieb sind Paging und Swapping zwei verschiedene Aktionen. Du hast das Swapping deaktiviert, das Paging kannst du aber nicht deaktivieren, ohne den gesamten virtuellen Speicher zu deaktivieren. Und das geht nunmal nicht.
Pageouts wirst du also auch weiterhin haben, wenn die 8GB RAM nicht ausreichend sind.
 
Wie ich schrieb sind Paging und Swapping zwei verschiedene Aktionen. Du hast das Swapping deaktiviert, das Paging kannst du aber nicht deaktivieren, ohne den gesamten virtuellen Speicher zu deaktivieren. Und das geht nunmal nicht.
Pageouts wirst du also auch weiterhin haben, wenn die 8GB RAM nicht ausreichend sind.

Mag ja sein, dass es ein Unterschied ist. Aber wo schiebt er die Pages hin, wenn der Ram voll ist?

http://support.apple.com/kb/HT1342 schrieb:
Tip: Page outs occur when the Mac has to write information from RAM to the hard drive (because RAM is full). Adding more RAM may reduce page outs.
Da normale Desktop Computer nur RAM und HDD als Speicher haben, bleibt da nicht mehr so viel über, oder siehst du das anders?

Und nein, es gibt keine Pageout file. Die Swapfile ist die Bezeichnung für ausgelagerten Speicher. Falls du meinst, die Swapfile ist was anderes als die allokierten Blöcke fürs Pageout. Ich hab es selbst ausprobiert, und wie in dem verlinkten Artikel von mir sind Programme gecrasht, nachdem ich die Swapfile deaktiviert hatte: https://www.macuser.de/threads/ressourcenverbrauch-einzelner-os-x-versionen.668439/page-2
 
Mal eine Frage am Rande. Macht es wirklich Sinn, den SWAP auszuschalten? Ich denke die SSD Lebensdauer wird dadurch nicht wirklich bedeutend erhöht. Und wenn OS X auslagert, hat das ja seinen Grund. Warum sollte ich das verhindern?
 
Es gibt halt ein paar Themen nach dem Einbau einer SSD. Fakt ist, dass Schreibaktiviät so ziemlich das Einzige ist, was die Lebensdauer einer SSD begrenzt.
Deshalb lohnt es sich über folgendes Nachzudenken:

- Hibernateverhalten beim Ruhezustand
- Swap-file
- Noatime
- TRIM oder GarbageCollection
- ..... usw.

Klar gibt es dazu wieder geteilte Meinungen. Die einen sagen "Ist alles egal" die anderen "Kann man abschalten muss man aber nicht", wieder andere "auf jeden Fall".
Ich hab mir ein Bild gemacht und Entscheidungen für mich getroffen. Deshalb meine Ausgangsfrage ganz oben an #1.
 
Das kann natürlich jeder machen, wie er möchte. Da die ausgelagerten Dateien im Verhältnis zu der SSD Größe aber schwindet gering sind, dürfte das die Lebensdauer nur sehr unerheblich beeinflussen. Und wen juckt es, wenn die SSD deswegen anstatt 10 Jahre nur 8 Jahre hält?
Deswegen finde ICH, es lohnt sich nicht, darüber nachzudenken.

Mich ärgert viel mehr das Hibernateverhalten seit 10.8.2. SuspendToDisc lässt sich dort leider nicht mehr so einfach verhindern.
 
Zurück
Oben Unten