h2testw langsam?

schmadde

Lt. Junior Grade
Registriert
Apr. 2022
Beiträge
370
Habe mir eine WD Black SN850X 4 TB gekauft, und jetzt mache ich, was ich immer mache, wenn ich neue SSDs oder USB Sticks kaufe: Performancetest mit Crystal Diskmark und "Fälschungstest" mit h2testw. Ich nutze den h2testw lauf auch immer, um zu checken, ob die Schreibperformance durchgehend aufrecht erhalten bleibt bzw. wie weit sie abfällt, wenn man die ganze Disk vollschreibt. Bei QLC SSDs kommen da oft interessante Ergebnisse raus.

Nur ist die 850x offenbar so schnell, dass h2testw den Flaschenhals darstellt? Die Werte mit CrystalDiskMark sind wie erwartet ein bisschen über bzw. unter 7GByte/s, h2testw kommt aber nur auf 1,59 GByte/s schreiben und noch etwas weniger beim lesen. CPU ist ein älterer AMD ("Ryzen 7 3700X). Ist das wirklich so, dass h2testw nicht schneller kann? Welche Tools würden in Frage kommen, für so einen "whole disk performance test"?
 
Mag durchaus sein, dass das Tool nicht für solche Schreibgeschwindigkeiten ausgelegt ist. Hattest du bei anderen Platten mit dem Tool schon höhere Werte?

Auf der anderen Seite kommst du auf die maximalen Zahlen auch nur, wenn du kontinuierlich eine große Datei auf die Platten schreibst, was h2testw eher nicht macht. Das ließt und validiert die geschriebenen Blöcke ja auch noch parallel, wenn mich nicht alles täuscht.
 
Hi

Verhält sich deine so?

8:30

Mfg.
 
TP555 schrieb:
Verhält sich deine so?

8:30
Was ist in diesem 20 Minütigen Video auf russisch? zu sehen, auf das Du Dich beziehst?
 
schmadde schrieb:
auf das Du Dich beziehst?

Bei 8:30, schrieb ich aber zuvor schon D

Aber ich fasse Mal gerne das wichtigste für dich zusammen.

Bis ca 1TB schreibt die durch gehend schnell und danach noch mit ca 1,6GB/s

Mfg.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: schmadde
@PC295 Bei mir kam h2testw aber schon vom Start weg kaum über 2 TB/s - während sie bei Crystaldiskmark fast 7 TB/s schreibend schafft. Drum meine Frage, obs ein besseres Tool für sowas gibt.
 
schmadde schrieb:
Q8T1...

Da das Tool wohl ehr Q1T1 macht. Mit 1gb.
Nicht 4kb...
Sieht das eigentlich gar nicht so schlecht aus.
das sie mit crystaldiskmark die entsprechende Leistung zeigt. Kann es nur an Tool liegen. Langsam ist technisch gesehen der falsche Begriff.
 
schmadde schrieb:
CPU ist ein älterer AMD ("Ryzen 7 3700X). Ist das wirklich so, dass h2testw nicht schneller kann?
Eher so: nicht besser an Multi-core CPUs angepasst ist und DEIN 3700X kann so nicht schneller. Mit einem frischen 9xxx Ryzen oder Arrow Lake hättest Du evtl. 3000+ MB/s gesehen, bis natürlich der pSLC-Cache voll ist und dann wohl dieselben ~1,5 GB/s.
 
massaker schrieb:
Eher so: nicht besser an Multi-core CPUs angepasst ist und DEIN 3700X kann so nicht schneller.
Nee, das liegt wie Matthias80 meinte am Zugriffsmuster, nicht am Prozessor.

Wenn ich das z.B. auf meine Gen4 SSD (Micron 7400 Pro) loslasse, schreibt das Tool mit 1,8 GB/s. Der Prozessor (5800X3D) langweilt sich mit 3% Auslastung und die SSD ist auch nur bei 30%. Heißt also kleine Blöcke mit wenig Parallelität beim Schreiben. Normal schafft die SSD übers gesamte Device um die 5,4 GB/s Schreibrate bei genügen hoher Parallelität.
 
  • Gefällt mir
Reaktionen: massaker
Chuuei schrieb:
auf meine Gen4 SSD (Micron 7400 Pro) loslasse, schreibt das Tool mit 1,8 GB/s. Der Prozessor (5800X3D) langweilt sich mit 3% Auslastung und die SSD ist auch nur bei 30%
Habe jetzt auch getestet und mal auf meine 990Pro 20GB schreiben+verifizieren lassen. Geschrieben wurde mit 2,0-2,1 GB/s (im Endergebniss 2,09). Die Auslastung von dem 5800x3D war zwischen 3 und 8%, also grob bei 6% im Schnitt, dabei war ein einzelner Kern bei ca. 80-90% (das sind 16 logische Kerne, da kann man theoretisch auch mit 6% im CPU-Limit sein). Parallel habe ich die SSD mit HDTunePro->DiskMonitor überwachen lassen -> geschrieben sowie gelesen wird mit 1MB-Blöcken (habe nach Deinem Post eher sowas wie 16-64KB erwartet).
 
  • Gefällt mir
Reaktionen: schmadde
Gute Hinweise. HWInfo zeigt bei mir ne Kernauslastung von 60%, klingt noch weit weg von Limit. Und das man mit HDTunePro externe IO überwachen kann, wusste ich nicht.

1MB klingt auf jeden Fall aber erstmal nach Q1T1. Hätte ich nicht erwartet. Parallel mit solchen Blockgrößen zu schreiben ergibt keinen Sinn. Man hat bei einem Block dieser Größe ja schon Probleme effektiv die CPU Caches zu nutzen.
 
Ich entnehme der Diskussion, dass das Problem gar nicht am Programm liegt, sondern an der fehlenden Parallelität - mit einer einzigen Lese oder Schreiboperation wäre eine volle Ausnutzung der Bandbreite demnach nicht möglich?

Das fällt mir zumindest beim lesen irgendwie schwer zu glauben. Woran liegt das technisch? Geht DMA nur immer über eine PCIe Lane oder wie muss ich mir das vorstellen? Heisst dass, dass in der Praxis gar nicht so schnell gelesen oder geschrieben werden kann wie die Zahlen suggerieren, wenn nicht mehrere Operationen parallel ablaufen?

Einen starken Einbruch der Performance konnte ich nicht feststellen. Die SSD schrieb vom Start weg mit knapp über 2 TB/s, was so ungefähr 1/3 der möglichen Performance ist, sie brach dann nach einiger Zeit auf ca. 1,6TB/s ein was aber immer noch o.k. ist
Ergänzung ()

KillerCow schrieb:
Mag durchaus sein, dass das Tool nicht für solche Schreibgeschwindigkeiten ausgelegt ist. Hattest du bei anderen Platten mit dem Tool schon höhere Werte?
Ich hatte noch nie so eine schnelle SSD. Die meisten sind auch externe, sodass idR das USB oder Thunderbolt Gehäuse limitiert - USB kann eh nur 1 TB/s, mit TB3 kam ich auch nicht wesentlich über 2. Ich habe allerdings auch da schon festgestellt, dass h2testw im Vergleich zu Crystaldiskmark teils erheblich langsamer war, auch vom start weg.
KillerCow schrieb:
Auf der anderen Seite kommst du auf die maximalen Zahlen auch nur, wenn du kontinuierlich eine große Datei auf die Platten schreibst, was h2testw eher nicht macht. Das ließt und validiert die geschriebenen Blöcke ja auch noch parallel, wenn mich nicht alles täuscht.
Nein, h2testw schreibt erst komplett die Platte voll und liest erst dann in einem oder wenn man es entsprechend einstellt auch in mehreren Durchläufen die Daten ein.

Das Verhalten von h2testw wäre also genau so: erst kontinuierlich vollschreiben (die Dateien sind immer jeweils 1TB groß, solange der Platz reicht).
 
Zuletzt bearbeitet:
@Matthias80 Das ist der Random wert, und somit ein komplett anderer Anwendungsfall. Mir gehts ausschliesslich um lineares Lesen und schreiben großer Files.
 
Zurück
Oben