Extended Attribute Write Performance

Andreas Gruenbacher agruen at suse.de
Sun Jan 15 03:12:46 UTC 2006


On Friday 13 January 2006 02:52, Charles P. Wright wrote:
> Increasing the inode size to 256 bytes made a huge difference under
> Ext3.  The spikes that I mentioned for Ext2 also existed in Ext3, and
> were eliminated by this change.  My application's performance increased
> by about 40%, and the standard deviations dropped from around 20% to 4%.
>
> However, for Ext2 it made very little difference.  I still have a
> handful of operations (.05%) that account for 73% of the time.  I know
> that Ext2 is optimized for shared attribute blocks (for the case of
> ACLs).  Is there something about having lots of unique attributes that
> results in poor performance?

Without fast xattrs (i.e., bigger inodes), unique attributes can consume lots 
of memory, you will end up writing entire blocks for each xattr change, and 
you may also waste a considerable amount of disk space. You already noticed 
that ext3 fast xattrs are much faster for small attributes, no matter if they 
are unique or not. Ext2 does not have fast xattr support; it most likely 
never will. There, the extra space is just wasted and you'll see about the 
same performance no matter which inode size you choose.

Regards,
Andreas




More information about the Ext3-users mailing list