Hallo,
ich habe ab und an mit reht grossen Daten in Matlab (unter Linux) zu tun. Das Auslagern klappt soweit. Nur würde ich es gerne mit einem ("Highspeed-")USB-Stick beschleunigen. Ich habe etwas ähnliches schon mal mit einem normalen Stick und einem alten Laptop gemacht, hat wunderbar funktioniert. Um jedoch eine bessere Performance zu erzielen (bzw um überhaupt einen Gewinn zu sehen;) würde ich gerne wissen, wie genau Linux auslagert. Also, abhängig vom swappiness usw, das hab ich schon rausgefunden. Nur wie ganz genau ? Lagert es immer kleine 5kB Blöcke aus, so wie Windows, oder fängt es bei Linux erst bei 1MB an ?
Ich würde es gerne wissen, da viele USB-Sticks zwar gute Datenübertragungen erreichen, aber bei kleinen Teilen versagen.
Linux 14.981 Themen, 106.343 Beiträge
Erstmal muß man wissen das der Linuxkernel versucht die Anzahl der Festplattenzugriffe zu minimieren. Das heißt der Kernel versucht die Daten so lange wie möglich im RAM zuhalten. Das wird dadurch erreicht in dem ein großer Teil vom RAM als Festplattencache verwendet wird.
Das ist ein widerspruch in sich, denn RAM, das für Caching verwendet wird, fehlt für Anwendungsdaten. Das wiederum bedeutet, dass der PC sogar umso eher auslagert, je mehr RAM für Caching verwendet wird.
dieses Verhalten kann man wunderbar bei Windows beobachten, denn Windows verwaltet den noch freien RAM als Cache - und es lagert eher Daten auf die Platte aus, als davon Speicher für Anwendungsdaten freizugeben.
Linux verhält sich hier zum Glück intelligenter und man kann als Faustregel sogar sagen: solltest du bemerken, dass Linux die SWAP-Partition benutzt, dann läuft in deinem System was schief und du solltest dich mal drum kümmern.
Volker
EDIT: habe in meinem System (Kubuntu 7.04 3GB RAM) gerade mal nachgesehen.
Gestartet sind: Claws-Mail, FF, Opera, KNode, eine Terminal-Emulation und Konqureror als Dateibrowser. In FF und opera sind jeweils 6 Tabs geöffnet
Ergebnis: kein Swap-Space genutzt
(wer nachsehen will: im Terminal "sudo swapon -s")
Versuch(t) mal ein windows dazu zu überreden, NICHT zu swappen... ich selber habe bisher noch nie, mit keiner RAM Aussattung, erlebt, dass ein winodws auf Nutzung der SWAP-Datei verzichtet hätte.
Das ist ein widerspruch in sich, denn RAM, das für Caching verwendet wird, fehlt für Anwendungsdaten. Das wiederum bedeutet, dass der PC sogar umso eher auslagert, je mehr RAM für Caching verwendet wird.
dieses Verhalten kann man wunderbar bei Windows beobachten, denn Windows verwaltet den noch freien RAM als Cache - und es lagert eher Daten auf die Platte aus, als davon Speicher für Anwendungsdaten freizugeben.
Linux verhält sich hier zum Glück intelligenter und man kann als Faustregel sogar sagen: solltest du bemerken, dass Linux die SWAP-Partition benutzt, dann läuft in deinem System was schief und du solltest dich mal drum kümmern.
Volker
EDIT: habe in meinem System (Kubuntu 7.04 3GB RAM) gerade mal nachgesehen.
Gestartet sind: Claws-Mail, FF, Opera, KNode, eine Terminal-Emulation und Konqureror als Dateibrowser. In FF und opera sind jeweils 6 Tabs geöffnet
Ergebnis: kein Swap-Space genutzt
(wer nachsehen will: im Terminal "sudo swapon -s")
Versuch(t) mal ein windows dazu zu überreden, NICHT zu swappen... ich selber habe bisher noch nie, mit keiner RAM Aussattung, erlebt, dass ein winodws auf Nutzung der SWAP-Datei verzichtet hätte.