SWAP bei 4 GB RAM?

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
nonoo

SWAP bei 4 GB RAM?

Beitrag von nonoo » 24.06.2008 10:39:38

Guten Tag,
macht es Sinn bei 4 GB RAM zusätzlich SWAP einzurichten, außer wenn Suspend to Disk genutzt wird?

Wie groß sollte der SWAP sein, wenn Suspend to Disk genutzt werden soll?

mfg nonoo

Edit:
RAM-Speicherbelegung prüfen
cat /proc/meminfo
SWAP Belegung auslesen
df
Zuletzt geändert von nonoo am 07.07.2008 09:47:28, insgesamt 2-mal geändert.

Benutzeravatar
sys_op
Beiträge: 672
Registriert: 17.09.2007 19:10:47
Lizenz eigener Beiträge: GNU General Public License

Re: SWAP bei 4 GB RAM?

Beitrag von sys_op » 24.06.2008 12:18:04

rein aus dem bauch heraus würde ich sagen, das kommt darauf an, was auf dem kobel laufen soll.
4GIG sind massigst platz. ich habe meine 2 GIG noch nie ausgereizt, mein swap bereich ist jungfräulich, auf einem terminal-server allerdings bei 2 GIG regelmässig swap belegt (der bekommt nun 4 GIG, mal sehen, was dann passiert).

für normal habe ich mal irgendwo gelesen, dass der RAM-bereich auch als swap eingerichtert werden sollte.
gruss sys;-)

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Re: SWAP bei 4 GB RAM?

Beitrag von gms » 24.06.2008 12:19:44

nonoo hat geschrieben: macht es Sinn bei 4 GB RAM zusätzlich SWAP einzurichten, außer wenn Suspend to Disk genutzt wird?
ja, z.B wenn deine laufenden Applikationen schon 4 GB virtuellen Speicher verwenden und du dann noch zusätzlich eine weitere Applikation starten möchtest
nonoo hat geschrieben:Wie groß sollte der SWAP sein, wenn Suspend to Disk genutzt werden soll?
SWAP ohne Suspend to Disk + RAM = SWAP mit Suspend to Disk

Gruß
gms

dolphin
Beiträge: 362
Registriert: 01.05.2006 11:48:24

Re: SWAP bei 4 GB RAM?

Beitrag von dolphin » 25.06.2008 10:21:23

Es scheint ein ungeschriebenes Gesetz zu sein: "Man muss SWAP nutzen, und zwar sollte er
mindestens doppelt so gross sein, wie der RAM". Begruenden kann das offenbar heutzutage
keiner.

Ich habe dennoch die Erfahrung gemacht, dass es sehr sinnvoll sein kann, SWAP-Speicher
zu benutzen, der (sagen wir mal) die doppelte RAM-Groesse hat. Warum? Ganz einfach!

Wenn du 4GB RAM hast und keinen SWAP, dann machst du also Dinge mit deinem
Rechner, die meistens gut gehen, bis zu dem Tag, an dem du tatsaechlich die gesamten
vorhandenen 4GB RAM nutzt. Dann machst du eine weitere Anwendung auf. Und was
passiert dann? Der Rechner wird abrupt unbedienbar, weil ploetzlich gar nichts mehr geht.
Haettest du jetzt SWAP gehabt, dann wuerde dein Rechner jetzt langsamer werden und
du wuerdest spueren, dass du jetzt an die Grenzen gegangen bist.

Solltest du mit gesundem Menschenverstand ausgestattet sein, wuerdest du
jetzt automatisch damit beginnen, erste Anwendungen zu schliessen und eventuell
ungespeicherte Dateien speichern oder jetzt noch schnell noch nicht abgeschickte
ausgefuellte Web-Formulare wegschicken, BEVOR das System irgendwann
stehen bleibt, falls du Opfer eines Speicherlecks einer schlecht programmierten
Anwendung geworden bist.

Um es so auszudruecken: Mit SWAP hast du die Chance, deine Arbeit sauber
zu beenden und dein System sauber herunterzufahren, wenn der RAM voll ist.
Ohne SWAP musst du die Reset-Taste druecken, wenn der RAM voll ist.

Je mehr SWAP du hast, umso mehr Zeit hast du bei einem Speicherleck,
um im Ernstfall doch noch reagieren zu koennen.

