[Lustre-discuss] Fwd: max_sectors_kb change doesn't help

Andreas Dilger adilger at clusterfs.com
Thu Sep 27 03:34:57 PDT 2007


On Sep 27, 2007  11:28 +0200, Erich Focht wrote:
> On Thursday 27 September 2007 10:52, Andreas Dilger wrote:
> > In fact there isn't any such detection in Lustre - it will push pages into
> > an IO until the block layer tells it to stop.
> > 
> > Please check /proc/fs/lustre/obdfilter/*/brw_stats to see if the IO requests
> > coming from the client are 1MB in size (256 pages), and if yes then the issue
> > would likely be in the block layer.
> 
> The output is below. I see 256 pages per transfer. But I also see "disk
> fragmented I/Os". Sounds somehow related, but can I influence the
> fragmentation?
> 
> pages per bulk r/w     rpcs  % cum % |  rpcs  % cum %
> 256:                     0   0   0   |  955 100 100
> 
>                            read      |     write
> disk fragmented I/Os   ios   % cum % |  ios   % cum %
> 2:                       0   0   0   |  955 100 100
> 
>                            read      |     write
> disk I/O size          ios   % cum % |  ios   % cum %
> 512K:                    0   0   0   | 1910 100 100

This generally points to the underlying layer fragmenting the IO, since the
"disk fragmented I/O" counter is only when we can't add a page to the exising
bio (see "frags" in lustre/obdfilter/filter_io_26/filter_do_bio()).  The
culprit is in "can_be_merged()" or "bio_add_page()".

Cheers, Andreas
--
Andreas Dilger
Principal Software Engineer
Cluster File Systems, Inc.




More information about the lustre-discuss mailing list