Brian Pomerantz writes:
> Is there a way to tell ext2 to use a larger block size than 4KB
> without major overhauls to the source code?  I would like to at least
> be able to use an 8KB block size to match the size of the pages on the
> Alpha.  I was hoping to match the stripe size of my RAID 5 system to
> avoid any read-modify-write situations when writing to the RAID
> device.  The smallest stripe size I can make is 8KB, which may give me
> a decent performance if I have an 8KB block size.

The ext2 block size is, indeed, tied to the page size so that is why it
has a 4K limit.  While I think much of the code could accept an 8k block
size, you would have to go through it with a fine-tooth comb to make sure
you test everything.  Ted would know for sure...

> Also, I saw (and used) the "-R stride=" option to align the stride *
> block-size with my RAID stripe.  What exactly does this option buy me?
> Will the file system layer wait to write the blocks until it has gotten
> the whole of stride * block-size in in-memory data?  The only way to
> get the maximum write performance out of a RAID 5 setup is to make
> sure you are not getting into a read-modify-write situation.  Latency
> isn't necessarily an issue for me, just raw write performance.

The stride option places the inode and block bitmaps so that successive
block groups' bitmaps are on a different RAID stripes.  I suppose this
might improve disk I/O performance, as the bitmaps are the most heavily 
used blocks on the disk.  However, the cache should prevent most of the
I/O in the first place...

Cheers, Andreas
-- 
Andreas Dilger  \ "If a man ate a pound of pasta and a pound of antipasto,
                 \  would they cancel out, leaving him still hungry?"
http://www-mddsp.enel.ucalgary.ca/People/adilger/               -- Dogbert

Reply via email to