HEADS UP - Another media change for HAMMER
Matthew Dillon
dillon at apollo.backplane.com
Sat May 17 12:16:38 PDT 2008
After doing performance testing I isolated an issue related to slow
directory scans. Basically the problem is that an inode has a B-Tree
key which localizes it relative to its contents. Unfortunately this
means that the inodes themselves wind up not being localized when doing
a directory scan.
What I really want is to have the inode localized relative to other
inodes. This will not only localize inodes within the B-Tree, but will
also localize the inode meta-data (uid, gid, size, etc), and should
result in extremely fast directory scans and lookups.
So I am going to make another media change, now when I have the chance :-)
The B-Tree element structure has some unused space and I am going to
use some of it to create a 'localization' parameter which will have
sorting priority over the object id. This will allow me to group inode
elements together both in the B-Tree and in the data layout.
Again, I can't promise there wont be more changes. I want to get it
right before the official release.
-Matt
More information about the Kernel
mailing list