[[Vorlage(Baustelle, 30.12.2011, UbuntuFlo)]] [[Vorlage(Getestet, lucid, maverick)]] {{{#!vorlage Wissen [:Terminal: Ein Terminal öffnen] [:sudo: Root-Rechte] }}} [[Inhaltsverzeichnis(2)]] {{{#!vorlage hinweis Dieser Artikel ist Teil der Artikelserie '''[:SSD:]''', welche das Thema [wikipedia:Solid_State_Drive:Solid State Drives] behandelt. Aus diesem Grund werden in diesem Artikel Geschwindigkeitstests mit SSD beschrieben. Nutzer von herkömmlichen Festplatten (HDD) können die Befehle jedoch genauso anwenden.\\ Dieser Artikel geht in allen Beschreibungen davon aus, dass die SSD als '''/dev/sda''' im System eingebunden ist. Die Befehle müssen bei davon abweichenden Systemen daher gegebenenfalls angepasst werden. }}} [[Bild(Wiki/Icons/hd.png, 80, align=left)]] Um nachvollziehen zu können, ob eine Optimierung etwas gebracht oder das Gegenteil bewirkt hat, kann es helfen, die SSD einem Geschwindigkeitstest („Benchmark“) zu unterziehen. Dazu nutzt man den Befehl '''hdparm''' in einem Terminal [1] mit Root-Rechten [2] , welcher u.a. zwei Tests anbietet. = hdparm = Das Programm [wikipedia:Hdparm:hdparm] wird zum Lesen und Setzen von Parametern für ATA-Laufwerke genutzt. Es hat aber auch die angenehme Eigenschaft, die Lesegeschwindigkeit von Laufwerken testen zu können. {{{#!vorlage Hinweis Das Tool hdparm ist '''unabhängig''' vom (korrekten) [:SSD/Alignment:Partition Alignment] der SSD. }}} == Test 1 mit Cache == Der erste Test nutzt nur die Optionen `-t` ("Perform device read timings") und `-T` ("Perform cache read timings") und liest damit die Lesezeiten sowie die Cache-Lesezeiten aus: {{{#!vorlage befehl sudo hdparm -tT /dev/sda }}} Die Ausgabe sieht dann in etwa so aus: {{{/dev/sda: Timing cached reads: 6286 MB in 2.00 seconds = 3143.78 MB/sec Timing buffered disk reads: 838 MB in 3.00 seconds = 279.12 MB/sec }}} Aus dem [wikipedia:Cache:] liest diese SSD also mit etwa 3.140 Megabyte pro Sekunde. Aus dem [wikipedia:Puffer_(Informatik):Buffer] liest die SSD mit knappen 280 Megabyte pro Sekunde. == Test 2 ohne Cache == Der zweite Test nutzt ebenfalls die beiden Optionen `-t` und `-T`, setzt dazu aber noch die Option `--direct` („Use O_DIRECT to bypass page cache for timings“), was zum direkten Lesen unter Umgehung des Page Caches führt. In der Regel nutzt man den zweiten Test, da dieser nur den Datenfluss misst, den die SSD erreicht, um bestimmte Daten in zwei respektive drei Sekunden zu lesen. Der Befehl in einem Terminal [1] mit Root-Rechten [2] dazu lautet: {{{#!vorlage befehl sudo hdparm -tT --direct /dev/sda }}} Die Ausgabe sieht dann in etwa so aus: {{{/dev/sda: Timing O_DIRECT cached reads: 550 MB in 2.00 seconds = 275.01 MB/sec Timing O_DIRECT disk reads: 810 MB in 3.01 seconds = 269.24 MB/sec }}} Diese SSD liest in zwei Sekunden demnach 550 Megabyte und in drei Sekunden 810 Megabyte pro Sekunde, was Datenraten von etwa 275 MB bzw 269 MB entspricht. = dd == Um [:Shell/dd:] nutzen zu können, muss die zu überprüfende Partition eingehängt ([:mount:]) sein. Der Vorteil an dd ist, dass es sowohl die Lese- als auch die Schreibgeschwindigkeit des Laufwerkes testen kann. {{{#!vorlage Hinweis Im Gegensatz zu [#hdparm hdparm] ist dd '''abhängig''' von einem korrekten [:SSD/Alignment:Partition Alignment] der SSD. Hat man die SSD falsch oder schlecht ausgerichtet, so wirkt sich das auf die Tests aus, welche dann schlechter (lies: langsamer) ausfallen. }}} Um die Tests durchführen zu können, sollte man in ein Verzeichnis wechseln auf dem man Lese- und Schreibrechte hat und welches mindestens 1,1 Gigabyte freien Platz hat. Mit folgendem Befehl schreibt man eine temporäre Datei auf die SSD, um die Schreibgeschwindigkeit zu testen: {{{#!vorlage befehl dd if=/dev/zero of=tempfile bs=1M count=1024 conv=fdatasync,notrunc }}} Die Ausgabe sieht in etwa wie folgt aus: {{{1024+0 Datensätze ein 1024+0 Datensätze aus 1073741824 Bytes (1,1 GB) kopiert, 4,9835 s, 270 MB/s}}} Im nächsten Schritt löscht man den [wikipedia:Puffer_(Informatik):Buffer]-Cache, um die Lesegeschwindigkeit direkt von der SSD messen zu können. Da der „normale“ [:sudo:]-Befehl in diesem Fall nicht funktioniert, wechselt man mit folgendem Befehl im Terminal [1] in eine [:sudo#Rootshell:Rootshell] [2] : {{{#!vorlage befehl sudo -i }}} Nun kann man den Buffer-Cache löschen: {{{#!vorlage befehl echo 3 > /proc/sys/vm/drop_caches }}} Die Rootshell, welche nun nicht mehr gebraucht wird, beendet man mit dem Befehl {{{#!vorlage befehl exit }}} Der Cache ist gelöscht; nun folgt der Lesetest: {{{#!vorlage befehl dd if=tempfile of=/dev/null bs=1M count=1024 }}} Dieser gibt in etwa folgendes aus: {{{1024+0 Datensätze ein 1024+0 Datensätze aus 1073741824 Bytes (1,1 GB) kopiert, 0,276268 s, 3,9 GB/s}}} Nun ist der Buffer-Cache wieder gefüllt, so dass man die Geschwindigkeit dessen prüfen kann: {{{#!vorlage befehl dd if=tempfile of=/dev/null bs=1M count=1024 }}} Was wiederum folgendes ausgibt: {{{1024+0 Datensätze ein 1024+0 Datensätze aus 1073741824 Bytes (1,1 GB) kopiert, 0,277148 s, 3,9 GB/s}}} Man sollte dieses Kommando vier bis fünf Mal durchführen, um ein einigermaßen aussagekrätiges Ergebnis der [wikipedia:Puffer_(Informatik):Buffer]-Lese-Geschwindigkeit erhalten zu können. Zum Abschluss löscht man die temporär erstellte Datei mit dem Befehl: {{{#!vorlage befehl rm tempfile }}} = Laufwerksverwaltung = Das Tool „Laufwerksverwaltung“ (früher „Palimpsest“) befindet sich im [:GNOME:]-Menü unter ''"System -> Systemverwaltung -> Laufwerksverwaltung"'' und beinhaltet unter anderem einen Vergleichstest mit Lese- und Schreibtests. Näheres dazu steht unter [:Laufwerksverwaltung#Vergleichstest:]. {{{#!vorlage Hinweis Auch diese Tests sind '''unabhängig''' vom (korrekten) [:SSD/Alignment:Partition Alignment] der SSD. }}} = Links = * Informationen zu hdparm: * [sourceforge:hdparm:] * [wikipedia:Hdparm:hdparm] * Benchmarks mit SSD: * [http://www.anandtech.com/bench/SSD/65 anandtech.com: SSD Benchmarks] {en} * [https://wiki.archlinux.org/index.php/SSD_Benchmarking wiki.archlinux.org: SSD Benchmarking] {en} * [http://www.pcper.com/article.php?aid=736 pcper.com: SSD Decoder Ring - an SSD comparison guide (Rev 3.0)] {en} * [http://people.redhat.com/jmoyer/discard/ext4_batched_discard/ people.redhat.com: Test results presentation page] {en} ##tag: Netzwerk, Grafik, GNOME, Hardware, Wiki, Ubuntu, Internet, Emulation und Virtualisierung, System, Sicherheit, Shell, Übersicht, Installation, Community, Einsteiger, Server, Multimedia, Audioplayer, Videoplayer, Xfce, LXDE, Editor, unfreie Software, Desktop, Bildung, Edubuntu, Programmierung, Büro, Kommunikation, Paketverwaltung, KDE, LXDE, GPS, DVD, Barrierefreiheit, Spiele, USK0, USK6, USK12, USK16, USK18, Linux-Spiel, Windows-Spiel, Award