Windows 10

Flexible I/O-Tester für spezifische Benchmarks

20.11.2019 von Thomas Rieske
Wer Tests durchführt, für die mit einer konstanten Datenrate auf ein Medium geschrieben werden muss, kann nicht die bekannten Lösungen, wie CrystalDiskMark, nutzen. Denn diese schreiben immer mit der maximal möglichen Geschwindigkeit. Ein Gratis-Tool schafft Abhilfe. Es ist äußerst mächtig, benötigt aber einige Einarbeitungszeit.

Für wen ist das Tool nützlich

Tester, die eine konstante Geschwindigkeit benötigen, etwa um die Performance zu überprüfen oder einen Bug zu reproduzieren, sollte einen Blick auf fio (Flexible I/O Tester) werfen. Das kostenlose Kommandozeilen-Werkzeug ist für Windows und Linux verfügbar.

Windows 10 - Flexible I/O-Tester für spezifische Benchmarks
Fio - Flexible I/O Tester
Fio ist ein Kommandozeilen-Tool, das Windows und etliche Linux-Distributionen unterstützt.
Fio - Flexible I/O Tester
Für Ubuntu zum Beispiel steht fio als Paket im Universe-Repository zur Verfügung.
Fio - Flexible I/O Tester
Die Windows-Binaries stellt Rebecca Cran auf Ihrer Webseite als ZIP-Archiv und MSI-Installer zum Download bereit.
Fio - Flexible I/O Tester
Wählen Sie die jeweilige Datei für Ihre Plattform (x86 oder x64), und laden Sie sie herunter.
Fio - Flexible I/O Tester
Haben Sie sich für das MSI-File entschieden, starten Sie es per Doppelklick oder über das Kontextmenü.
Fio - Flexible I/O Tester
Unter Windows 10 verhindert per Default zunächst SmartScreen das Setup. Erst nach einem Klick auf „Trotzdem ausführen“ geht es weiter.
Fio - Flexible I/O Tester
Fio ist freie Software, die nicht nur kostenlos genutzt werden, sondern gemäß der GNU GPL auch modifiziert und weiterverteilt werden darf.
Fio - Flexible I/O Tester
Die nachfolgende UAC-Rückfrage beantworten Sie mit Klick auf den Ja-Button.
Fio - Flexible I/O Tester
Die Installationsroutine sieht keine weiteren Eingreifmöglichkeiten vor und kopiert anschließend die benötigten Dateien automatisch auf Ihren Computer.
Fio - Flexible I/O Tester
Öffnen Sie nun eine Eingabeaufforderung und navigieren zum Programmverzeichnis. Bei der x64-Variante des Tools finden Sie es unter „C:\Program Files\fio“.
Fio - Flexible I/O Tester
Fio ist ein reines Kommandozeilen-Werkzeug, das mithilfe von Parametern gesteuert wird.
Fio - Flexible I/O Tester
Wer sich mit der spartanischen Hilfe der Befehlszeile nicht anfreunden kann, findet im mitgelieferten Howto-File eine ausführlichere Darstellung der zahlreichen Optionen mit Beispielen.
Fio - Flexible I/O Tester
Die Job Files, die sich für umfangreichere Test-Setups eignen, müssen Sie nicht von Grund auf neu schreiben. Etliche Beispiele sind im Unterordner „examples“ enthalten.
Fio - Flexible I/O Tester
Diese Konfigurationsdateien lassen sich mit einem beliebigen Text-Editor öffnen und gegebenenfalls anpassen.
Fio - Flexible I/O Tester
Sie können für kleinere Tests die Parameter auch direkt in der Eingabeaufforderung angeben. Aufpassen müssen Sie beim Laufwerksbuchstaben unter Windows, für den Escape-Sequenzen notwendig sind.

Download-Optionen

Die Sources finden Sie auf der Github-Seite des Programmautors. Für die bekannteren Linux-Distributionen (etwa Ubuntu, Debian und Red Hat) sind die Binaries in den offiziellen oder Community-Repositories enthalten.

Die fio-Binaries für Windows stellt Rebecca Cran auf ihrer Website bereit. Dort finden Sie separate Pakete für x86 und x64, jeweils als ZIP-Datei zum Selbstentpacken und als MSI-Installer. Wenn Sie sich für das Setup via MSI-File entscheiden, müssen Sie darauf gefasst sein, dass der Windows Defender SmartScreen den Start einer unbekannten App moniert und Sie erst weitermachen lässt, wenn Sie auf die Schaltfläche Trotzdem ausführen klicken.

Nachdem Sie die Lizenzvereinbarung bestätigt und die UAC-Rückfrage mit Ja beantwortet haben, kopiert der Installer die notwendigen Dateien auf die Platte. Ändern können Sie den Programmpfad nicht, die Dateien landen bei der x64-Variante automatisch unter C:\Program Files\fio.

So arbeiten Sie mit dem Tool

Um mit dem Tool zu arbeiten, starten Sie eine Eingabeaufforderung und navigieren zum oben genannten Pfad. Der Aufruf von fio --help gibt eine schier endlose Liste von Parametern und Argumenten zurück. Daher empfiehlt sich zunächst die Lektüre der Howto-Datei im Programmordner von fio, die sehr detailliert die diversen Möglichkeiten des Utilitys erläutert. Im Unterordner examples finden sich darüber hinaus zahlreiche Beispiele für Job Files, mit denen Sie die I/O-Workloads nach Ihren Wünschen konfigurieren können.

Natürlich lassen sich die Parameter auch direkt in der Kommandozeile angeben, wenn das Test-Setup nicht zu komplex und umfangreich ist, wie im folgenden Beispiel:

fio --name=test --filename=e\:test1 --rw=write --size=512m --runtime=60s --rate=20M

Damit weisen Sie fio an, die Datei test1 auf Laufwerk E: ins Hauptverzeichnis zu schreiben. Die Größe der Datei beträgt 512 MByte, die Ausführungszeit 60 Sekunden, bei einer konstanten Datenrate von 20 MByte/s. Beachten Sie hierbei, dass Sie den Laufwerksbuchstaben als Escape-Sequenz angeben müssen, da der Flexible I/O Tester den Doppelpunkt normalerweise als Dateitrennzeichen interpretiert. (jd)