Volle Performance aus NVMe rausholen

SecretUser

Schraubenverwechsler(in)
Hallo ihr Lieben,

erstmal meine Ausstattung:

Windows 10 1909
Ryzen 3950x
MSI X570 Ace
32GB 3200MHz RAM
SSD 1 -> Intel Optane 905p 380GB M.2 (2300 MB/s Schreiben max)
SSD 2 -> Micron 9300 Pro 7.68TB U.2 (3500 MB/s Schreiben max)

Ich habe in Windows gemerkt, dass meine Dateien zwischen den 2 SSD's mit "nur" 1.6 GB/s transferriert werden, obwohl 2.3 drin sein müssten. Dasselbe gilt bei meiner USB NVMe, die laut meinen Tests 900 MB/s kann, aber ich nur 630 MB/s kriege. In beiden Fällen sind das also 20%+ Performance Verluste. Das geht doch bestimmt anders!

Also versuchte ich mal mein Glück mit "ATTO Disk Benchmark." Bei einem Test mit 16KB I/O bekomme ich genau die 1.6 GB/s Schreiben gemessen. Bei Erhöhung auf 32KB I/O bekomme ich dann die vollen 2.3 GB/s durch.
Das bringt mich zur Schlussfolgerung, dass ich die volle Geschwindigkeit erhalten würde, wenn ich Windows für die 32KB bei der I/O überzeugen könnte.

Google schlägt vor, dass man bei der Registry da was ändern könnte. Jedoch würde ich da ungerne was verändern, ohne dass mir ein Mensch aus Fleisch und Blut da genau Rat geben kann, weil ich selbst von den Einstellungen da keine Ahnung habe. Außerdem sind die Artikel irgendwie zu alt, weil ich diesselben Einstellungen nie ganz passend finden kann. Ohne deckungsgleichen Wortlaut ändere ich da sowieso nichts!

Also meine Frage: Kann ich in Windows irgendeine Einstellung ändern, welche die volle Performance erlaubt und mein System dabei nicht instabil macht?

Ich bin für jeden Vorschlag dankbar!
 
Wozu? Bei der kleinen Platte wird doch nur Windoofs und nen paar andere Sachen drauf sein. Oder schiebst du täglich mehrere TB von A nach B und jede Sekunde kostet Geld? Hast doch schon selbst erkannt, das die Leistung nur im optimalen Fall anliegt, was aufgrund der Datenstruktur und Größe nur in Ausnahmen der Fall sein wird. Im Alltag merkst du keinerlei Unterschied.
 
Funktioniert die Optane SSD überhaupt mit einem AMD-System richtig?

Dazu musst du immer bedenken, das meistens Bruttodatenraten angeben werden, und durch die Kodierung die Nettodatenrate geringer liegt.
Zudem hängt es immer von der Dateigröße ab, wie schnell die Daten übertragen werden.

Außerdem ist der Windowsexplorer allgemein recht träge beim kopieren. Wenn es schneller gehen soll, versuche mal TeraCopy o.ä.
 
Windows erhöht die Blocksize beim Kopieren von großen Dateien sogar auf mehrere MB pro IO. Das ist auch der Grund warum große Files in der Regel deutlich schneller übertragen werden können als viele kleine.

Das Problem mit der maximal Performance ist ein ganz anderes. Man bekommt es beim sequenziellen Übertragen von nur einer Datei auf einmal eben kaum hin eine moderne SSD anständig auszulasten. Benchmarks machen das idR anders. Die ballern eben mit bis zu 64 oder noch mehr Datenströmen gleichzeitig drauf.

Der Windows Explorer kann aber innerhalb einer Kopier Warteschlange nur eine Datei nach der anderen. Per command line kann man zB.: mit Robocopy /MT angeben wie viele Files gleichzeitig übertragen werden sollen. Über GUI hab ich bislang auch noch kein anständiges Tool als Explorer Ersatz gefunden was das kann.


Gesendet von iPad mit Tapatalk
 
Wozu? Bei der kleinen Platte wird doch nur Windoofs und nen paar andere Sachen drauf sein. Oder schiebst du täglich mehrere TB von A nach B und jede Sekunde kostet Geld? Hast doch schon selbst erkannt, das die Leistung nur im optimalen Fall anliegt, was aufgrund der Datenstruktur und Größe nur in Ausnahmen der Fall sein wird. Im Alltag merkst du keinerlei Unterschied.

Es ging mir eher ums Prinzip. Aber generell hast du recht.

Funktioniert die Optane SSD überhaupt mit einem AMD-System richtig?

Ja, die wird erkannt wie jede andere SSD. Schneller kann Windows nicht laufen, also gönn' Dir ruhig auch so ein Teil für die nächste C: Platte, wenn Du einen guten Preis siehst!
TeraCopy sieht sehr interessant für viele Dateien auf einmal, danke! Für einzelne Dateien ist es jedoch deutlich langsamer als Windows bei mir. Ich glaube mehr, als Freefilesync benutzen, welches dann nochmal ein bisschen Geschwindigkeit dazu gibt, geht wohl erstmal nicht.

Windows erhöht die Blocksize beim Kopieren von großen Dateien sogar auf mehrere MB pro IO. Das ist auch der Grund warum große Files in der Regel deutlich schneller übertragen werden können als viele kleine.

Das Problem mit der maximal Performance ist ein ganz anderes. Man bekommt es beim sequenziellen Übertragen von nur einer Datei auf einmal eben kaum hin eine moderne SSD anständig auszulasten. Benchmarks machen das idR anders. Die ballern eben mit bis zu 64 oder noch mehr Datenströmen gleichzeitig drauf.

Der Windows Explorer kann aber innerhalb einer Kopier Warteschlange nur eine Datei nach der anderen. Per command line kann man zB.: mit Robocopy /MT angeben wie viele Files gleichzeitig übertragen werden sollen. Über GUI hab ich bislang auch noch kein anständiges Tool als Explorer Ersatz gefunden was das kann.

Danke für die Erläuterung! Also unterm Strich heißt das wohl, dass Benchmarks und "real world performance" zwei verschiedene Welten sind. Da kann man wohl im Moment nur bedingt was reißen. Naja, vielleicht optimiert Microsoft ja in den kommenden Jahren für NVMe und dann könnte die Sache schon besser aussehen.
 
Also unterm Strich heißt das wohl, dass Benchmarks und "real world performance" zwei verschiedene Welten sind.
Das hängt von Deinen real world Aufgaben ab. Es gibt nicht nur das Kopieren von kleinen und/oder großen Dateien. Wenn die Software z.B. ein Gigapixel-Bild im Ram erzeugt und dieses dann speichert, sollten sich die 16-120 GB durchaus mit der max. Schreibleistung der SSD schreiben lassen, falls der PC gerade nicht noch was anderes tut. Oder wenn Windows ein "Suspend to Disk" mit großen, genutzten Ram-Mengen macht (obwohl das außer MS niemand benchmarken kann).

Da kann man wohl im Moment nur bedingt was reißen. Naja, vielleicht optimiert Microsoft ja in den kommenden Jahren für NVMe und dann könnte die Sache schon besser aussehen.
Wenn ich mir die Entwicklung der letzten Jahre so ansehe, dann zweifele ich daran. NTFS ist immer noch das Maß der Dinge bei MS, es ist aber nicht darauf ausgelegt, wirklich performant zu arbeiten (dann müsste man nicht nur das Journaling komplett abschalten). Zusätzlich werden von Windows 10 immer mehr Systemtasks ausgeführt, die auch Performance auf dem Laufwerk benötigen können.

Mit welchem Adapter hast Du die U.2 SSD eigentlich angebunden? U.2 zu NVMe oder U.2 zu PCIe?
 
Ich fürchte rein auf Software basis lässt sich das nicht "beheben". Ist aber auch nicht weiter schlimm. Denn eine SSD ist hald der perfekte Multitasker. Im Gegensatz zur herkömmlichen Festplatte, die ja locker mit einer Aufgabe schon überfordert sein kann, kannst du neben eines einzelnen Kopie-Jobs nebenbei eben noch andere Dinge tun. Und das in einem begrenzten Umfeld fast ohne Performanceeinbußen durch den anderen laufenden Job.

