Skip to content

Instantly share code, notes, and snippets.

@roberto-mello
Last active April 9, 2025 23:28
Show Gist options
  • Save roberto-mello/e1f64d22b0cf5c4351d6fa5d030df442 to your computer and use it in GitHub Desktop.
Save roberto-mello/e1f64d22b0cf5c4351d6fa5d030df442 to your computer and use it in GitHub Desktop.
[global]
ioengine=libaio
direct=1
bs=8k # 8KiB block size (common for database pages)
size=20g # Larger file size to minimize cache effects
runtime=60 # 60-second runtime per test
directory=/mount-point-of-ssd
filename=db.test.file
numjobs=4 # Increase to simulate more concurrent database threads/processes
iodepth=16
time_based=1
group_reporting=1
randrepeat=0 # Ensure random I/O is truly random
write_lat_log=lat-test # report detailed latency stats
# Sequential Read Baseline
[seq-read]
rw=read
stonewall
# Random Read (Simulate Index Lookups)
[rand-read]
rw=randread
stonewall
# Sequential Write Baseline
[seq-write]
rw=write
stonewall
# Random Write (Simulate Transaction Logging)
[rand-write]
rw=randwrite
stonewall
# Mixed Random Read/Write (Simulate OLTP Workload)
[mixed-rand-rw]
rw=randrw
rwmixread=70 # 70% reads, 30% writes (typical OLTP ratio)
stonewall
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment