U
uNrEL2K
Gast
Test des TRIM Supports der Marvell 88SE91xx-Treiber
Durch eine Anregung von Holt habe ich mich dazu entschlossen, abermals zu untersuchen, ob der Marvell 9120, sowie der Marvell Treiber Trim unterstützen. Im Netz findet man leider gegensätzliche Aussagen, eine kleine von mir durchgeführte Untersuchung lies mich auch annehmen, der Marvell Treiber könne TRIM. Ich hoffe dieser Test bringt etwas Klarheit.
PS: Wer nicht weiß, was es mit TRIM auf sich hat, liest sich am besten Holt's Erklärungsversuch durch.
Das Testsystem:
OS:Win 7 Prof x64
CPU:i5-750 Rev B1 BLCK@160Mhz, Stromsparmechanismen aktiv (C-States & EIST)
MB: GA-P55-UD3 Rev. 1 BIOS-Ver: F9
RAM: 12 GB DDR3-1333 CL 9 (Kanalbelegung: Channel A & B: jeweils 1x2GB & 1x4GB)
SSD: X25-M G2 80GB FW: 02M3
HDD: 5x hd204ui Raid 5
SATA-Controller:
Die Testmethodik:
Die SSD wird vom PCH (ehemals Southbridge) des Mainboards genommen und an den Marvell-Controller angeschlossen. Nach dem Systemstart und Vorbereitung wird 2 Minuten gewartet. Dann wird die SSD, welche bei mir als Systemlaufwerk im Einsatz ist unddaher zu ~75% belegt ist, mit einer ~18GB großen Filmdatei bis zum Rand befüllt (Quellaufwerk ist das RAID5). Als Kopierprogramm wird SuperCopier verwendet. Die dafür benötigte Zeit wird gestoppt (http://jumk.de/stoppuhr/) und die Schreibgeschwindigkeit wird mit dem Process Explorer der Sysinternals Suite überwacht.
Wurde der Film kopiert, wird er gelöscht (hier sollte TRIM einsetzten) und 2 Minuten gewartet, bevor der ganze Film nocheinmal kopiert wird.
Nach diesem 2ten Kopiervorgang wird TRIM OS-seitig über die Shell deaktiviert (fsutil behavior set DisableDeleteNotify 1). Danach wird der Film gelöscht und 2 Minuten gewartet, bevor die SSD erneut befüllt wird. Mit dieser Methode stellt man sicher, dass kein TRIM-Signal mehr an die SSD/den SATA-Controller-Treiber gesendet wird. Ohne die Deaktivierung von TRIM wird das Signal zwar gesendet, ob das der Treiber (von Marvell) jedoch an die SSD weiterreicht, ist ungewiss.
Damit ist der Marvell durchgetestet. Jetzt ist der PCH dran. Vorher wird aber mit der Intel Toolbox manuell getrimt. Somit kann man sich das 1. kopieren & löschen sparen, welches nur dazu dient, TRIM auszulösen, da die Toolbox die SSD, hängt sich am Marvell, nicht trimen kann.
Jetzt aber die Ergebnisse:
Die Ergebnisse sind hier als Diagramme, die die Schreibgeschwindigkeit während des Befüllens zeigen, zu sehen.
Ich habe, um die Ergebnisse festzuhalten, immer einen Screenshot über die gesamte Auflösung gemacht. Der Übersichtlichkeit wegen gibts also nicht direkt die Originalansicht meines Desktops, sondern nur auf Wunsch per Klick auf "Vollbild Desktop Screen", direkt unter dem jeweiligen Diagramm. Dort finden sich die anderen Informationen wie die gestoppte Zeit, Füllstand der SSD usw.
SSD@Marvell
1. Erstes Befüllen
Vollbild Desktop Screen
Dauer Kopiervorgang: 5:35 Minuten; 54 MB/s durchschnittliche Schreibgeschwindigkeit
Die Schreibrate hat schon in der ersten Hälfte einige Einbrüche. Komisch, denn die SSD wurde ja vor dem Anschließen an den Marvell-Controller ständig durch den Intel PCH getrimed. In der zweiten Hälfte bricht die Schreibgeschwindigkeit um die Hälfte ein und zum Schluss sogar noch weiter.
2. Zweites Befüllen (hat TRIM gewirkt?)
Vollbild Desktop Screen
Dauer Kopiervorgang: 4:58 Minuten; 60,6 MB/s durchschnittliche Schreibgeschwindigkeit
Die Schreibleistung bleibt konstant, bis zur zweiten Hälfte. Danach ist es eine Berg- und Talfahrt. Dennoch braucht die SSD 37Sekunden weniger Zeit. Ob TRIM tatsächlich ausgelöst wurde? Ein Vergleich mit dem PCH wurde guttun. Dieser folgt gleich, aber davor wird der Marvell mit deaktiviertem TRIM getestet.
3. Drittes Befüllen (Die Performance ohne TRIM)
Vollbild Desktop Screen
Dauer Kopiervorgang: 6:02 Minuten; 49,8 MB/s durchschnittliche Schreibgeschwindigkeit
Ohne TRIM performt die SSD am Marvell am schlechtesten.
SSD@PCH
1. Erstes Befüllen (hat TRIM gewirkt? )
Vollbild Desktop Screen
Dauer Kopiervorgang: 4:03 Minuten; 74 MB/s durchschnittliche Schreibgeschwindigkeit
Natürlich wurde getrimt, denn Intel unterstützt das Trimen ja seit langer Zeit und einigen Treiber-Versionen, auch wenn der PCH im RAID-Mode läuft. Die SSD darf nur kein Teil eines Raid-Verbunds sein. Man sieht daher eine gleichmäßig Schreibperformance. Der Leistungsabfall im Letzten Teil liegt wahrscheinlich mit hohen Füllstand zusammen. Ist eine SSD fasst vollständig gefüllt, verliert sie an Schreibleistung.
Vergleicht man nun diese Ergebnis mit des Marvells ("2. Zweites Befüllen (hat TRIM gewirkt?)"), fällt auf, dass der Marvell mehr Einbrüche zu verzeichnen hat. Aus diesem Ergebnis heraus auf fehlende TRIM Unterstützung zu schließen, halte ich aber für falsch, da die Ergebnisse doch eine gewisse Ähnlichkeit haben.
2. Befüllen ohne TRIM
Vollbild Desktop Screen
Dauer Kopiervorgang: 5:17 Minuten; 57 MB/s durchschnittliche Schreibgeschwindigkeit
Ohne TRIM kommt es erwartungsgemäß zu Performanceeinbrüchen. Diese treten quasi während des ganzen Kopiervorgangs auf, am Anfang jedoch nicht so stark wie im zur Mitte und Schluss. Die Performance ist etwas besser des Marvells mit deaktiviertem TRIM. Das lässt sich wahrscheinlich durch die allgemein schwächere Leistung des Marvells erklären.
Interpretation der Ergebnisse:
Die Deutung der Messwerte finde ich nicht einfach. Denn der Intel-PCH ist generell schneller als der Marvell-Controller. Somit kann man nicht einfach die Dauer der Kopiervorgänge vergleichen, und auf fehlendes oder vorhandes TRIM bei Marvell schließen. Beispielsweise schreibt der Intel mit TRIM off mit 57 MB/s, der Marvel jedoch nur mit 50 MB/s. In diesem Moment wird von beiden Controllern kein TRIM an die SSD weitergeleitet und dennoch ist die Schreibrate unterschiedlich.
Stellt man die Unterschied der Testergebnisse prozentual dar, erreicht der Marvell 8 bzw 20% mehr Leistung durch aktiviertes TRIM. Bei Intel sind es 30%.
Marvell
1. Test: 54 MB/s entsprechen 108%
2. Test: 60 MB/s entsprechen 120%
3. Test (Trim off) 50 MB/s entsprechen 100%
Intel
1. Test: 74 MB/s entsprechen 130%
2. Test: 57 MB/s entsprechen 100%
Wie man sieht, profitiert Marvell durch aktiviertes TRIM! Oder liegt es garnicht daran?
Was denkt ihr?
Tante Big Edit
Die ersten Testergebnisse waren doch nicht so eindeutig, als das sie genaue Rückschlüsse zuliesen. Aktiviertes TRIM des OS lies beide SATA Controller schneller schreiben, jedoch gab es starke Schwankungen der Messergebnisse. Der Marvell Controller war mit TRIM einmal 8%, dann wieder 20% schneller als ohne TRIM. Zudem war der Intel gleich 30% schneller.
Da die SSD bereits vorm' Befüllen zu 75% belegt war, musste sie während dem Vollschreiben immer mehr Daten schreiben, als neue dazugekommen sind. Viele Blöcke, die nur teilweise mit Nutzdaten gefüllt waren, wurden erst durch das Befüllen mit den neu hinzukommenden Daten der Filmdatei, komplett aufgefüllt. Waren die Pages der Blöcke ohne Nutzdaten nicht schon vor dem Befüllen gelöscht, so kam es zu dem aufwändigen Read-Delete-Modify-Write. Die Daten des zu beschreibenden Blockes wurden also in den Cache gelesen, der Block wurde gelöscht und erst dann wurden die Filmdaten + die bereits vorhandenen Nutzdaten wieder auf die leeren Pages geschrieben und haben somit den Block diesmal komplett aufgefüllt. Zu dem kopierten Film mussten also viele bereits vorhandene Daten nochmal neu geschrieben werden. Manchmal mehr (zB. Blockinhalt: 25%Nutzdaten, 75% frei), manchmal weniger (zB.75%Nutzdaten, 25% frei), denn der Füllstand ist von Block zu Block unterschiedlich (Prozentangaben sind frei erfunden, nur zur Verdeutlichung). Nach jedem Löschen der Filmdatei wurden die Daten durch die GC & das Wear-Leveling bestimmt wieder umsortiert. Das alles führte dann zu den Performanceschwankungen.
Soweit meine Auffassung Holt wird mich bestimmt korrigieren, sollte es Denkfehler geben.
Das ganze lässt sich aber umgehen, indem man eine "leere" SSD nimmt. Dadurch gibt es beim Befüllen entweder nur gelöschte Pages, also nur komplett freie Blöcke, oder eben, sollte das TRIM Kommando nicht ankommen, nur Blöcke, mit ungültigen Daten, welche erst beim Überschreiben gelöscht werden. Letzteres wäre dann einfaches Delete-Write, welches das Beschreiben etwas bremsen sollte, aber nicht stark. Sind die Pages/Blöcke frei, schreibt die SSD sofort auf den Flash. Sind noch ungültige Daten vorhanden, wird der Block vorher gesäubert durch ein Erase. Das Erase eines Blockes dauert nicht lange, in nur wenigen Millisekunden ist ein 512KB-Block der X25-M gelöscht. (In diesem Artikel von Anandtech aus 2009 sind es 2ms für MLC). Die Schreibgeschwindigkeit ohne TRIM sollte dadurch etwas leiden, aber nicht zu stark. Das wichtigste an diesem Versuch ist aber, dass jeder Test-Durchgang des selben Typs (TRIM ON bzw. TRIM OFF) von der Dauer und somit auch in der durchschnittlichen Schreibgeschwindigkeit quasi identisch sein sollte.
Auch die Einbrüche der Schreibrate wie hier sollten nicht mehr vorkommen.
Somit sollte sich diesmal ein klares Bild ergeben.
Soweit die Theorie und Analyse.
Auf zum Test Nr. 2
Das Testsystem:
hat sich etwas Verändert. Veränderungen in Rot.
Nicht das alle diese Veränderungen für das Testergebnis relevant wären, aber der Transparenz halber führe ich sie hier dennoch alle auf.
OS:Win 7 Prof x64@WD Scorpio Black (WD7500BPKT)
CPU:i5-750 Rev B1 BLCK@160Mhz, Stromsparmechanismen aktiv (C-States & EIST)
MB: GA-P55-UD3 Rev. 1 BIOS-Ver: F9
RAM: 12 GB DDR3-1333 CL 9 (Kanalbelegung: Channel A & B: jeweils 1x2GB & 1x4GB)
SSD: X25-M G2 80GB FW: 02M3
HDD: 5x hd204ui Raid 5
SATA-Controller:
Die veränderte Testmethodik:
1. Befüllen (secure erased, TRIM ON, @PCH)
Die SSD (am PCH) wird also mit einem Secure Erase komplett gelöscht und anschließend wird eine einzige Partition, über die gesamte verfügbare Kapazität angelegt, welche dann mit 2 BluRay-Isos & einer kleinen FLV-Datei befüllt wird (freier Speicher: 732KB). TRIM ist an.
Quelllaufwerk der Dateien ist wieder das Raid. Windows wird von der Western Digital ausgeführt, welche zu diesem Zeitpunkt am Marvell hängt, denn das Raid5 belegt mit der SSD zusammen alle nativen SATA-Slots des P55. Die Zeit wird gestoppt. Process Explorer zeigt den Transfer als Diagramm. Die Richtigkeit meiner Messungen/Berechnung kann anhand der Desktop Screenshots überprüft werden -> Downloadlink
Kommentar: Mit fast gleich bleibender Geschwindigkeit geschrieben. Keine Performance-Täler.
2. Befüllen (TRIM ON, @PCH)
Die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben.
Kommentar: Selbes bild wie bei 1. Nur ein kurzer Einbruch, dessen Ursache ungewiss ist. Aber ansonsten deckt sich das Ergebnis mit den Erwartungen. Da nach dem Löschen der Dateien TRIM eingesetzt hat wurden alle Blöcke restlos geleert, und die SSD konnte wieder mit Fullspeed beschrieben werden.
3. Befüllen (TRIM OFF, @PCH)
TRIM wird deaktiviert, die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben.
Kommentar: Die Kurve ist genauso gerade wie mit TRIM, aber sie liegt tiefer. Wie erwartet. Die Blöcke werden zwar erst unmittelbar vor dem Beschreiben geleert, aber keine alten Daten müssen in den Cache geholt werden bzw dann auch wieder auf den Flash zurückgeschrieben werden. Das Resultat des deaktiviertem TRIM und unmittelbarem löschen der Blöcke ist also eine um 3-4 MB/s verminderte Schreibleistung / ein 46 Sekunden längerer Kopiervorgang. Anfangs kann die SSD wahrscheinlich noch den Spare nutzen, um leere Blöcke direkt zu beschreiben. Dieser Bereich macht aber nur einen Bruchteil der verlangten Kapazität aus, weshalb wie eben bereits festgestellt, die Schreibleistung sinken muss, da viele Blöcke, welche direkt vom Nutzer ansprechbar sind, dennoch erst vor dem Beschreiben gelöscht werden.
4. Befüllen (TRIM OFF, @PCH)
Die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben. TRIM ist immer noch aus.
Kommentar: Das selbe Spiel wie bei Punkt 4. Da TRIM immer noch aus ist und im Prinzip der selbe technische Ablauf wie bei 4. wiederholt wird, auch nicht weiter verwunderlich. Dauer & Geschwindigkeit sind quasi gleichwertig wie bei 4.
5. Befüllen (TRIM ON, @PCH)
TRIM wird wieder angeschaltet, die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben.
Kommentar: Und somit ist die Schreibgeschwindigkeit wieder so hoch wie vorher. Der mysteriöse Einbruch ist wieder da. Naja, was soll man dazu sagen
Nun wird die SSD, nach einem Secure Erase, an den Marvell angeschlossen. Die Western Digital wandert an den PCH, wo zuvor die SSD dran hing.
Diesmal verzichte ich auf einige Diagramme, da sie nicht von den bisherigen Unterscheiden und somit nur Platz verschwenden. Stattdessen wird habe ich die Miniaturansicht verwendet, welche mit klick auf die Großansicht leitet.
1. Befüllen (TRIM ON, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
Anschließend wird die SSD befüllt. TRIM ist an, immer noch.
Kommentar: Der Marvell schreibt minimal langsamer als der Intel. soweit so gut.
2. Befüllen (TRIM ON, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
Die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben. TRIM ist an.
Kommentar: Die Leistung bleibt erhalten. Ein gutes Zeichen für die Existenz der TRIM-Fähigkeit des Marvell-Treibers. Bleibt die Leistungs weiterhin bestehen?
3. Befüllen (TRIM ON, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
Die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben. TRIM ist an.
Kommentar: Ja, die Leistung bleibt bestehen. TRIM ist da Wie sieht es mit OS-setitig deaktiviertem TRIM aus?
4. Befüllen (TRIM OFF, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
TRIM wird deaktiviert, die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben
Kommentar: Man sieht mehr (Zitat mit Dauer & Speed) oder weniger deutlich (Diagramm) einen kleinen, aber deutlichen Leistungsverlust durch deaktiviertes TRIM. Wird TRIM nun wieder aktiviert, sollte die Leistung wiederhergestellt sein.
5. Befüllen (TRIM ON, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
TRIM wird wieder aktiviert, die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben
Kommentar: Und so ist es auch. Zur Verifizierung folgen noch zwei Durchläufe.
6. Befüllen (TRIM ON, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
Die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben
Kommentar: Leistung satt dank TRIM
7. Befüllen (TRIM OFF, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
TRIM wird wieder deaktiviert, die zuvor kopierten Dateien werden gelöscht und nach 21:13 Minuten erneut auf die SSD geschrieben (Hatte verpennt die Dateien rechtzeitig zu kopieren. Dieses Missgeschick hat aber keinen Einfluss auf das Ergebnis)
Kommentar: TRIM aus = langsamer
Zusammenfassung der Testergebnisse:
Endgültiges Fazit:
Ich denke diesmal kann man ein eindeutiges Fazit formulieren und mit Sicherheit sagen, dass der aktuelle Marvell-Treiber TRIM definitiv unterstützt. Ohne TRIM schreibt die SSD um 4,4% (Intel) bzw. 4,7% (Marvell) langsamer als mit. Durch nachträgliches aktivieren des TRIM normalisiert sich die Geschwindigkeit wieder. Beim Intel keine Überraschung, beim Marvell hat man nun endgültig Gewissheit. Vielleicht hättens auch weniger Diagramme und Messungen getan, aber ich wollte diesmal sicher gehen und mein Eifer war unbezwingbar
Anhang
Download Link Treiber: Marvell 88se91xx 1.2.0.1002 WHQL
Durch eine Anregung von Holt habe ich mich dazu entschlossen, abermals zu untersuchen, ob der Marvell 9120, sowie der Marvell Treiber Trim unterstützen. Im Netz findet man leider gegensätzliche Aussagen, eine kleine von mir durchgeführte Untersuchung lies mich auch annehmen, der Marvell Treiber könne TRIM. Ich hoffe dieser Test bringt etwas Klarheit.
PS: Wer nicht weiß, was es mit TRIM auf sich hat, liest sich am besten Holt's Erklärungsversuch durch.
Das Testsystem:
OS:Win 7 Prof x64
CPU:i5-750 Rev B1 BLCK@160Mhz, Stromsparmechanismen aktiv (C-States & EIST)
MB: GA-P55-UD3 Rev. 1 BIOS-Ver: F9
RAM: 12 GB DDR3-1333 CL 9 (Kanalbelegung: Channel A & B: jeweils 1x2GB & 1x4GB)
SSD: X25-M G2 80GB FW: 02M3
HDD: 5x hd204ui Raid 5
SATA-Controller:
- Asus U3S6 Rev 1 (Marvell 9120 FW: 1.0.0.28), Drive Cache Mode on
- P55@Raid-Mode FW: v9.5.0.1037
- Marvell mv91xx 1.2.0.1002 (vom 07.03.2011)
- Intel Rapid Storage Technology 10.1.0.1008
Die Testmethodik:
Die SSD wird vom PCH (ehemals Southbridge) des Mainboards genommen und an den Marvell-Controller angeschlossen. Nach dem Systemstart und Vorbereitung wird 2 Minuten gewartet. Dann wird die SSD, welche bei mir als Systemlaufwerk im Einsatz ist unddaher zu ~75% belegt ist, mit einer ~18GB großen Filmdatei bis zum Rand befüllt (Quellaufwerk ist das RAID5). Als Kopierprogramm wird SuperCopier verwendet. Die dafür benötigte Zeit wird gestoppt (http://jumk.de/stoppuhr/) und die Schreibgeschwindigkeit wird mit dem Process Explorer der Sysinternals Suite überwacht.
Wurde der Film kopiert, wird er gelöscht (hier sollte TRIM einsetzten) und 2 Minuten gewartet, bevor der ganze Film nocheinmal kopiert wird.
Nach diesem 2ten Kopiervorgang wird TRIM OS-seitig über die Shell deaktiviert (fsutil behavior set DisableDeleteNotify 1). Danach wird der Film gelöscht und 2 Minuten gewartet, bevor die SSD erneut befüllt wird. Mit dieser Methode stellt man sicher, dass kein TRIM-Signal mehr an die SSD/den SATA-Controller-Treiber gesendet wird. Ohne die Deaktivierung von TRIM wird das Signal zwar gesendet, ob das der Treiber (von Marvell) jedoch an die SSD weiterreicht, ist ungewiss.
Damit ist der Marvell durchgetestet. Jetzt ist der PCH dran. Vorher wird aber mit der Intel Toolbox manuell getrimt. Somit kann man sich das 1. kopieren & löschen sparen, welches nur dazu dient, TRIM auszulösen, da die Toolbox die SSD, hängt sich am Marvell, nicht trimen kann.
Jetzt aber die Ergebnisse:
Die Ergebnisse sind hier als Diagramme, die die Schreibgeschwindigkeit während des Befüllens zeigen, zu sehen.
Ich habe, um die Ergebnisse festzuhalten, immer einen Screenshot über die gesamte Auflösung gemacht. Der Übersichtlichkeit wegen gibts also nicht direkt die Originalansicht meines Desktops, sondern nur auf Wunsch per Klick auf "Vollbild Desktop Screen", direkt unter dem jeweiligen Diagramm. Dort finden sich die anderen Informationen wie die gestoppte Zeit, Füllstand der SSD usw.
SSD@Marvell
1. Erstes Befüllen
Vollbild Desktop Screen
Dauer Kopiervorgang: 5:35 Minuten; 54 MB/s durchschnittliche Schreibgeschwindigkeit
Die Schreibrate hat schon in der ersten Hälfte einige Einbrüche. Komisch, denn die SSD wurde ja vor dem Anschließen an den Marvell-Controller ständig durch den Intel PCH getrimed. In der zweiten Hälfte bricht die Schreibgeschwindigkeit um die Hälfte ein und zum Schluss sogar noch weiter.
2. Zweites Befüllen (hat TRIM gewirkt?)
Vollbild Desktop Screen
Dauer Kopiervorgang: 4:58 Minuten; 60,6 MB/s durchschnittliche Schreibgeschwindigkeit
Die Schreibleistung bleibt konstant, bis zur zweiten Hälfte. Danach ist es eine Berg- und Talfahrt. Dennoch braucht die SSD 37Sekunden weniger Zeit. Ob TRIM tatsächlich ausgelöst wurde? Ein Vergleich mit dem PCH wurde guttun. Dieser folgt gleich, aber davor wird der Marvell mit deaktiviertem TRIM getestet.
3. Drittes Befüllen (Die Performance ohne TRIM)
Vollbild Desktop Screen
Dauer Kopiervorgang: 6:02 Minuten; 49,8 MB/s durchschnittliche Schreibgeschwindigkeit
Ohne TRIM performt die SSD am Marvell am schlechtesten.
SSD@PCH
1. Erstes Befüllen (hat TRIM gewirkt? )
Vollbild Desktop Screen
Dauer Kopiervorgang: 4:03 Minuten; 74 MB/s durchschnittliche Schreibgeschwindigkeit
Natürlich wurde getrimt, denn Intel unterstützt das Trimen ja seit langer Zeit und einigen Treiber-Versionen, auch wenn der PCH im RAID-Mode läuft. Die SSD darf nur kein Teil eines Raid-Verbunds sein. Man sieht daher eine gleichmäßig Schreibperformance. Der Leistungsabfall im Letzten Teil liegt wahrscheinlich mit hohen Füllstand zusammen. Ist eine SSD fasst vollständig gefüllt, verliert sie an Schreibleistung.
Vergleicht man nun diese Ergebnis mit des Marvells ("2. Zweites Befüllen (hat TRIM gewirkt?)"), fällt auf, dass der Marvell mehr Einbrüche zu verzeichnen hat. Aus diesem Ergebnis heraus auf fehlende TRIM Unterstützung zu schließen, halte ich aber für falsch, da die Ergebnisse doch eine gewisse Ähnlichkeit haben.
2. Befüllen ohne TRIM
Vollbild Desktop Screen
Dauer Kopiervorgang: 5:17 Minuten; 57 MB/s durchschnittliche Schreibgeschwindigkeit
Ohne TRIM kommt es erwartungsgemäß zu Performanceeinbrüchen. Diese treten quasi während des ganzen Kopiervorgangs auf, am Anfang jedoch nicht so stark wie im zur Mitte und Schluss. Die Performance ist etwas besser des Marvells mit deaktiviertem TRIM. Das lässt sich wahrscheinlich durch die allgemein schwächere Leistung des Marvells erklären.
Interpretation der Ergebnisse:
Die Deutung der Messwerte finde ich nicht einfach. Denn der Intel-PCH ist generell schneller als der Marvell-Controller. Somit kann man nicht einfach die Dauer der Kopiervorgänge vergleichen, und auf fehlendes oder vorhandes TRIM bei Marvell schließen. Beispielsweise schreibt der Intel mit TRIM off mit 57 MB/s, der Marvel jedoch nur mit 50 MB/s. In diesem Moment wird von beiden Controllern kein TRIM an die SSD weitergeleitet und dennoch ist die Schreibrate unterschiedlich.
Stellt man die Unterschied der Testergebnisse prozentual dar, erreicht der Marvell 8 bzw 20% mehr Leistung durch aktiviertes TRIM. Bei Intel sind es 30%.
Marvell
1. Test: 54 MB/s entsprechen 108%
2. Test: 60 MB/s entsprechen 120%
3. Test (Trim off) 50 MB/s entsprechen 100%
Intel
1. Test: 74 MB/s entsprechen 130%
2. Test: 57 MB/s entsprechen 100%
Wie man sieht, profitiert Marvell durch aktiviertes TRIM! Oder liegt es garnicht daran?
Was denkt ihr?
Tante Big Edit
Die ersten Testergebnisse waren doch nicht so eindeutig, als das sie genaue Rückschlüsse zuliesen. Aktiviertes TRIM des OS lies beide SATA Controller schneller schreiben, jedoch gab es starke Schwankungen der Messergebnisse. Der Marvell Controller war mit TRIM einmal 8%, dann wieder 20% schneller als ohne TRIM. Zudem war der Intel gleich 30% schneller.
Da die SSD bereits vorm' Befüllen zu 75% belegt war, musste sie während dem Vollschreiben immer mehr Daten schreiben, als neue dazugekommen sind. Viele Blöcke, die nur teilweise mit Nutzdaten gefüllt waren, wurden erst durch das Befüllen mit den neu hinzukommenden Daten der Filmdatei, komplett aufgefüllt. Waren die Pages der Blöcke ohne Nutzdaten nicht schon vor dem Befüllen gelöscht, so kam es zu dem aufwändigen Read-Delete-Modify-Write. Die Daten des zu beschreibenden Blockes wurden also in den Cache gelesen, der Block wurde gelöscht und erst dann wurden die Filmdaten + die bereits vorhandenen Nutzdaten wieder auf die leeren Pages geschrieben und haben somit den Block diesmal komplett aufgefüllt. Zu dem kopierten Film mussten also viele bereits vorhandene Daten nochmal neu geschrieben werden. Manchmal mehr (zB. Blockinhalt: 25%Nutzdaten, 75% frei), manchmal weniger (zB.75%Nutzdaten, 25% frei), denn der Füllstand ist von Block zu Block unterschiedlich (Prozentangaben sind frei erfunden, nur zur Verdeutlichung). Nach jedem Löschen der Filmdatei wurden die Daten durch die GC & das Wear-Leveling bestimmt wieder umsortiert. Das alles führte dann zu den Performanceschwankungen.
Soweit meine Auffassung Holt wird mich bestimmt korrigieren, sollte es Denkfehler geben.
Das ganze lässt sich aber umgehen, indem man eine "leere" SSD nimmt. Dadurch gibt es beim Befüllen entweder nur gelöschte Pages, also nur komplett freie Blöcke, oder eben, sollte das TRIM Kommando nicht ankommen, nur Blöcke, mit ungültigen Daten, welche erst beim Überschreiben gelöscht werden. Letzteres wäre dann einfaches Delete-Write, welches das Beschreiben etwas bremsen sollte, aber nicht stark. Sind die Pages/Blöcke frei, schreibt die SSD sofort auf den Flash. Sind noch ungültige Daten vorhanden, wird der Block vorher gesäubert durch ein Erase. Das Erase eines Blockes dauert nicht lange, in nur wenigen Millisekunden ist ein 512KB-Block der X25-M gelöscht. (In diesem Artikel von Anandtech aus 2009 sind es 2ms für MLC). Die Schreibgeschwindigkeit ohne TRIM sollte dadurch etwas leiden, aber nicht zu stark. Das wichtigste an diesem Versuch ist aber, dass jeder Test-Durchgang des selben Typs (TRIM ON bzw. TRIM OFF) von der Dauer und somit auch in der durchschnittlichen Schreibgeschwindigkeit quasi identisch sein sollte.
Auch die Einbrüche der Schreibrate wie hier sollten nicht mehr vorkommen.
Somit sollte sich diesmal ein klares Bild ergeben.
Soweit die Theorie und Analyse.
Auf zum Test Nr. 2
Das Testsystem:
hat sich etwas Verändert. Veränderungen in Rot.
Nicht das alle diese Veränderungen für das Testergebnis relevant wären, aber der Transparenz halber führe ich sie hier dennoch alle auf.
OS:Win 7 Prof x64@WD Scorpio Black (WD7500BPKT)
CPU:i5-750 Rev B1 BLCK@160Mhz, Stromsparmechanismen aktiv (C-States & EIST)
MB: GA-P55-UD3 Rev. 1 BIOS-Ver: F9
RAM: 12 GB DDR3-1333 CL 9 (Kanalbelegung: Channel A & B: jeweils 1x2GB & 1x4GB)
SSD: X25-M G2 80GB FW: 02M3
HDD: 5x hd204ui Raid 5
SATA-Controller:
- Asus U3S6 Rev 1 (Marvell 9120 FW: 1.0.0.28), Drive Cache Mode on
- P55@Raid-Mode FW: v10.5.0.916
- Marvell mv91xx 1.2.0.1002 (vom 07.03.2011)
- Intel Rapid Storage Technology 10.5.0.1015
Die veränderte Testmethodik:
1. Befüllen (secure erased, TRIM ON, @PCH)
Die SSD (am PCH) wird also mit einem Secure Erase komplett gelöscht und anschließend wird eine einzige Partition, über die gesamte verfügbare Kapazität angelegt, welche dann mit 2 BluRay-Isos & einer kleinen FLV-Datei befüllt wird (freier Speicher: 732KB). TRIM ist an.
Quelllaufwerk der Dateien ist wieder das Raid. Windows wird von der Western Digital ausgeführt, welche zu diesem Zeitpunkt am Marvell hängt, denn das Raid5 belegt mit der SSD zusammen alle nativen SATA-Slots des P55. Die Zeit wird gestoppt. Process Explorer zeigt den Transfer als Diagramm. Die Richtigkeit meiner Messungen/Berechnung kann anhand der Desktop Screenshots überprüft werden -> Downloadlink
Dauer Kopiervorgang: 15:17 Min:Sek
Mittlere Schreibgeschwindigkeit: 83,12 MB/s
Kommentar: Mit fast gleich bleibender Geschwindigkeit geschrieben. Keine Performance-Täler.
2. Befüllen (TRIM ON, @PCH)
Die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben.
Dauer Kopiervorgang: 15:15 Min:Sek
Mittlere Schreibgeschwindigkeit: 83,31 MB/s
Kommentar: Selbes bild wie bei 1. Nur ein kurzer Einbruch, dessen Ursache ungewiss ist. Aber ansonsten deckt sich das Ergebnis mit den Erwartungen. Da nach dem Löschen der Dateien TRIM eingesetzt hat wurden alle Blöcke restlos geleert, und die SSD konnte wieder mit Fullspeed beschrieben werden.
3. Befüllen (TRIM OFF, @PCH)
TRIM wird deaktiviert, die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben.
Dauer Kopiervorgang: 16:01 Min:Sek
Mittlere Schreibgeschwindigkeit: 79,32 MB/s
Kommentar: Die Kurve ist genauso gerade wie mit TRIM, aber sie liegt tiefer. Wie erwartet. Die Blöcke werden zwar erst unmittelbar vor dem Beschreiben geleert, aber keine alten Daten müssen in den Cache geholt werden bzw dann auch wieder auf den Flash zurückgeschrieben werden. Das Resultat des deaktiviertem TRIM und unmittelbarem löschen der Blöcke ist also eine um 3-4 MB/s verminderte Schreibleistung / ein 46 Sekunden längerer Kopiervorgang. Anfangs kann die SSD wahrscheinlich noch den Spare nutzen, um leere Blöcke direkt zu beschreiben. Dieser Bereich macht aber nur einen Bruchteil der verlangten Kapazität aus, weshalb wie eben bereits festgestellt, die Schreibleistung sinken muss, da viele Blöcke, welche direkt vom Nutzer ansprechbar sind, dennoch erst vor dem Beschreiben gelöscht werden.
4. Befüllen (TRIM OFF, @PCH)
Die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben. TRIM ist immer noch aus.
Dauer Kopiervorgang: 15:57 Min:Sek
Mittlere Schreibgeschwindigkeit: 79,65 MB/s
Kommentar: Das selbe Spiel wie bei Punkt 4. Da TRIM immer noch aus ist und im Prinzip der selbe technische Ablauf wie bei 4. wiederholt wird, auch nicht weiter verwunderlich. Dauer & Geschwindigkeit sind quasi gleichwertig wie bei 4.
5. Befüllen (TRIM ON, @PCH)
TRIM wird wieder angeschaltet, die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben.
Dauer Kopiervorgang: 15:18 Min:Sek
Mittlere Schreibgeschwindigkeit: 83,03 MB/s
Kommentar: Und somit ist die Schreibgeschwindigkeit wieder so hoch wie vorher. Der mysteriöse Einbruch ist wieder da. Naja, was soll man dazu sagen
Nun wird die SSD, nach einem Secure Erase, an den Marvell angeschlossen. Die Western Digital wandert an den PCH, wo zuvor die SSD dran hing.
Diesmal verzichte ich auf einige Diagramme, da sie nicht von den bisherigen Unterscheiden und somit nur Platz verschwenden. Stattdessen wird habe ich die Miniaturansicht verwendet, welche mit klick auf die Großansicht leitet.
1. Befüllen (TRIM ON, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
Anschließend wird die SSD befüllt. TRIM ist an, immer noch.
Dauer Kopiervorgang: 15:32 Min:Sek
Mittlere Schreibgeschwindigkeit: 81,79 MB/s
Kommentar: Der Marvell schreibt minimal langsamer als der Intel. soweit so gut.
2. Befüllen (TRIM ON, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
Die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben. TRIM ist an.
Dauer Kopiervorgang: 15:26 Min:Sek
Mittlere Schreibgeschwindigkeit: 82,32 MB/s
Kommentar: Die Leistung bleibt erhalten. Ein gutes Zeichen für die Existenz der TRIM-Fähigkeit des Marvell-Treibers. Bleibt die Leistungs weiterhin bestehen?
3. Befüllen (TRIM ON, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
Die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben. TRIM ist an.
Dauer Kopiervorgang: 15:33 Min:Sek
Mittlere Schreibgeschwindigkeit: 81,70 MB/s
Kommentar: Ja, die Leistung bleibt bestehen. TRIM ist da Wie sieht es mit OS-setitig deaktiviertem TRIM aus?
4. Befüllen (TRIM OFF, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
TRIM wird deaktiviert, die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben
Dauer Kopiervorgang: 16:13 Min:Sek
Mittlere Schreibgeschwindigkeit: 78,34 MB/s
Kommentar: Man sieht mehr (Zitat mit Dauer & Speed) oder weniger deutlich (Diagramm) einen kleinen, aber deutlichen Leistungsverlust durch deaktiviertes TRIM. Wird TRIM nun wieder aktiviert, sollte die Leistung wiederhergestellt sein.
5. Befüllen (TRIM ON, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
TRIM wird wieder aktiviert, die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben
Dauer Kopiervorgang: 15:24 Min:Sek
Mittlere Schreibgeschwindigkeit: 82,49 MB/s
Kommentar: Und so ist es auch. Zur Verifizierung folgen noch zwei Durchläufe.
6. Befüllen (TRIM ON, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
Die zuvor kopierten Dateien werden gelöscht und nach 5 Minuten erneut auf die SSD geschrieben
Dauer Kopiervorgang: 15:34 Min:Sek
Mittlere Schreibgeschwindigkeit: 81,61 MB/s
Kommentar: Leistung satt dank TRIM
7. Befüllen (TRIM OFF, @marvell, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL)
TRIM wird wieder deaktiviert, die zuvor kopierten Dateien werden gelöscht und nach 21:13 Minuten erneut auf die SSD geschrieben (Hatte verpennt die Dateien rechtzeitig zu kopieren. Dieses Missgeschick hat aber keinen Einfluss auf das Ergebnis)
Dauer Kopiervorgang: 16:17 Min:Sek
Mittlere Schreibgeschwindigkeit: 78,02 MB/s
Kommentar: TRIM aus = langsamer
Zusammenfassung der Testergebnisse:
Intel PCH
nach secure erase 15:17 83,12 MB/s
2tes Befüllen TRIM ON 15:15 83,31 MB/s
3tes, TRIM OFF 16:01 79,32 MB/s
4tes, TRIM OFF 15:57 79,65 MB/s
5tes, TRIM ON 15:18 83,03 MB/s
Durchschnitt TRIM ON 15:16 83,15 MB/s entsprechen 105% oder 100%
Durchschnitt TRIM OFF 15:59 79,49 MB/s entsprechen 100% oder 95,6%
Marvell 9120, Treiber: Marvell 88se91xx 1.2.0.1002 WHQL
nach secure erase 15:32 81,79 MB/s
2tes, TRIM ON 15:26 82,32 MB/s
3tes, TRIM ON 15:33 81,70 MB/s
4tes, TRIM OFF 16:13 78,34 MB/s
5tes, TRIM ON 15:24 82,49 MB/s
6tes, TRIM ON 15:34 81,61 MB/s
7tes, TRIM OFF 16:17 78,02 MB/s
Durchschnitt TRIM ON 15:30 81,98 MB/s entsprechen 105% oder 100%
Durchschnitt TRIM OFF 16:15 78,18 MB/s entsprechen 100% oder 95,3%
Endgültiges Fazit:
Ich denke diesmal kann man ein eindeutiges Fazit formulieren und mit Sicherheit sagen, dass der aktuelle Marvell-Treiber TRIM definitiv unterstützt. Ohne TRIM schreibt die SSD um 4,4% (Intel) bzw. 4,7% (Marvell) langsamer als mit. Durch nachträgliches aktivieren des TRIM normalisiert sich die Geschwindigkeit wieder. Beim Intel keine Überraschung, beim Marvell hat man nun endgültig Gewissheit. Vielleicht hättens auch weniger Diagramme und Messungen getan, aber ich wollte diesmal sicher gehen und mein Eifer war unbezwingbar
Anhang
Download Link Treiber: Marvell 88se91xx 1.2.0.1002 WHQL
Anhänge
-
@MARV_TRIMoff_cut.jpg316 KB · Aufrufe: 751
-
@MARV_TRIMoff_Diagramm.jpg46 KB · Aufrufe: 6.238
-
@MARV_TRIMon_cut.jpg320,7 KB · Aufrufe: 768
-
!!MarvellDriverSettings.JPG38,2 KB · Aufrufe: 1.220
-
@MARV_TRIMon_Diagramm.jpg47,5 KB · Aufrufe: 6.161
-
@MARV_TRIMon2_cut.jpg318,6 KB · Aufrufe: 672
-
@MARV_TRIMon2_Diagramm.jpg41,9 KB · Aufrufe: 6.205
-
@PCH_TRIMoff_cut.jpg312,3 KB · Aufrufe: 698
-
@PCH_TRIMoff_Diagramm.jpg45,4 KB · Aufrufe: 6.164
-
@PCH_TRIMon_cut.jpg310,4 KB · Aufrufe: 673
-
@PCH_TRIMon_Diagramm.jpg34,2 KB · Aufrufe: 6.161
-
@MARV1_TRIMon_SecureErased_Diagramm.jpg55,9 KB · Aufrufe: 6.029
-
@MARV2_TRIMon_2teBefüllung_Diagramm.jpg53,7 KB · Aufrufe: 5.999
-
@MARV4_TRIMoff_4teBefüllung_Diagramm.jpg60,7 KB · Aufrufe: 6.000
-
@MARV5_TRIMon_5teBefüllung_Diagramm.jpg55,7 KB · Aufrufe: 6.072
-
@PCH1_TRIMon_SecureErased_Diagramm.jpg56 KB · Aufrufe: 5.998
-
@PCH2_TRIMon_2teBefüllung_Diagramm.jpg56,5 KB · Aufrufe: 6.042
-
@PCH3_TRIMoff_3teBefüllung_Diagramm.jpg60,1 KB · Aufrufe: 6.013
-
@PCH4_TRIMoff_4teBefüllung_Diagramm.jpg54,2 KB · Aufrufe: 6.044
-
@PCH5_TRIMon_5teBefüllung_Diagramm.jpg51,5 KB · Aufrufe: 6.051
Zuletzt bearbeitet: