[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Swap Groesse



On Fri, Jan 24, 2003 at 11:44:56PM +0100, Marc Schiffbauer wrote:

> > Afaik erfolgt die Auswahl des zu killenden Prozesses *nicht* in
> > Abhängigkeit vom verbrauchten Speicher. Afair spielt eine Rolle, wie
> > lange ein Prozess bereits läuft. Und es kann sehr gut sein, daß
> > zufällig derjenige Prozess gekillt wird, der gerade Speicher
> > anfordert. Jenachdem, welcher Prozess gekillt wird (z. B. init), kann
> > das System in einen undefinierten/unsicheren Zustand geraten.
> > 
> 
> Das bezweifle ich. Ich behaupt nicht, dass auf jeden Fall immer der
> Prozess mit dem meisten Speicher gekillt wird, aber welchen sinn
> sollte es machen, den am längsten laufenden Prozess zu killen?

Daß der am längsten laufende Prozess gekillt wird, habe ich nicht
gesagt. Afair wird versucht, den Prozess zu killen, der am wenigsten
lange läuft.

> Das ist nämlich wahrscheinlich immer init. Und den Vatter aller
> Prozesse zu killen, wäre wohl etwas sehr ungeschickt.

Genau das kann jedoch passieren --- muß nicht, aber kann.

> Wie auch immer, ich habe jedenfalls schon öfter beobachtet, wie ein
> Prozess Amok läuft, und wenn er allen Speicher gefressen hat, wurde
> genau dieser vom OOM-Killer zur Strecke gebracht. Mit dmesg kann man
> das dann auch sehn, der Kernel macht eine entsprechende Meldung.

Möglicherweise wurde das Verhalten in neueren Kernels verbessert. Daß
ich damit Versuche angestellt habe, ist schon ziemlich lange
her. Damals war es ziemlich leicht möglich, das System in einen
kritischen Zustand zu versetzen. Ich schicke Dir mal das Testprogramm
dazu, wenn ich es noch finde.

> Wer das mal testen will: Ich ahbe festgestellt, wenn man fontconfig
> bzw. libfontconfig benutzt (z.B. KDE 3.1)

Hm, diese Programme scheinen bei mir nicht vorhanden zu sein. Ich
verwende auch KDE nicht.

> > Deshalb muß man dafür sorgen, daß der Swapspace nach Möglichkeit nie
> > ausgeht!
> > 
> 
> Schon klar. Aber wenn ein Rechner so viel Swap wie RAM braucht, dann
> hat man einfach zu wenig RAM oder einen uralten 2.4er Kernel.

Nee, das ist nicht richtig. Ab einer bestimmten RAM Größe merkt man
vom Swappen nichts mehr. Wieviel RAM das ist, hängt natürlich von der
Nutzung des Rechners ab. Mein XFree86 z. B. belegt derzeit 560 MB mit,
laut top, einer RSS von nur 15 MB, und es sind 331 MB
ausgelagert. Damit entspricht die Swapbelegung fast der RAM Größe (512
MB). Trotzdem merke ich nix davon: Warum also sollte ich mehr RAM
einbauen?

Hätte der Rechner aber z. B. nur 64, 96 oder 128 MB RAM, dann würde
ich das Swappen deutlich merken. Es scheint sowas wie einen Punkt zu
geben, bis zu dem das Verhältnis zwischen Speicherbedarf und RAM in
Ordnung ist --- erst wenn man diesen Punkt überschreitet, ist mehr RAM
empfehlenswert. Bei mir liegt dieser Punkt derzeit irgendwo zwischen
256 und 384 MB. Mit meinen 512 MB habe ich also noch genug Reserve ---
und genau das merke ich auch.

Brauchen denn neuere 2.4er Kernel weniger Swapspace? --- 2.4.18 ist
vielleicht mittlerweile ,uralt', aber da er so gut läuft muß ich nicht
unbeding davon weggehen ...

> ACK. Swap auf mehrere Platten mit gleicher Prio zu verteilen, macht
> immer Sinn, da der Kernel das dann striped.

Er wechselt zwischen den Platten ab (vermutlich in Blöcken, die der
page size entsprechen, i. e. meist 4 kB bei i386); ,striped' wäre,
wenn er die Partitionen aneinandergehängen würde.


GH



Reply to: