User Tools

Site Tools


kb:perftests

This is an old revision of the document!


Performance Tests

IO Performance Tests

Für IO Performance kann fio genutzt werden.

fio ist für die meisten Betriebssysteme verfügbar und kann daher genutzt werden um vergleichbare Ergebnisse zu bekommen.

#!/bin/bash
 
testfile="FIO-TESTFILE"
filesize=1G
 
echo "IOPS Write:"
fio --rw=randwrite --name=IOPS-write --bs=4k --iodepth=32\
    --direct=1 --filename=$testfile --numjobs=4 --ioengine=libaio\
    --refill_buffers --group_reporting --runtime=60 --time_based\
    --size=$filesize --output-format=json | jq .jobs[0].write.iops
 
echo "IOPS Read:"
fio --rw=randread --name=IOPS-read --bs=4k --iodepth=32\
    --direct=1 --filename=$testfile --numjobs=4 --ioengine=libaio\
    --refill_buffers --group_reporting --runtime=60 --time_based\
    --size=$filesize --output-format=json | jq .jobs[0].read.iops
 
echo "Throughput Write (kB/s):"
fio --rw=write --name=Throughput-write --bs=1024k --iodepth=32\
    --direct=1 --filename=$testfile --numjobs=4 --ioengine=libaio\
    --refill_buffers --group_reporting --runtime=60 --time_based\
    --size=$filesize --output-format=json | jq .jobs[0].write.bw
 
echo "Throughput Read (kB/s):"
fio --rw=read --name=Throughput-read --bs=1024k --iodepth=32\
    --direct=1 --filename=$testfile --numjobs=4 --ioengine=libaio\
    --refill_buffers --group_reporting --runtime=60 --time_based\
    --size=$filesize --output-format=json | jq .jobs[0].read.bw
 
echo "Latency Write (ns):"
fio --rw=randwrite --name=Latency-write --bs=4k --iodepth=1\
    --direct=1 --filename=$testfile --numjobs=1 --ioengine=libaio\
    --refill_buffers --group_reporting --runtime=60 --time_based\
    --size=$filesize --output-format=json | jq .jobs[0].write.lat_ns.mean
 
echo "Latency Read (ns):"
fio --rw=randread --name=Latency-read --bs=4k --iodepth=1\
    -direct=1 --filename=$testfile --numjobs=1 --ioengine=libaio\
    --refill_buffers --group_reporting --runtime=60 --time_based\
    --size=$filesize --output-format=json | jq .jobs[0].read.lat_ns.mean

Testergebnisse von verschiedenen Systemen

IOPS Write IOPS Read Throughput Write Throughput Read Latency Write Latency Read
soquartz eMMC 3264 3295 40248 kB/s 44887 kB/s 647us 587us
soquartz NVME 38207 54555 389243 kB/s 416927 kB/s 70us 210us
PVE Guest 910 690424 122703 kB/s 16314633 kB/s 65us 56us
kb/perftests.1692879526.txt.gz · Last modified: by krumel