Wenn du bei 4GB RAM einen SWAP von 8GB einrichtest, dann kann es passieren,
dass du bei 4,5 GB Speicherauslastung anfaengst zu merken, dass der Speicher
vollaeuft. Bei 4,6 GB reagierst du dann und bei 5,5 GB wirst du dann eventuell
die Situation unter Kontrolle gebracht haben. Anderenfalls kannst du bis zu
12 GB Speicher volllaufen lassen und bei einem immer langsamer werdenden
Rechner immer noch versuchen, deine extrem wichtige Arbeit zu retten, bevor
das System dann endgueltig stehen bleibt.

Aus diesem Grund empfehle ich auch bei 4GB RAM tatsaechlich 8GB SWAP
zu nehmen, denn wuerdest du nur 1GB SWAP nehmen, koenntest du Gefahr
laufen, dass dein System trotzdem von einer Sekunde zur naechsten abrupt
stehen bleibt, weil dein Rechner bis dahin so performant war, dass du noch
gar nicht gemerkt hast, dass jetzt schon das erste GB SWAP vollaeuft.

Das war meine Meinung zum Thema SWAP. Ihr koennt gern mit mir diskutieren,
falls ihr meine Meinung nicht teilt.

dolphin

Benutzeravatar
peschmae
Beiträge: 4844
Registriert: 07.01.2003 12:50:33
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: nirgendwo im irgendwo

Re: SWAP bei 4 GB RAM?

Beitrag von peschmae » 25.06.2008 12:42:45

Das sehe ich eigentlich eher gegenteilig :D

Wenn etwas (auf einem Arbeitsplatzrechner) mehr als 4GB Rahm vollstopft ist eh was krumm und dann wird auch die Anwendung gekillt, die so viel Arbeitsspeicher frisst (das einzige was das bei mir bisher geschafft hat sind gewisse Matlab-basierende Simulationen; bei denen hab ich dann halt die Auflösung etwas runterstellen müssen, dann ging das auch). Hätte man hingegen Swap reisst das das ganze System in den Abgrund weil das dann unbedienbar langsam wird - und mit unbedienbar meine ich unbedienbar ;)

Kommt halt immer drauf an was man macht.

MfG Peschmä
"er hätte nicht in die usa ziehen dürfen - die versauen alles" -- Snoopy

Psych
Beiträge: 519
Registriert: 02.10.2004 12:41:44

Re: SWAP bei 4 GB RAM?

Beitrag von Psych » 25.06.2008 13:54:38

Das Problem ist, dass der Kernel (zumindest nach meiner Erfahrung) bei vollem Ram relativ wahllos anfängt Prozesse abzuschießen... das muss nicht unbedingt der Prozess mit dem Speicherleck sein!

Je nachdem was man dann gerade gemacht hat ist es schon praktischer wenn man Swap und damit zeit zum reagieren hat.

Ich nutze meine 4GB auch eher selten... aber ab und zu kommt es vor. (mehrere Virtuelle Maschinen)
Debian Lenny, Squeeze (Server)
Openindiana (NAS)
PfSense (Router, Firewall)
Ubuntu (Notebook)
Arch Linux (Desktop)

dolphin
Beiträge: 362
Registriert: 01.05.2006 11:48:24

Re: SWAP bei 4 GB RAM?

Beitrag von dolphin » 25.06.2008 13:56:30

Das scheint also von der Situation abzuhaengen, ob das System so langsam ist, dass es
gerade noch so bedienbar ist, oder ob es so langsam ist, dass es gar nicht mehr bedienbar
ist.

Lad dir hier mal ein PHP-Handbuch herunter, entpacke es und mach es ein paar
mal mit dem Web-Browser auf:
http://de.php.net/get/php_manual_de.htm ... m/a/mirror

Die Datei ist so zwischen 28 und 32 MB groß und der Web-Browser (Iceape)
verbraucht schonmal locker >500 MB, um das anzuzeigen, und gibt den Speicher
erst nach Beenden des Browsers wieder frei.

Auf einem System mit 1 GB RAM und 2 GB SWAP hatte ich es geschafft, so
etwa 2,7 GB Speicher vollzubekommen. Das System war gerade noch so
bedienbar, dass ich von einer noch offenen xterm aus ein kill iceape-bin
absetzen konnte.

Früher hatte ich mal ein System ohne SWAP. Beim Betrachten sehr
großer Bilder fror mir mal das System ein. Noch frueher hatte ich
an einer Linux-Umgebung gearbeitet, in der immer mal wieder
einzelne Panel-Applications weggeflogen sind, weil wohl der Speicher
zu knapp wurde. Das war aergerlich, weil die dann von allein nie
wieder zurueckkamen. Ich musste dann also erst wieder irgendwelche
Kontextmenues durchkaemmen und das Zeug langwierig suchen,
um es zurueckzubekommen.

