Reverse Sequential with Offset

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

 



Hello, 

I am looking to do reverse sequential IO and am having some issues.

Per the man page and docs this is the job I am using, utilizing the read:-64K   Read 32K then backtrack 64K

fio --group_reporting=1 --name=reverse_seq --filename=/dev/sdb --iodepth=1 --rw=read:-64K --offset=1024K --rwmixwrite=0  --bs=32K --description=32K_Reverse_Seq --random_generator=tausworthe64 --randrepeat=1  --numjobs=1 --ba=4K --ioengine=libaio  --direct=1 

Looking at the block trace it is definitely doing a reverse sequential but it is starting at the LAST LBA of the device and working backwards to 0.  
  8,16  17        1     0.000000000 58480  Q   R 21781364224 + 64 [fio]
  8,16  19        1     0.008029219     0  C   R 21781364224 + 64 [0]
  8,16  19        2     0.008062815 58480  Q   R 21781364160 + 64 [fio]
  8,16   0        1     0.008550943     0  C   R 21781364160 + 64 [0]
  8,16   0        2     0.008599707 58480  Q   R 21781364096 + 64 [fio]

Unfortunately it doesn't look like --offset is doing what I wanted. Looking at the man page  --offset will not work in this instance "Data before the given offset will not be touched."

Since there is a difference on Sequential (and Reverse Sequential) Performance for HDDs depending on if you are working on the ID or OD I need to give an offset to the job and then have it work backwards from that offset to 0 rather than work back from Max LBA to 0.  

Is there a way to do this or add this functionality?

Thank you,
Kurt




[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