wird Swap-Partion auch wirklich verwendet?

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Benutzeravatar
rksteve
Beiträge: 716
Registriert: 11.09.2003 12:24:53
Kontaktdaten:

wird Swap-Partion auch wirklich verwendet?

Beitrag von rksteve » 26.03.2004 16:18:25

Hallo!

Ich habe da eine Frage:
In meinem System habe ich eine Swapparttion von ca. 500mb angelegt. Mit swapon kann ich sie auch "einbinden".
Mit dem Befehl free bekomme ich aber immer 0 Byte benutzten swap.

Code: Alles auswählen

free
             total       used       free     shared    buffers     cached
Mem:        255964     253664       2300          0       3992     103664
-/+ buffers/cache:     146008     109956
Swap:       497972          0     497972
Ok, eigenlich sollte ich mich freuen dass mir mein Speicher nicht ausgeht, aber irgendwie kommt mir dass komisch vor dass der swap NIE verwendet wird. Selbst wenn ich in GIMP mehrere grosse Bilder lade tut sich nichts im SWAP. iSt das normal?

Gruss
Steve

Benutzeravatar
suntsu
Beiträge: 2947
Registriert: 03.05.2002 10:45:12
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: schweiz
Kontaktdaten:

Beitrag von suntsu » 26.03.2004 16:23:46

Solange er "richtiges" Ram hat soll er kein Swap brauchen.
Wäre nur verschwendung.

gruss
manuel

Benutzeravatar
pil
Beiträge: 629
Registriert: 30.04.2002 15:47:27

Re: wird Swap-Partion auch wirklich verwendet?

Beitrag von pil » 26.03.2004 16:51:34

Wenn irgend eine Anwendung mal verrückt spielt, rufe z.B. gimp auf und klicke den Splash-Screen, den gimp beim Öffnen präsentiert, sofort wieder weg, dann wirst du innerhalb kurzer Zeit sehen, dass der Swap benötigt wird.
Und wenn du dann gimp nach etwa einer Stunde noch immer nicht gekillt hast, ist selbst der Swap verbraucht - und deine Kiste schmiert ab.

Benutzeravatar
knecht
Beiträge: 1214
Registriert: 08.01.2004 15:33:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von knecht » 01.07.2004 23:29:00

Gibts da keinen anderen Weg zu überprüfen ob das System den SWAP überhaupt eingebunden hat ?

Oder reicht es wenn sie unter free auftaucht ?
_________________________________________________
Linux HowTo's, Programmierung, Wallpapers und 3D:
http://www.neoBerserker.de

vogella
Beiträge: 243
Registriert: 22.06.2004 12:01:00
Wohnort: Heidelberg
Kontaktdaten:

Beitrag von vogella » 02.07.2004 00:17:39

Hallo rksteve,

der Linux Kernel nutzt immer Swap, auch wenn genügend Speicher vorhanden ist. Im Prinzip schreibt der Kernel lange nicht angesproche Speicherbereich auf die Platte; das ist seine einzige Möglichkeit zu identifieren, das etwas nicht mehr benötigt wird.

Das wurde in den letzten Wochen heiß diskutiert und es gibt inzwischen einen eine Möglichkeit das zu beeinflussen. Details: http://kerneltrap.org/node/view/3000

Viele Grüße, Lars

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 02.07.2004 01:29:06

Also... Wenn free es anzeigt, dann ist der Swap auch da und wird verwendet.

@vogella: Du solltest den Artikel auf Kerneltrap nochmal in Ruhe lesen. Der Kernel braucht keinen Swap um nicht benötigte Daten zu identifizieren... Das wäre ja auch ziemlich armselig. Man kann den Kernel auch komplett ohne Swap betreiben... Deiner Aussage nach könnte der Kern dann ja nicht mehr sehen, was er noch braucht, und was nicht. Richtig ist vielmehr, dass der Kernel erst anfängt zu swappen, wenn er den Speicher braucht und nicht vorher. Allerdings kann man mit dem swappiness Wert festlegen, was unter "der Kernel braucht den Speicher" zu verstehen ist. Je höher dieser Wert ist, desto früher fängt das VMM an Dinge auszulagern. Bei entsprechend hohen Swappiness Einstellungen werden sogar Programme ausgelagert, wenn der Kernel den Platten Cache vergrössern will. Swappiness=0 bedeutet, dass nur geswapped wird, wenn es *unbedingt* nötig ist (oder sogar gar nicht? Die Details müsste ich jetzt nochmal nachschauen...).

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

Benutzeravatar
knecht
Beiträge: 1214
Registriert: 08.01.2004 15:33:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von knecht » 02.07.2004 01:55:36

Also... Wenn free es anzeigt, dann ist der Swap auch da und wird verwendet.
Danke
_________________________________________________
Linux HowTo's, Programmierung, Wallpapers und 3D:
http://www.neoBerserker.de

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 02.07.2004 03:54:43

Ach ja... Nochwas:

Code: Alles auswählen

wintermute:~# cat /proc/swaps
Filename                                Type            Size    Used    Priority
/dev/sda3                               partition       987988  173912  -1
Das ist dann die hochoffizielle Meinung des Kernel, was so an Swap da ist ;-)

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

vogella
Beiträge: 243
Registriert: 22.06.2004 12:01:00
Wohnort: Heidelberg
Kontaktdaten:

Beitrag von vogella » 02.07.2004 18:19:57

Hallo Patrick,

hm, nach dem Artikel ist swappen benötigt, um die Speicherstellen zu identifizieren, die nicht mehr benötigt werden.

http://lwn.net/Articles/82759/
The bigger issue remains, however: should the kernel swap out user applications in order to cache more file contents? There are plenty of arguments in favor of this behavior. Quite a few large applications set up big areas of memory which they rarely, if ever use. If application memory is occasionally forced to disk, the unused parts will remain there, and that much physical memory will be freed for more useful contents. Without swapping application memory to disk and seeing what gets faulted back in, it is almost impossible to figure out which pages are not really needed.
Mit meiner Aussage "sonst könnte er nicht feststellen, was nicht mehr benötigt wird", habe ich natürlich nicht gemeint, daß Swap etwas mit der Speicherallokation zu tun hat, sondern nur, daß dadurch sichergestellt wird, daß Speicherbereiche, die lange nicht mehr angesprochen wurden, auf Platte verlagert werden, um einen schnellen Zugriff auf häufig verwendete Speicherbereiche zu ermöglichen.

Viele Grüße, Lars

Antworten