"sqlio -f" - Stripe Size in Blocks

Q

What is the Stripe Size in Blocks option, "sqlio -f"?

✍: FYIcenter.com

A

The Stripe Size in Blocks option, "sqlio -f", specifies the Stripe Size in number of I/O blocks, which is the gap between consecutive I/O tests in each run.

The default value is "-f64", 64 blocks. In this case, SQLIO will start with the 1st block from the data file for the 1st test, the 64th block for the 2nd test, the 128th block for the 3rd test, so on.

Example 1 - Run SQLIO with a gap of 16 blocks between tests:

C:\fyicenter\SQLIO>sqlio -f16

1 thread reading for 30 secs from file testfile.dat
        using 2KB IOs over 32KB stripes with 64 IOs per run
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 11486.62
MBs/sec:    22.43

Example 2 - Run SQLIO with a gap of 32 blocks between tests:

C:\fyicenter\SQLIO>sqlio -f32

1 thread reading for 30 secs from file testfile.dat
        using 2KB IOs over 64KB stripes with 64 IOs per run
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec:  2974.43
MBs/sec:     5.80

Example 3 - Run SQLIO with a gap of 64 blocks between tests:

C:\fyicenter\SQLIO>sqlio -f64

1 thread reading for 30 secs from file testfile.dat
        using 2KB IOs over 128KB stripes with 64 IOs per run
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec:  2201.74
MBs/sec:     4.30

As you can see, when the Stripe Size is increased, the throughput goes down, because the operating system takes longer to get I/O blocks that are stored further away from each other.

 

"sqlio -i" - Number of IOs per IO Run

"sqlio -b" - IO Block Size in KB

Getting Started with Microsoft SQLIO

⇑⇑ SQLIO Disk I/O Benchmark Test Tutorials

2019-09-04, 210👍, 0💬