跳至主要内容

fio

Flexible I/O Tester

Install on openSUSE

sudo zypper ref && sudo zypper in --no-recommends -y fio

Speed test

常用的測試場景

# 每個場景都分別測試 fsync/sync 確認實際寫入到 NAND Flash 或 DRAM 暫存的速度差異
# 模擬低併發下,需要最高資料耐用性(例如交易日誌)的 4K IOPS 效能。
sudo fio -ioengine=libaio -name=NVMe-SSD -filename=/dev/nvme0n1p1 -invalidate=1 -runtime=60 -direct=1 -bs=4k -iodepth=1 -rw=randwrite -fsync=1
sudo fio -ioengine=libaio -name=NVMe-SSD -filename=/dev/nvme0n1p1 -invalidate=1 -runtime=60 -direct=1 -bs=4k -iodepth=1 -rw=randwrite -sync=1

# 模擬高併發下,需要最高資料耐用性的 4K IOPS 效能。
sudo fio -ioengine=libaio -name=NVMe-SSD -filename=/dev/nvme0n1p1 -invalidate=1 -runtime=60 -direct=1 -bs=4k -iodepth=128 -rw=randwrite -fsync=1
sudo fio -ioengine=libaio -name=NVMe-SSD -filename=/dev/nvme0n1p1 -invalidate=1 -runtime=60 -direct=1 -bs=4k -iodepth=128 -rw=randwrite -sync=1

# 模擬高頻寬場景(例如大型檔案傳輸、影音串流),測量循序寫入頻寬(MB/s)。
sudo fio -ioengine=libaio -name=NVMe-SSD -filename=/dev/nvme0n1p1 -invalidate=1 -runtime=60 -direct=1 -bs=4M -iodepth=32 -rw=write -fsync=1
sudo fio -ioengine=libaio -name=NVMe-SSD -filename=/dev/nvme0n1p1 -invalidate=1 -runtime=60 -direct=1 -bs=4M -iodepth=32 -rw=write -sync=1

如果是 SATA SSD 掛載位置可能在 -filename=/dev/sda

參考資料: 如何挑選適合 Ceph 的 SSD | Gene WorkSpace