On Sun, Mar 05, 2006 at 02:21:51PM +1100, Stewart Smith wrote:
> On Thu, 2006-03-02 at 18:43 -0600, Amanda Kirkconnell wrote:
> > This mod introduces multi-level in-core file extent functionality,
> > building upon the new layout introduced in mod xfs-linux:xfs-kern:207390a.
> > The new multi-level extent allocations are only required for heavily
> > fragmented files, so the old-style linear extent list is used on files
> > until the extents reach a pre-determined size of 4k. 4k buffers are
> > used because this is the system page size on Linux i386 and systems
> > with larger page sizes don't seem to gain much, if anything, by using
> > their native page size as the extent buffer size. Also, using 4k extent
> > buffers everywhere provides a consistent interface for CXFS across
> > different platforms.
> So does this aim to speed up file offset to extent lookup on heavily
> fragmented files when we have all (most) of extents in core?
> And also to not require such large contiguous kernel memory allocations
> for lots of extents? (e.g. 10,000 extents)
> I'm assuming this is more noticeable with CXFS? i.e. less stuff over the
> wire when only caring about small parts of highly fragmented file.
The CXFS changes aren't quite finished yet but - Yes - CXFS should
benifit significantly from sending less extents over the wire.