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. _______________________________________________ Lustre-discuss mailing list [email protected] https://mail.clusterfs.com/mailman/listinfo/lustre-discuss
