CrystalDiskMark: Wie es tatsächlich funktioniert

CrystalDiskMark ist einer der beliebtesten Speicher-Benchmarks, aber wie bestimmt er die Laufwerksleistung?

CrystalDiskMark gibt es seit über einem Jahrzehnt und es ist eine der beliebtesten Methoden der PC-Community zum Benchmarking von Speicher, egal ob es sich um Festplatten handelt. Solid State Drives (SSD) oder sogar Flash-Laufwerke. Es handelt sich um einen einfachen Ein-Klick-Benchmark, der Ihnen sagt, wie schnell Ihr Speicher ist. Aber was genau ist das Testen und was bedeuten die Ergebnisse für Ihre Hardware? Folgendes müssen Sie wissen:

Was ist CrystalDiskMark?

CrystalDiskMark ist ein Windows-Speicher-Benchmark, der erstmals 2008 herauskam und versucht zu beurteilen, wie schnell ein Laufwerk unter festgelegten Testbedingungen ist. Es gibt auch einen macOS-Benchmark namens AmorphousDiskMark, das mehr oder weniger auf die gleiche Weise funktionieren soll und (mit Genehmigung des Autors von CrystalDiskMark) auch so gestaltet ist, dass es genauso aussieht. Im Grunde überträgt CrystalDiskMark lediglich Dateien und teilt Ihnen die Geschwindigkeit mit, mit der das Laufwerk diese Daten übertragen konnte.

Bevor Sie Ihre Tests ausführen, müssen Sie eine Arbeitsdateigröße festlegen. Dies ist die Dateigröße, die CrystalDiskMark erstellt, um Lese- und Schreibtests durchzuführen. Sie reicht von 16 MB bis 64 GB. Es ist völlig in Ordnung, den Standardwert von 1 GB beizubehalten, da dies eine realistische Größe für viele Daten ist, auf die Sie in Ihrem Speicher zugreifen können.

CrystalDiskMark verfügt über vier voreingestellte Benchmarks. Wenn Sie sich jedoch die erweiterten Einstellungen ansehen, können Sie tatsächlich anpassen, worauf der Benchmark testet, und so unterschiedliche Ergebnisse erhalten. Bei den CrystalDiskMark-Benchmarks kommt es auf die vier wichtigen Testparameter an: sequentiell vs. zufällig, Blockgröße, Warteschlangentiefe und Threads.

Sequentielle vs. zufällig

Die beiden grundlegenden Testtypen, die CrystalDiskMark verwendet, sind sequentiell und zufällig und werden mit SEQ bzw. RND bezeichnet. Der Hauptunterschied zwischen diesen beiden Arten von Workloads besteht in der Art und Weise, wie die Daten organisiert sind. Bei einer sequenziellen Arbeitslast sind die Daten, auf die die SSD zugreift, physisch zusammenhängend und können nacheinander in einer Reihenfolge (also sequenziell) abgerufen werden. Bei zufälligen Workloads handelt es sich um Daten, die nicht sequentiell oder zusammenhängend sind und möglicherweise über das gesamte Laufwerk verteilt sind. Abhängig von anderen Faktoren kann der Leistungsunterschied zwischen sequentiell und zufällig variieren und von geringfügig bis extrem groß reichen.

Im Allgemeinen können SSDs zufällige Arbeitslasten sehr gut bewältigen, während HDDs damit zu kämpfen haben, weshalb Sie Möglicherweise erreichen Festplatten in den Zufallstests von CrystalDiskMark Nenngeschwindigkeiten von weniger als 10 MB/s, in sequenziellen Tests jedoch über 100 MB/s Einsen. Dies ist auf die Tatsache zurückzuführen, dass Festplatten eine Komponente, die von der physischen Festplatte liest und schreibt, mechanisch bewegen müssen, und das Springen von Ort zu Ort dauert ziemlich lange. Obwohl SSDs nicht mechanisch sind, verarbeiten sie zufällige Arbeitslasten aus externen Gründen immer noch langsamer als sequentielle.

Block Größe

Dateien bestehen aus Blöcken und sind die größten Datenelemente, die in einem Eingabe-/Ausgabevorgang (oder E/A-Vorgang) verschoben werden. In den Standardtests, die CrystalDiskMark Ihnen vorstellt, werden Sie einige sehen, die eine Blockgröße von 1 MiB verwenden (ungefähr eins). Einige davon verwenden eine Blockgröße von 4 KiB (ungefähr vier Kilobyte) und eines verwendet eine Blockgröße von 128 KiB (ungefähr 128 KiB). Kilobyte).

Je größer die Blockgröße, desto schneller ist die Übertragungsgeschwindigkeit

Dies mag zwar kontraintuitiv erscheinen, aber je größer die Blockgröße, desto schneller ist die Übertragungsgeschwindigkeit. Es ist im Grunde der Unterschied zwischen dem Verschieben eines Blattes Papier nach dem anderen und dem Verschieben eines ganzen Ordners in einen Aktenschrank. Sequentielle Dateiübertragungen umfassen oft große Blöcke, während zufällige Arbeitslasten dazu neigen, kleinere Blöcke zu verwenden. Obwohl CrystalDiskMark bei sequentiellen Tests große Blockgrößen und bei Zufallstests kleine Blockgrößen verwendet, ist die Blockgröße nicht unbedingt ein Hinweis auf Sequenzalität oder Zufälligkeit.

Warteschlangentiefe