Nicht immer also fliegt bei einem System ohne SWAP zuerst die
Anwendung weg, die den Speicherengpass verursacht hat. Es
reicht, wenn die fette Anwendung kurz vor dem Limit mal kurz
aufhoert zu wachsen und in der Zeit ein wichtiger Dienst oder ein
kleines Applet Speicher anfordert und daraufhin unschuldig
gekillt wird.

Hier muss der Anwender entscheiden, welches Übel das kleinere
ist: Das Sterben unschuldiger Programme, was zu unerwarteten
Seiteneffekten fuehren kann oder das Risiko, dass das System
so langsam wird, dass nicht einmal mehr das Absetzen eines
Kill-Befehls in eine bereits geoeffnete Shell mehr moeglich ist.

Ich riskiere dann lieber den Totalstillstand und druecke
anschliessend Reset, weil das bei mir der unwahrscheinlichste
Fall ist.

dolphin

Benutzeravatar
peschmae
Beiträge: 4844
Registriert: 07.01.2003 12:50:33
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: nirgendwo im irgendwo

Re: SWAP bei 4 GB RAM?

Beitrag von peschmae » 27.06.2008 21:14:23

Psych hat geschrieben:Das Problem ist, dass der Kernel (zumindest nach meiner Erfahrung) bei vollem Ram relativ wahllos anfängt Prozesse abzuschießen... das muss nicht unbedingt der Prozess mit dem Speicherleck sein!
Das mag sein - hab ich auch schon gelesen. Aber bei mir hat er immer direkt den Matlab-Prozess (oder alle Schaltjahre mal auch noch einen anderen Amokläufer) erwischt. Oder ich habs einfach nicht gemerkt (wer merkt schon wenn syslogd fehlt? ;)). War wohl weils ein Proprietäres Programm ist :P

MfG Peschmä
"er hätte nicht in die usa ziehen dürfen - die versauen alles" -- Snoopy

nonoo

Re: SWAP bei 4 GB RAM?

Beitrag von nonoo » 04.07.2008 20:05:43

Hi,
folgendes habe ich bei Red Hat Linux 9 gefunden:

Red Hat Linux Handbuch benutzerdefinierter Konfiguration

Kapitel 2.
Swap-Space
2.1. Was ist Swap-Space?
Swap-Space wird in Linux verwendet, wenn der physische Speicher (RAM) knapp ist. Benötigt das
System weiteren Arbeitsspeicher und der physische Speicher ist voll, werden Speicherseiten, die nicht
aktiv sind, in den Swap-Space verlagert. Während Swap-Space bei Rechnern mit kleinem RAM-
Speicher nützlich sein kann, sollte es nicht als Ersatz für mehr RAM-Speicher angesehen werden.
Swap-Space befindet sich auf Festplatten, die eine langsamere Zugriffszeit als physischer Speicher
haben.
Swap-Space kann eine eigens erstellte Swap-Partition sein (empfehlenswert), eine Swap-Datei oder
eine Kombination aus Swap-Partitionen und Swap-Dateien.
Die Größe des Swap-Space sollte doppelt so groß sein wie der RAM-Speicher Ihres Rechners bzw.
32 MB, je nachdem, welcher Wert größer ist. Jeder einzelne der Swap-Bereiche darf aber 2048 MB
(oder 2 GB) nicht überschreiten.
Sollte auch bei Debian die Swap-Partition nicht größder als 2 GB sein? Wie viele Swap-Partitionen sind möglich?

mfg nonoo

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Re: SWAP bei 4 GB RAM?

Beitrag von gms » 04.07.2008 20:34:01

nonoo hat geschrieben: Sollte auch bei Debian die Swap-Partition nicht größder als 2 GB sein?
dieses Limit gibts schon länger nicht mehr, der Grund für diese Beschränkung war auch nur eine mangelnde Unterstützung der 32bit Userspace Programmen ( mkswap, swapon,..) .

bombaclaude
Beiträge: 320
Registriert: 01.01.2007 13:19:34

Re: SWAP bei 4 GB RAM?

Beitrag von bombaclaude » 05.07.2008 16:51:19

:D nette Diskussion!

Jemand der sich 4 GB RAM leister kann sich keine 8 GB swap leisten oder wie ist der thread zu verstehen? Ich habe mal eine ähnliche Frage im FreeBSD Forum gestellt - ja das ist schon lange her - von 8 oder 9 Antwortenden haben mich 7 oder 8 verarscht. :evil:

Benutzeravatar
snyborg
Beiträge: 256
Registriert: 08.08.2007 22:07:32
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 127.0.0.1

