[dm-devel] multipath performance
Andy
genanr at emsphone.com
Mon Jan 28 21:52:36 UTC 2008
On Thu, Jan 24, 2008 at 05:59:39PM -0800, malahal at us.ibm.com wrote:
> Andy [genanr at emsphone.com] wrote:
> > I did some basic dd tests to get an idea of the speed of multipath vs
> > individual devices, some of the numbers seem not to make sense.
> >
> > I ran several test with dd, 4 at a time reading different parts of the
> > device.
> >
> > multibus - round robin among paths rr_min_io=1, 4 paths
> > individual - each dd going to a separate path
> >
> > dd with iflag=direct
> > multibus : 120 MB/s
> > individual : 115 MB/s
> >
> > dd without direct
> > multibus : 44MB/s (why is this so bad)
> > individual : 160MB/s (why is this so good)
> >
> > Why is multibus without direct the worst, yet individual devices without
> > direct is the fastest. And why doesn't multibus perform about the same as
> > going to the individual devices (25% performance hit using multibus)?
>
> I am assuming that you are only reading from the device based on your
> iflag. When you do O_DIRECT, you inherently disable read-ahead. Also
> note that the read-ahead benefit would be insignificant as you increase
> the block size.
>
> without direct I/O, you end up with very big I/O's in individual mode.
> Same can't be said in multibus mode as it tries to send small I/O's
> (actually bio's) on different paths and it makes the system not to merge
> any adjacent requests.
Is there any way (yet) to increase the bio size? It would be nice if
individual paths could perform large I/O's when needed.
Andy
More information about the dm-devel
mailing list