ZFS niedrige Readperformance

xXThunderbyteXx

Experte
Thread Starter
Mitglied seit
15.11.2014
Beiträge
1.085
Hi,

Ich habe hier für Testzwecke einen kleinen ZFS Proxmox Server mit einer SSD und einer 8TB CMR HDD stehen.


Ich benötige eine VM mit ein paar TB Speicher, daher habe ich an die entsprechende VM 4TB der HDD zugewiesen, als XFS gemounted und testweise einen Samba Server installiert.
Das funktioniert auch soweit ohne Probleme und via Samba kann ich problemlos mit 112mb/s schreiben.

Nun ist mir jedoch aufgefallen, dass die Readperformance lediglich bei 80mb/s liegt (teilweise auch tiefere drops), der Host langweilt sich währenddessen jedoch, keine hohe CPU/RAM Auslastung oder io_delay.


Proxmox nutze ich nun schon seit Jahren, mit ZFS habe ich jedoch nur wenig Erfahrung, hat jemand eine Vermutung an was das liegen könnte?
Getestet wurde mit einzelnen großen Dateien (10-20GB), daher sollten hier die IOPS nicht limitieren.

Es ist mir auch etwas unverständlich, wie die Writeperformance höher sein kann, als die Readperformance.
Ich würde mich daher über Ratschläge oder Hinweise sehr freuen!

Grüße und Danke!
Ian


Proxmox Server
Intel Pentium G4600
8GB DDR4 Dualchannel
250GB SSD Boot
8TB WD CMR (als ZFS RAID0 in Proxmox gemounted -> für Singledisk)


1621183043759.png
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Nachsehen - die haben oft unterschiedliche Leistung ingress und egress, so jedenfalls bei mir mit SMB.
Beitrag automatisch zusammengeführt:

Ansonsten: mehr RAM = mehr Readcache = Entspannung beim IOPS Flaschenhals der HDD.
 
Hab gerade geschaut, ist Intel.

Der RAM wird ja nahezu nicht genutzt und selbst ohne sollte doch eine große einzelne Datei mit mehr als 80MB/s gelesen werden?
 
_Eigentlich_ schon... hab aber keine weiteren Tipps dazu.
 
Writeperf ist höher, da WRITE gegen den RAM gepuffert, aggregiert wird und dann auf die HDD ausgeschrieben. Bei READ ist der Flaschenhals Applikation/Protokolle/HDD, der ARC Cache wird hier sicher nicht greifen. Mit Sicherheits dümpelt der SATA io-queue bei 1-2 request maximal, obwohl deutlich mehr gehen würde. m.M.n. ist das Ergebnis nicht abnormal.

Versuch mal bei READ zu puffern, z.B. mit mbuffer.
 
Danke dir, das klingt logisch.

Ist das dann bedingt durch ZFS?
Bei einzelnen großen Dateien sollte die Readperformance doch bei rund 150mb/s liegen.


Ich bin recht neu bei ZFS, daher habe ich noch keine wirklichen Einschätzungen, was die Hardwareanforderungen angeht.
 
ZFS kann weitaus mehr. Wenn du auf der Proxmox Kommandozeile mittels dd z.b. direkt die Readperf testest, wird sich das sicher zeigen.

Die Problematik liegt imho an den Applikationen/Protokollen oben darauf. Um den Flaschenhals zu finden, musst du ggf. eins nach dem anderen durchtesten.
 
Hmm, ich werde mal testweise die HDD direkt durchreichen
Beitrag automatisch zusammengeführt:

Hier nun ein Test mit direkt durchgereichter HDD:

1621768887010.png



Geschrieben wir mit konstanten 116MB/s, also dem Limit des Gigabit Netzwerks.
Interessanterweise ist die Readgeschwindigkeit aber auch hier bei maximal 85MB/s.

Die CPU langweilt sich, die IO Wait ist auch nur bei 5-10.




Code:
root@debian:/hdd# hdparm -Tt /dev/sdb1

/dev/sdb1:
 Timing cached reads:   17836 MB in  1.99 seconds = 8941.01 MB/sec
SG_IO: bad/missing sense data, sb[]:  70 00 05 00 00 00 00 0a 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 Timing buffered disk reads: 606 MB in  3.00 seconds = 201.74 MB/sec




root@debian:/hdd# dd if=/dev/zero of=output conv=fdatasync bs=384k count=1k; rm -f /tmp/output
1024+0 records in
1024+0 records out
402653184 bytes (403 MB, 384 MiB) copied, 2.63633 s, 153 MB/s



Scheint so als läge es an Samba
 
Zuletzt bearbeitet:
ZFS habe ich als Fehlerquelle ja schon ausgeschlossen, indem ich die HDD direkt an die VM durchgereicht habe und diese als XFS gemounted wurde.

Interessanterweise ist mir auch schon ein ähnliches Problem auf einem Raspberry Pi 4 aufgefallen, der eine 8TB HDD via USB angeschlossen hat.
Write ist Problemlos mit 116mb/s möglich, die Readperformance schwankt zwischen 80-100MB/s.


Das ganze hat mit einem Kernelupdate Anfang des Jahres begonnen, ich vermute hier gibt es irgendeinen Bug.

Hat jemand eine Ahnung, wie ich das Debuggen kann?
 
Ich habe bei SMB 1 Gbit immer voll Speed egal ob read oder write.
 
Hmm, ich wüsste nicht, woran das sonst liegen sollte.

Welches OS + Kernel Version und Samba Version hast du laufen?
 
Ich nutze kein ZFS, es spielt aber keine Rolle welches Gerät das ist, ob in UnRaid, ESXI, Windows oder Xpenology. Da schwankt auch nichts. Ich denke bei dir stimmt einfach was nicht.
 
Ich kann mir beim besten Willen nicht vorstellen, was da nicht stimmen sollte.

Sowohl die VM als auch der Pi sind quasi eine minimale Debian Installation + Samba + XFS.
Der Share zeigt auf die als XFS gemountete HDD, mehr nicht.

Write ist ja problemlos mit 112MB/s möglich, nur Read macht Probleme.
Getestet mit zwei verschiedenen Clients, Windows und macOS.

Bei meiner Synology tritt das Problem zudem nicht auf.
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh