linux-lvm.redhat.com archive mirror
 help / color / mirror / Atom feed
* [linux-lvm] LVM and I/O block size (max_sectors_kb)
@ 2014-07-02 15:00 Gionatan Danti
  2014-07-31  7:30 ` Gionatan Danti
  2014-09-11 13:49 ` Gionatan Danti
  0 siblings, 2 replies; 6+ messages in thread
From: Gionatan Danti @ 2014-07-02 15:00 UTC (permalink / raw)
  To: linux-lvm; +Cc: g.danti

Hi all,
it seems that, when using LVM, I/O block transfer size has an hard limit 
at about 512 KB/iop. Large I/O transfers can be crucial for performance, 
so I am trying to understand if I can change that.

Some info: uname -a (CentOS 6.5 x86_64)
Linux blackhole.assyoma.it 2.6.32-431.20.3.el6.x86_64 #1 SMP Thu Jun 19 
21:14:45 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

 From my understanding, maximum I/O block size for physical device can 
be tuned from /sys/block/sdX/queue/max_sectors_kb.

Some quick iostat -k -x 1 show that, for physical device, the tunable works:

# max_sectors_kb=512 (default)
dd if=/dev/zero of=/dev/sdd1 bs=2M count=16 oflag=direct
iostat -x -k 1 /dev/sdd: avgrq-sz=1024 (1024 sectors = 512KB = 
max_sectors_kb)

# max_sectors_kb=2048
dd if=/dev/zero of=/dev/sdd1 bs=2M count=16 oflag=direct
iostat -x -k 1 /dev/sdd: avgrq-sz=2048 (2048 sectors = 1024 KB)

dd if=/dev/zero of=/dev/sdd1 bs=4M count=16 oflag=direct
iostat -x -k 1 /dev/sdd: avgrq-sz=2730.67 (2730 sectors = ~1350 KB)

As you can see, I can't always reach 100% efficienty but I came 
reasonably close.


The problem is that, when using LVM2 (on software raid10), I can not 
really increase I/O transfer size. Setting both sd*, md* and dm-* to 
max_sectors_kb=2048 leads to _no_ increase in I/O blocks, while 
decreasing the max_sectors_kb works properly:

# max_sectors_kb=2048
dd if=/dev/zero of=/dev/vg_kvm/TEST bs=2M count=64 oflag=direct
iostat -x -k 1 /dev/vg_kvm/TEST: avgrq-sz=1024.00 (it remains as 512KB)

# max_sectors_kb=256
dd if=/dev/zero of=/dev/vg_kvm/TEST bs=2M count=64 oflag=direct
iostat -x -k 1 /dev/vg_kvm/TEST: avgrq-sz=512.00 (512 sectors = 256KB = 
max_sectors_kb)

Now, two questions:
1) why I see this hard limit?
2) can I change this behavior?

Thank you very much.

-- 
Danti Gionatan
Supporto Tecnico
Assyoma S.r.l. - www.assyoma.it
email: g.danti@assyoma.it - info@assyoma.it
GPG public key ID: FF5F32A8

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-09-12 15:48 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-02 15:00 [linux-lvm] LVM and I/O block size (max_sectors_kb) Gionatan Danti
2014-07-31  7:30 ` Gionatan Danti
2014-09-11 13:49 ` Gionatan Danti
2014-09-12 11:54   ` Marian Csontos
2014-09-12 13:46     ` Gionatan Danti
2014-09-12 15:48     ` matthew patton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).