Round Robin IO

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

 



I am trying to do multi device round robin, I have been utilizing
--filename=dev1:dev2 and it works great for Randoms but it doesn't
work correctly for sequential (This is for multi path devices)
Looking at the debug output and a blktrace for sequential it looks
like it is sending the same offset to both devices
Is there a way to issue Sequential IO where it increments the LBA for each IO?
File1  LBA 0-4
File2 LBA  4-8
File1 LBA 8-12
File2 LBA 12-16
If this is not implemented would it be possible to implement this?

Thank you!
Kurt
(Below is debug output)
file     10720 get file /dev/nvme1n1, ref=1
io       10720 fill: io_u 0x55620e76b380:
off=0x0,len=0x20000,ddir=1,file=/dev/nvme1n1
io       10720 prep: io_u 0x55620e76b380:
off=0x0,len=0x20000,ddir=1,file=/dev/nvme1n1
io       10720 prep: io_u 0x55620e76b380: ret=0
io       10720 queue: io_u 0x55620e76b380:
off=0x0,len=0x20000,ddir=1,file=/dev/nvme1n1
io       10720 calling ->commit(), depth 1
file     10720 trying file /dev/nvme3n1 10
file     10720 fd open /dev/nvme3n1
file     10720 file not found in hash /dev/nvme3n1
file     10720 get file /dev/nvme3n1, ref=0
io       10720 drop page cache /dev/nvme3n1
file     10720 goodf=1, badf=2, ff=31
file     10720 get_next_file_rr: 0x7f80f9fb06f0
file     10720 get_next_file: 0x7f80f9fb06f0 [/dev/nvme3n1]
file     10720 get file /dev/nvme3n1, ref=1
io       10720 fill: io_u 0x55620e76b140:
off=0x0,len=0x20000,ddir=1,file=/dev/nvme3n1
io       10720 prep: io_u 0x55620e76b140:
off=0x0,len=0x20000,ddir=1,file=/dev/nvme3n1
io       10720 prep: io_u 0x55620e76b140: ret=0
io       10720 queue: io_u 0x55620e76b140:
off=0x0,len=0x20000,ddir=1,file=/dev/nvme3n1
io       10720 calling ->commit(), depth 2
file     10720 trying file /dev/nvme1n1 31
file     10720 goodf=1, badf=2, ff=31
file     10720 get_next_file_rr: 0x7f80f9fb0510
file     10720 get_next_file: 0x7f80f9fb0510 [/dev/nvme1n1]
file     10720 get file /dev/nvme1n1, ref=2
io       10720 fill: io_u 0x55620e76af40:
off=0x20000,len=0x20000,ddir=1,file=/dev/nvme1n1
io       10720 prep: io_u 0x55620e76af40:
off=0x20000,len=0x20000,ddir=1,file=/dev/nvme1n1
io       10720 prep: io_u 0x55620e76af40: ret=0
io       10720 queue: io_u 0x55620e76af40:
off=0x20000,len=0x20000,ddir=1,file=/dev/nvme1n1
io       10720 calling ->commit(), depth 3
file     10720 trying file /dev/nvme3n1 31
file     10720 goodf=1, badf=2, ff=31
file     10720 get_next_file_rr: 0x7f80f9fb06f0
file     10720 get_next_file: 0x7f80f9fb06f0 [/dev/nvme3n1]
file     10720 get file /dev/nvme3n1, ref=2
io       10720 fill: io_u 0x55620e76ad00:
off=0x20000,len=0x20000,ddir=1,file=/dev/nvme3n1
io       10720 prep: io_u 0x55620e76ad00:
off=0x20000,len=0x20000,ddir=1,file=/dev/nvme3n1
io       10720 prep: io_u 0x55620e76ad00: ret=0
io       10720 queue: io_u 0x55620e76ad00:
off=0x20000,len=0x20000,ddir=1,file=/dev/nvme3n1
io       10720 calling ->commit(), depth 4
file     10720 trying file /dev/nvme1n1 31



[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