Re: SWAP bei 4 GB RAM?

Beitrag von snyborg » 05.07.2008 18:59:41

bombaclaude hat geschrieben:von 8 oder 9 Antwortenden haben mich 7 oder 8 verarscht. :evil:
ich habe auch das Gefühl, frägt man zu diesem Thema 5 Leute bekommt man 10 Antworten. ;-)

Auf einem Server sollte der RAM für die erforderlichen Dienste/Speicheranforderungen einfach ausgelegt sein. Hier sollte bei einem Engpass der Hardwarespeicher entsprechend angepasst werden und nicht der Softwarespeicher.

Allerdings sollte trotzdem Softwarespeicher zur Verfügung stehen, wenn der Hardwarespeicher nicht mehr aussreicht, um fatalen Problemen aus dem Weg gehen zu können bzw. entsprechend darauf reagieren zu können.
Und dass das dann gleich das doppelte von dem physikalischem RAM sein muss kann ich nicht wirklich nach vollziehen.

Auf einer Workstation sehe ich das eher unkritisch. Wenn da mal was abrauchen sollte... who cares? Wobei ich mit einer SWAP größere Probleme generell noch mehr verhindern kann (sollte es wirklich mal knapp werden) als ohne...

Fazit: Man sollte eine SWAP haben, wenn sie allerdings (dauerhaft) zum Einsatz kommt, macht man imho was falsch...

just my 2 cents
sny

Benutzeravatar
peschmae
Beiträge: 4844
Registriert: 07.01.2003 12:50:33
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: nirgendwo im irgendwo

Re: SWAP bei 4 GB RAM?

Beitrag von peschmae » 05.07.2008 22:05:18

bombaclaude hat geschrieben: Jemand der sich 4 GB RAM leister kann sich keine 8 GB swap leisten oder wie ist der thread zu verstehen? Ich habe mal eine ähnliche Frage im FreeBSD Forum gestellt - ja das ist schon lange her - von 8 oder 9 Antwortenden haben mich 7 oder 8 verarscht. :evil:
Ich hab 4 GB Ram in meinem Notebook; aber 8 GB für Swap zu ver(sch)wenden fände ich schade - damit kann ich besseres anfangen...

MfG Peschmä
"er hätte nicht in die usa ziehen dürfen - die versauen alles" -- Snoopy

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: SWAP bei 4 GB RAM?

Beitrag von rendegast » 06.07.2008 14:39:46

Ein cron-Job, der auf swap-Belegung prüft und gegebenenfalls neue swap-Dateien anlegt?
Analog Windows? ;)
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Re: SWAP bei 4 GB RAM?

Beitrag von gms » 06.07.2008 21:39:50

rendegast hat geschrieben:Ein cron-Job, der auf swap-Belegung prüft und gegebenenfalls neue swap-Dateien anlegt?
Analog Windows? ;)
wußte nicht, daß Windows swap-Dateien über cron-Jobs anlegt 8O
glaube ich dir jetzt aber auch nicht :D
unter Linux macht man das besser mit einem "swapd" Daemon

Gruß
gms

Benutzeravatar
Simmel
Beiträge: 698
Registriert: 08.03.2004 14:43:43
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Düsseldorf
Kontaktdaten:

Re: SWAP bei 4 GB RAM?

Beitrag von Simmel » 07.07.2008 00:57:20

peschmae hat geschrieben:Das sehe ich eigentlich eher gegenteilig :D

Wenn etwas (auf einem Arbeitsplatzrechner) mehr als 4GB Rahm vollstopft ist eh was krumm und dann wird auch die Anwendung gekillt, die so viel Arbeitsspeicher frisst (das einzige was das bei mir bisher geschafft hat sind gewisse Matlab-basierende Simulationen; bei denen hab ich dann halt die Auflösung etwas runterstellen müssen, dann ging das auch). Hätte man hingegen Swap reisst das das ganze System in den Abgrund weil das dann unbedienbar langsam wird - und mit unbedienbar meine ich unbedienbar ;)

Kommt halt immer drauf an was man macht.

MfG Peschmä
Da hast du recht,

also bei einem LAMP-Server würde ich def. SWAP benutzen und zwar 4GB, genauso viel wie der RAM).

Apache2 zieht sich sehr viel Speicher um direkt Anfragen bedienen zu können, wenn dann noch ein mySQL mit großer Datenbank läuft sind im Normalbetrieb schonmal schnell 2-3 GB grundsätzlich belegt (je nachdem wie man die .conf Dateien einstellt, logisch). Bei größerer Last kann man dann auch schon mal an seine 4GB Grenze stossen.

