Re: Call for testers with NVMe
- In reply to: Nuno Teixeira : "Re: Call for testers with NVMe"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 02 Sep 2026 16:44:57 UTC
> Do you have any sugestion about what tool to test before and after nvme patch so a comparison could be done?
> dd, fio, bonnie, etc, It would be nice that people share his experience using same tools.
> Thanks for your work,
What important for us is that nothing regress and that we catch any disk will stop working because it needs a quirk , like it happened with the S3X.
For the tests , i have disposable disk (no data, so i went with full chaos mode by writing, reading, deleting with a bash script ).
nvmecontrol perftest -n 4 -o read -s 4096 -t 30 nvme0ns1
nvmecontrol perftest -n 1 -o read -s 131072 -t 30 nvme0ns1
for real work load : pkg install fio
# 4k random read, deep queue: where a tracker-count change would show up
fio --name=rr --filename=/dev/nvme0ns1 --ioengine=posixaio --direct=1 --rw=randread --bs=4k --iodepth=32 --numjobs=1 --runtime=60 --time_based --group_reporting --percentile_list=50:99:99.9
# QD1 latency: sensitive to per-command overhead, insensitive to queueing
fio --name=qd1 --filename=/dev/nvme0ns1 --ioengine=psync --direct=1 --rw=randread --bs=4k --iodepth=1 --runtime=60 --time_based
# sequential, to catch a max_xfer / segmentation regression
fio --name=seq --filename=/dev/nvme0ns1 --ioengine=posixaio --direct=1 --rw=read --bs=1m --iodepth=8 --runtime=60 --time_based
You have to watch your nvme temperature with 'nvmecontrol logpage -p 2 nvme0'. When they get too hot (over 70C) they throttle performance. a heatsink helps.
Always run it 3/4 times, then take the median. In a cold weather , on a coldboot, you can get near spec top performance, (my NVME is rated at 14GB/s but i get 12GB/s max)
To test with old defaults :
nextboot -k kernel -e hw.nvme.io_trackers=1024 -e hw.nvme.arb_burst=1 (0-7)