Cache: dirty_bytes & dirty_background_bytes Erklärung?

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Benutzeravatar
BerndHohmann
Beiträge: 70
Registriert: 17.02.2015 23:26:44
Wohnort: Nidderau
Kontaktdaten:

Cache: dirty_bytes & dirty_background_bytes Erklärung?

Beitrag von BerndHohmann » 02.04.2015 03:14:18

Ich habe auf meinen VM-Hosts eine recht ungünstige RAM<->Disk-IO Verteilung (viel RAM für Lesecache aber lahmes RAID-5 beim Schreiben).

Die Presets mit vm.dirty_background_ratio=5 und vm.dirty_ratio=10 führen bei mir dazu, dass der Dirty-Cache binnen sehr kleiner Zeiteinheiten so gross werden (vm.dirty_background_ratio )kann dass er beim gemessenen Plattendurchsatz paar Minuten zum Wegschreiben braucht und damit auch schnell an das Limit von vm.dirty_ratio kommt - dann geht nix mehr.

Mir ist zu spät aufgefallen, dass es auch vm.dirty_bytes und vm_dirty_background_bytes gibt - damit kann man das natürlich eher an dem Platten-IO festmachen als mit diesen relativen Angaben zu irgendwelchem freien RAM.

Jetzt komme ich aber nicht mit der Beschreibung gemäss https://www.kernel.org/doc/Documentation/sysctl/vm.txt klar. Ich habe das Diff in https://lkml.org/lkml/2008/11/23/160 sowie die aktuellen Kernelsourcen gelesen (soweit ich es als Programmierer in anderen Sprachen lesen konnte).

vm.dirty_bytes ist die Schwelle für write-back, wenn ein Prozess mehr als diesen Wert im Dirty hat? (der Prozess stösst sein eigenes Write-Back an?)
vm.dirty_background_bytes ist die Schwelle für write-back wenn alle Prozesse mehr als diesen Wert im Dirty haben?

Ich sehe da eine Menge Race-Conditions und sonstige Schweinereien.

Jemand hier der mir das genauer erklären kann?

Bernd

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

Re: Cache: dirty_bytes & dirty_background_bytes Erklärung?

Beitrag von rendegast » 02.04.2015 04:24:50

System?

Ist vielleicht das zugrundeliegende raid5 angeschlagen?
Ungewöhnlicher raid-Adapter/chipssatz?
Anzeichen für Plattenfehler? smart / 'dmesg'.
Speicherfehler, Debianmemtest86+
Ideale raid5-Zusammenstellung? (2+1(+spare), 4+1(+spare), 8+1(+spare))

Unbelastete (ohne VM) Performance des host?
'hdparm -tT ...' für die Platten? <-> die raid-mdX?
(viel RAM für Lesecache aber lahmes RAID-5 beim Schreiben)
Im default ist freies ram Plattencache.
Die ram-Zuteilung für die VM? dynamisch?
"Echte" VM wie kvm oder virtualbox, xen?
vserver oder docker/lxc? Ausrastende Prozesse in den/einer VM?

Bei kvm gibt es 'cache=xxxx' für die virtuellen Platten,
sind solche Sachen in Verwendung?
Ich denke mir da einiges an Problem- oder Optimierungspotential,
im Zusammenspiel mit Zielsetzung der VM.




Ist halt nur so eine Vermutung von mir, da mir solche Parametermodifikation
* Applying /etc/sysctl.conf ...
vm.dirty_background_ratio = 3
vm.dirty_ratio = 7
kernel.hung_task_panic = 1
kernel.hung_task_timeout_secs = 300
für ein funktionierendes raid ziemlich "voodoo" scheinen,
ich dem so betriebenen raid dann auch kein Vertrauen schenken möchte.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
BerndHohmann
Beiträge: 70
Registriert: 17.02.2015 23:26:44
Wohnort: Nidderau
Kontaktdaten:

Re: Cache: dirty_bytes & dirty_background_bytes Erklärung?

Beitrag von BerndHohmann » 02.04.2015 12:03:07

rendegast hat geschrieben:Ist vielleicht das zugrundeliegende raid5 angeschlagen?
Ich hatte eine Frage zu zwei Paramentere gestellt.

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

Re: Cache: dirty_bytes & dirty_background_bytes Erklärung?

Beitrag von rendegast » 05.04.2015 10:11:31

dirty_background_ratio <->dirty_background_bytes
dirty_ratio <-> dirty_bytes
Wird einer der Werte (valide) gesetzt, so wird die Änderung umgesetzt und der "counterpart"-Wert mit 0 ausgelesen:

Wie wäre es damit?
http://www.sysxperts.com/home/announce/ ... roundratio
und
https://lonesysadmin.net/2013/12/22/bet ... rty_ratio/
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Antworten