Die Warteschlangentiefe bezieht sich darauf, wie viele Warteschlangen zu einem bestimmten Zeitpunkt E/A-Anfragen verarbeiten. Je mehr Warteschlangen für die Datenübertragung geöffnet sind, desto größer ist das Potenzial für schnellere Übertragungsgeschwindigkeiten. Standardmäßig testet CrystalDiskMark mit Warteschlangentiefen von 1, 8 und 32, Sie können die Warteschlangentiefe jedoch manuell erhöhen und auf diese Weise testen, wenn Sie möchten. Sie können sich eine Warteschlange als einen einzelnen Mitarbeiter vorstellen, der Dokumente abheftet, und offensichtlich bedeuten mehr Mitarbeiter eine schnellere Ablage.

Eine höhere Warteschlangentiefe führt oft zu höheren Übertragungsgeschwindigkeiten, unabhängig von der Blockgröße oder der Thread-Anzahl, aber eine hohe Warteschlangentiefe macht bei zufälligen Arbeitslasten einen besonders großen Unterschied. Um die Analogie zum Aktenschrank noch einmal zu verwenden: Zwei Personen, die nacheinander Dokumente ablegen, sind viel schneller als eine Person, die dies alleine erledigt. Der Übergang von einer Warteschlangentiefe von eins auf 32 könnte zu einer zehnfachen Übertragungsgeschwindigkeit führen, was enorm ist.

Themen

Threads unterscheiden sich in Blockgröße und Warteschlangentiefe, da sie sich in der CPU und nicht im Speicher befinden. Jede CPU verfügt über eine bestimmte Anzahl von Kernen, und jeder Kern verfügt normalerweise über einen oder zwei Threads. Dabei handelt es sich im Grunde um die CPU-Version von Warteschlangen. Je mehr Threads, desto einfacher ist es, an mehreren Dingen gleichzeitig zu arbeiten. Threads sind in CrystalDiskMark eher unwichtig, da sieben der acht Standardtests nur eine Thread-Anzahl verwenden, wobei nur ein Test eine Thread-Anzahl von 16 verwendet.

Dieser eine Test, der eine Thread-Anzahl von 16 verwendet, macht jedoch deutlich, dass viele CPU-Threads hilfreich sein können. Der Übergang von einem Thread auf 16 in einer zufälligen Arbeitslast erhöht die Leistung um etwa das Achtfache oder 700 %. Dies liegt daran, dass die CPU auch auf einer sehr wichtigen Ebene an der Erleichterung der Datenübertragung beteiligt ist. Die Anzahl der Threads hängt jedoch von der CPU ab, und nicht jeder Prozessor verfügt über 16 Threads, was möglicherweise der Grund dafür ist, dass CrystalDiskMark die Thread-Anzahl für die meisten seiner Standardtests bei eins belässt.

Alles zusammenfügen

Nachdem Sie nun alle Schlüsselkomponenten kennen, werfen wir einen Blick auf ein tatsächliches CrystalDiskMark-Ergebnis. Dies ist einer von uns Testbericht zum Samsung 990 Pro Verwendung der Standardtests.

990 Pro

970 EVO Plus

SEQ1M, Q8T1

7465/6897

3575/3059

SEQ1M, Q1T1

3878/6046

3029/2725

RND4K, Q32T1

785/533

774/610

RND4K, Q1T1

72/248

53/240

Die Ergebnisse sind nach Lese-/Schreibzugriff organisiert und werden in MB/s gemessen.

Der erste Benchmark ist ein optimierter sequenzieller Benchmark, der eine große Blockgröße und acht Warteschlangen verwendet. und obwohl nur ein Thread verwendet wird, entspricht die Übertragungsgeschwindigkeit im Wesentlichen der von Samsung bewerteten 990 Pro bei. Der zweite Benchmark unterscheidet sich nur in der Warteschlangentiefe, die eins statt acht beträgt, was zu einer Verschlechterung sowohl der Lese- als auch der Schreibleistung führt (insbesondere beim Lesen beim 990 Pro).

Der dritte Test ist eine zufällige Arbeitslast mit einer Blockgröße von nur 4 KiB und einer Warteschlangentiefe von 32 Sehr hoch, die Lese- und Schreibgeschwindigkeiten sind immer noch deutlich niedriger als bei der sequentiellen Arbeitsbelastungen. Der letzte Test verwendet die gleiche Blockgröße von 4 KiB, verringert jedoch die Warteschlangentiefe auf eins, was zu einem extremen Ergebnis führt langsame Lesegeschwindigkeit von nur 72 MB/s beim 990 Pro (die Schreibgeschwindigkeit ist ebenfalls recht langsam, aber nicht annähernd so hoch). fallen).

Es gibt auch das NVMe-Testprofil, das verschiedene Tests enthält, und Sie können auch Ihre eigenen Testparameter konfigurieren. Klicken Sie einfach auf das Dropdown-Menü „Einstellungen“ und dann auf die Option „Einstellungen“, und Sie werden mit zahlreichen Optionen begrüßt. Die Blockgröße reicht von 4 KiB bis 8 MiB, die Warteschlangentiefe kann von 1 bis 512 eingestellt werden und die Thread-Anzahl kann zwischen 1 und 64 liegen. Allerdings können die Werte für Blockgröße und Warteschlangentiefe nicht im wahrsten Sinne des Wortes irgendetwas sein; Die Optionen für die Warteschlangentiefe reichen von 1 über 2 bis 4 und 8 usw.

So laden Sie CrystalDiskMark herunter

CrystalDiskMark ist ein bewährter Speicher-Benchmark, der häufig zum Messen verwendet wird beste NVMe-SSDs. Sie können es herunterladen unter CrystalDiskMarks eigene Website, das auch CrystalDiskInfo hostet, eine Begleitanwendung, die sich auf die Speicherüberwachung konzentriert.