There are lots of cases when some sort of benchmarking needs to be done to verify throughput. On the LNet level there's lnet_selftest available for such purpose (described here), but to exercise all of Lustre FIO utility is commonly used. FIO stands for "Flexible I/O tester" and is described in detail here.

Preparation

Lustre filesystem needs to be mounted. FIO needs to be run on the client.

Sample FIO Config 

$ cat seq-cpu.fio
[global]
ioengine=psync
rw=${OPERATION}
blocksize=${IO_SIZE}
iodepth=1
direct=0
size=${SIZE}
numjobs=${THREADS}
#group_reporting
thread
time_based=1
runtime=${DURATION}

[md1]
directory=/es4x04/gpudirect/
filename_format=f.$jobnum.$filenum

Command line usage

$ SIZE=1M OPERATION=write THREADS=8 IO_SIZE=1G DURATION=30s ./fio seq-cpu.fio

Parameters

TODO: Explain the parameters here


  • No labels