In dem speziellen Fall ist nichts krumm, sondern eigentlich eher der Normalfall, zumindest habe ich das bei fast allen meiner betreuten LAMP-Server so gesehen.

S1mmel
you've got to know how far to go in going too far

perl -le'print+(split//,"schaeuble")[6,8,7,3,5,0..2,4]'

http://creativecommons.org/licenses/by-nc-sa/2.0/

nonoo

Pers. Ergebnis

Beitrag von nonoo » 11.07.2008 08:30:31

Guten Tag, für mich werde ich es so planen.

Die Swap Partition werde ich am Ende der Festplatte anordnen
Aus Performancegründen hatte ich diese sonst (1GB RAM) immer am Anfang der Festplatte.
Wenn die Swap am Ende der Festplatte liegt kann ich diese leicht in der Größe verändern.
Mit dem Programm conky werde ich die RAM- und SWAP-Belegung im Betrieb beobachten.
Da nicht zu erwarten ist, daß Swap übermäßig genutzt wrid, werde ich diese als erstes mit 4 GB vorsehen. Suspend to Disk ist dann funktionsfähig.

Verbesserungsvorschläge immer willkommen.

mfg nonoo

Benutzeravatar
poldikox
Beiträge: 404
Registriert: 17.04.2008 16:19:33
Lizenz eigener Beiträge: MIT Lizenz

Re: SWAP bei 4 GB RAM?

Beitrag von poldikox » 12.07.2008 09:32:00

dolphin hat geschrieben: Ich riskiere dann lieber den Totalstillstand und druecke
anschliessend Reset, weil das bei mir der unwahrscheinlichste
Fall ist.
dolphin
Soweit ich weis,gibt es bei vielen Notebook's keine Reset-Taste.
Was dann?
Grüße aus der schönen Eifel
poldikox

maddeb
Beiträge: 42
Registriert: 12.07.2008 09:46:22
Lizenz eigener Beiträge: MIT Lizenz

Re: SWAP bei 4 GB RAM?

Beitrag von maddeb » 12.07.2008 10:54:01

ich kenn kein einziges mit Reset-Taste.

In solch seltenen Fällen halte ich die On/Off 4s oder so gedrückt, dann ist aus.
Ein weiterer Druck und es bootet wieder.

Auf meinem Notebook hab ich auch keine Swap, wenn ich mal den Resourcenverbauch nicht abschätzen kann, zeigt mir ein Applet diesen an oder ich verwende htop. Also: ich denke, nicht jeder braucht überall swap, kommt auf das Nutzungsprofil und die Prioritäten an.
Psych hat geschrieben:Das Problem ist, dass der Kernel (zumindest nach meiner Erfahrung) bei vollem Ram relativ wahllos anfängt Prozesse abzuschießen... das muss nicht unbedingt der Prozess mit dem Speicherleck sein!
Ist das wirklich der Kernel oder ist das vielleicht immer der Prozess, der auf eine Speicheranforderung einen Nullpointer bekommt und diesen Fall nicht berücksichtigt und sich selber abschießt?

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Re: SWAP bei 4 GB RAM?

Beitrag von gms » 12.07.2008 15:44:51

mit der "Reset" Taste seit ihr aber schon ein bißchen "pingelig" :wink:
maddeb hat geschrieben: Ist das wirklich der Kernel oder ist das vielleicht immer der Prozess, der auf eine Speicheranforderung einen Nullpointer bekommt und diesen Fall nicht berücksichtigt und sich selber abschießt?
Beim sogenannten "Overcommit", können die Prozesse mehr Speicher anfordern, als tatsächlich zur Verfügung steht. Der Kernel "erhofft" sich, daß ein Teil der Prozesse diesen gar nicht benötigt, oder schnell wieder freigibt, bevor es tatsächlich zu einem Engpaß kommt.
Ist ein solcher Engpaß erreicht kommt der sogenannte OOM-Killer ( des Kernels ) ins Spiel. der nach einem mehr oder weniger intelligenten Algorithmus einzelne Prozesse tötet.
Wird der "Overcommit" ausgeschaltet ( mit echo 2 >/proc/sys/vm/overcommit_memory ), dann würde der Kernel den Prozessen nur "SWAP+RAM * ( overcommit_ratio/100)" an Speicher zur Verfügung stellen. Danach würden die Prozesse bei jeglicher Speicheranforderung einen Nullpointer zurückbekommen, bis wieder genügend Speicher zur Verfügung steht.

Gruß
gms

Antworten