Re: [PATCH v1] fio: Append "filecreate/filestat/filedelete" to 'readwrite='

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/15/22 03:39, Friendy.Su@xxxxxxxx wrote:
Show correct file operation strings in log.

For file operation measurement, 'rw' field is set to 'read' in job file.
The corresponding 'rw' in log is also 'read'. This makes user confused
since file operation and IO read are totally different things.
In this commit, add 3 new file operations to 'rw' field.

For implementation, TD_DDIR_FILECREATE/TD_DDIR_FILESTAT/TD_DDIR_FILEDELETE
are added. Meanwhile, DDIR_FILE_OP is added to identify the file
operation and IO operation. DDIR_FILE_OP is same value as
DDIR_READ, then clat_stat[DDIR_FILE_READ] can be 'borrowed' for file
operation statistics. Just set DDIR_FILE_OP_MASK when get io_ddir_name().
This avoid big code change if add a new index to enum fio_ddir.

With this commit, user can explicitly specify the exact file operation
in job file 'rw' field. 'rw' string and 'ddir' string in log is also
correct.

Example:

$ fio   filestat-ioengine.fio
t0: (g=0): rw=filestat, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=filestat, iodepth=1
t1: (g=0): rw=filestat, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=filestat, iodepth=1
fio-3.33
Starting 2 threads

t0: (groupid=0, jobs=1): err= 0: pid=4744: Thu Nov 10 18:24:00 2022
   file_operation: IOPS=20.0k, BW=78.1MiB/s (81.9MB/s)(80.0KiB/1msec)
     clat (nsec): min=12645, max=29394, avg=13751.35, stdev=3690.55
     clat percentiles (nsec):
      |  1.00th=[12608],  5.00th=[12608], 10.00th=[12736], 20.00th=[12736],
      | 30.00th=[12736], 40.00th=[12736], 50.00th=[12864], 60.00th=[12992],
      | 70.00th=[12992], 80.00th=[13120], 90.00th=[13120], 95.00th=[13760],
      | 99.00th=[29312], 99.50th=[29312], 99.90th=[29312], 99.95th=[29312],
      | 99.99th=[29312]

Signed-off-by: friendy-su <friendy.su@xxxxxxxx>

<snip>

I think having this option will be confusing and lead to users trying to run a job with --ioengine=psync --rw=filecreate.

However, I understand the confusion that arises when the file operation ioengines are used. Might there be some other way to help? Perhaps the ioengine could emit some sort of message? Or the documentation for the file operation ioengines could be enhanced?

Vincent




[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux