TKperf

Aus Thomas-Krenn-Wiki
Wechseln zu: Navigation, Suche

TKperf ist ein Tool zum Testen der Geschwindigkeit von Festplatten und SSDs und wird von der Thomas-Krenn.AG entwickelt. Das Tool erleichtert den Vergleich von verschiedenen Festplatten sowie von verschiedenen SSDs untereinander. TKperf liefert detaillierte Test-Reports, die auch eine umfangreiche Dokumentation des Test-Setups beinhalten. Auf Basis der Solid State Storage (SSS) Performance Test Specification (PTS) Enterprise v1.0 der Organisation SNIA[1] werden die SSD-Tests durchgeführt und mit Python aufbereitet.

Alle Tests verwenden im Hintergrund den Flexible IO Tester (Fio), die Konfiguration der Tests als auch die spätere Generierung der Grafiken wird wie bereits erwähnt von einem Python-Skript vorgenommen. Nähere Informationen, welche Möglichkeiten Fio bietet finden sich auch in dem Artikel Fio Grundlagen wieder. Einen kurzen Artikel zu TKperf finden Sie auch unter FIO (Flexible I/O Tester) Part7 – Steady State of SSD,NVMe,PCIe Flash with TKperf (tfindelkind.com).

TKperf logo.png

Im Thomas-Krenn Wiki sehen Sie sich am besten die Artikel der #Kategorie TKperf an!

Software-Anforderungen

  1. Fio Version 2.0.3[2] oder höher. Ältere Fio Versionen werden aufgrund einer anderen Minimalausgabe ("Terse Output") der Fio-Testergebnisse nicht unterstützt. Ab Terse Output Version 3 (Fio Version 2.0.3) enthält dieser Output weitere Parameter wie IOPS, die beim Parsen der Ergebnisse von TKperf verwendet werden. Wie die aktuelle Fio Version herunter geladen und kompiliert wird steht im Artikel Fio kompilieren geschrieben.
  2. hdparm - Mit hdparm werden zum einen Informationen über das zu testende Device erfragt, zum anderen wird ein SSD Secure Erase damit durchgeführt.
  3. sg3-utils - Mit den sg3-utils werden beim Testen von SAS Devices die Geräte-Informationen ausgelesen und ein Secure Erase durchgeführt.
  4. nvme-cli - Die nvme-cli Kommandozeilen-Tools verwalten beim Testen von NVME Devices die Geräte und führen ein Secure Erase durch.[3]
  5. fusion Tools - Die fusion Kommandozeilen-Tools werden zum Testen von Fusion Drives verwendet.
  6. rst2pdf - Die erstellte .rst Datei wird mit rst2pdf in ein PDF umgewandelt.

Download

TKperf kann direkt von GitHub bezogen werden:

GitHub Support

Fragen werden aktuell via GitHub beantwortet:

Installation

Nähere Informationen zur Installation befinden sich auch im Artikel TKperf Installation.

Ubuntu Repository

TKperf kann über das Thomas-Krenn Ubuntu Repo installiert werden (s.a. Thomas Krenn Ubuntu-Repo verwenden):

:~$ sudo apt-get install tkperf
[sudo] password for gschoenb: 
Reading package lists... Done
Building dependency tree
[...]

Manuell

:~/Downloads/tkperf$ git clone git://github.com/thomas-krenn/TKperf_v1.git .
Cloning into '.'...
remote: Counting objects: 914, done.
remote: Compressing objects: 100% (374/374), done.
remote: Total 914 (delta 549), reused 878 (delta 529)
Receiving objects: 100% (914/914), 180.49 KiB, done.
Resolving deltas: 100% (549/549), done.
:~/Downloads/tkperf$ sudo python setup.py install
running install
running build
[...]
:~/Downloads/tkperf$ tkperf -v
TKperf Version: 1.1 using fio: /usr/local/bin/fio, fio-2.0.13-16-g99db

Testlauf starten

$ screen
$ sudo tkperf ssd intel320 /dev/sda -nj 2 -iod 16 -rfb
!!!Attention!!!
All data on /dev/sda will be lost!
Are you sure you want to continue? (In case you really know what you are doing.)
Press 'y' to continue, any key to stop:
y
Starting SSD mode...
[...]

Nach dem Durchlauf der Tests kann der Restructured Text in ein pdf konvertiert werden:

$ rst2pdf intel320.rst


Test-Möglichkeiten

  • SSDs
    • IOPS-Test
    • Bandbreiten-Test
    • Latenz-Test
    • Sättings-Test (Write Saturation)
  • SSD RAID
    • IOPS-Test
    • Bandbreiten-Test
    • Latenz-Test
    • Sättings-Test (Write Saturation)
  • HDDs
    • IOPS-Test
    • Bandbreiten-Test

Generierte Grafiken

  • SSDs
    • Steady State Verification Plot: Belegt, dass sich die SSD in einem stabilen Zustand befindet.
    • Steady State Convergence Plot: Zeigt, wie sich relevante Variablen dem stabilen Zustand angenähert haben.
    • Measurement 2D und 3D Plots: Zeigen den Durchschnitt der gemessenen Werte im Measurement Window (stabiler Zustand).
    • Measurement Window Summary Table: Die Tabelle zeigt den Durchschnitt der gemessenen Werte im Measurement Window. Sie kann zum Nachschlagen der Werte in den 2D/3D Plots herangezogen werden. Die Tabelle ist keine eigene Grafik, sondern im PDF-Report enthalten.

Einzelnachweise

  1. Solid State Storage (SSS) Performance Test Specification (PTS) (snia.org)
  2. Fio Version 2.0.3 Release (freecode.com)
  3. nvme-cli Tools (gitub.com)


Foto Georg Schönberger.jpg

Autor: Georg Schönberger

Georg Schönberger, Abteilung DevOps bei der XORTEX eBusiness GmbH, absolvierte an der FH OÖ am Campus Hagenberg sein Studium zum Bachelor Computer- und Mediensicherheit, Studium Master Sichere Informationssysteme. Seit 2015 ist Georg bei XORTEX beschäftigt und arbeitet sehr lösungsorientiert und hat keine Angst vor schwierigen Aufgaben. Zu seinen Hobbys zählt neben Linux auch Tennis, Klettern und Reisen.


Das könnte Sie auch interessieren

SSD Performance mit TKperf vergleichen
SSD RAID Performance-Tests
TKperf Testabläufe