Im Desktopbereich, lässt sich so eine SSD somit kaum sinnvoll auslasten, aber in einem Rechenzentrum, wo auf so einem Storage-Backend hunderte, tausende VMs laufen ist eine solche Parallelität kriegsentscheidend. Wie schön ist das geworden, seit wir bei uns All-Flash verwenden. Früher hatten wir Storage-Racks mit 100ten SAS-HDDS und trotzdem wurde es für all spürbar zäh, wenn nur eine Datenbank amok lief. Heute ist das fast egal. Storage ist selten der limitierende Faktor. Früher war es beinahe immer der Storage der alles ausbremste.

Um es etwas besser zu veranschaulichen:

Nehmen wir eine Festplatte und sagen mal das ist ein einspuriger Feldweg. Hier kann immer nur ein Auto oder LKW hinter dem nächsten fahren. Weder ein Sportwagen noch ein Schwertransport können hier besonders schnell fahren. Wenn dann noch Gegenverkehr kommt (Analogie zum konkurierenden Lesen und Schreiben gleichzeitig) haben wir endgültig Stau angesagt.

Im Vergleich dazu ist eine SSD eine 20 spurige Autobahn in beide Richtungen (wenn man die Performance vergleichen würde hätte die vermutlich noch viel mehr Spuren). Hier können von großen LKWs (große Files auf Grund großer I/O-Blocksize) gemütlich aber mit viel Fracht auf einmal dahin cruisen, aber auch schnelle Sportwagen (Random-I/O) zur selben Zeit mit Volldampf vorbei rasen. Da wir ja ne Autobahn haben geht das auch gleichzeitig in die andere Richtung ohne großen Einfluss.
Die Crux an dieser Stelle: Du wirst es weder mit nur einem LKW noch mit einem Sportwagen schaffen, diese Straße auch nur annähernd auszulasten.

Du könntest somit diese "bis zu" Angaben bei SSDs vergleichen mit dem Straßendurchsatz bei voller Straße, kurz vor bevor es ins Stocken kommt und nicht wenn nur ein Auto darauf fährt.
 
Oder wenn Windows ein "Suspend to Disk" mit großen, genutzten Ram-Mengen macht (obwohl das außer MS niemand benchmarken kann).

Wobei das trotzdem recht lange braucht am Desktop bestimmt fast 2-3 Minuten. Müsste man dann mal hochrechnen, was da bei 18 GiB also 6 GiB / min wären. Das scheint nicht besonders schnell zu sein, immerhin sind das nur 102,4 MiB /s.
 
Wirklich testbar scheint das sowieso nicht zu sein. Die SSD in meinem Tablet schreibt laut CDI nur mit 140 MB/s, hat aber bei Wahl des Ruhezustandes das mit 3 GB belegte Ram in gut 2 Sekunden geschrieben und wird ausgeschaltet.

Warum ein PC mit 64 GB (genutztem) Ram dafür mit einer SSD, die 1 GB/s schreiben kann, mehrere Minuten benötigen sollte, wüsste ich nicht. Außer, Windows muss vorher dutzende von Treibern geordnet runter fahren, HDDs stoppen usw.

Ein Test auf meinem PC scheitet, da auf C:\ (mit Absicht) nur 68 GB frei sind. Der wird aber sowieso jedenn Abend korrekt herunter gefahren.
 
Mit welchem Adapter hast Du die U.2 SSD eigentlich angebunden? U.2 zu NVMe oder U.2 zu PCIe?

Das ist ein PCIe Adapter von Delock, dem ich schon vertraue. Zugegeben: Im Moment steckt die U.2 in einem Slot, der mit dem Chipset verbunden ist und nicht der CPU. Das bringt aber anscheinend nur um die 500 MB/s Einbuße. In naher Zukunft gestalte ich das Innenleben meines PCs nochmal gewaltig um. Wenn danach etwas Spannendes geschieht, würde ich nochmal einen Beitrag verfassen.

Übrigens: Meine HDD bekommt mehr oder weniger die volle Leistung mit zwischen 250 - 280 MB/s beim Transfer. Da muss ich nichts mehr ändern. Ich nehme an, dass bei HDD's das einfach anders läuft und man da die maximale Schreibleistung einfach erreichen kann, besonders bei den relativ moderaten Zahlen.
 
Zurück