[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: 2GB of Waste? How can it be?



> No, reiserfs allows you to store the last non-block-aligned tail part
> of a file in the tree nodes themselves, rather than taking up a whole
> block.  Reiserfs does definitely give you good small-file efficiency
> as a result.
> 
> There are tail-merging patches for ext2 to do the same, btw.  We've
> been looking at whether that can be adapted for ext3 extended
> attributes --- if so, we can get ext3 tails stored in an EA and
> achieve the same sort of space efficiency that reiserfs gains with its
> own tail merging.

What I'd rather see is "directory readahead".  I.e., make the allocator
put all the files (that it can) for a directory in the same sequence
of blocks.  And have it allocate inodes for a directory out of the
same sequence of inodes.  Then have a read_the_whole_dir() interface
that is invoked when you go to disk for Nth time in the same interface.
In 2 I/O's you fill the block layer with the data and now we're running
like cold cache is hot cache.  See what I mean?

And no ondisk format changes, as far as I can tell, "just" allocator changes.
"Just" because I understand the complexity.
-- 
---
Larry McVoy            	 lm at bitmover.com           http://www.bitmover.com/lm 





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]