[Openstack] [Swift] XFS extended attribute performance

Shrinand Javadekar shrinand at maginatics.com
Mon Mar 30 23:57:19 UTC 2015


>
> Is there some sample code for how to drop the buffer cache in python.
> Presumably this will be for each file and not the entire buffer cache.
>
> The tests I ran were in a VM. I can run it on hardware with spinning
> disks underneath to get more accurate numbers.

I ran these tests on a physical machine with spinning disks. Each
experiment was run thrice. Here's the output with the default inode
size:

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
   100000    2.864    0.000    2.864    0.000 {xattr._xattr.fsetxattr}
   100000    2.993    0.000    2.993    0.000 {xattr._xattr.fsetxattr}
   100000    2.797    0.000    2.797    0.000 {xattr._xattr.fsetxattr}

And here's the output with an inode size of 2048 bytes:

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
   100000    0.746    0.000    0.746    0.000 {xattr._xattr.fsetxattr}
   100000    0.772    0.000    0.772    0.000 {xattr._xattr.fsetxattr}
   100000    1.221    0.000    1.221    0.000 {xattr._xattr.fsetxattr}

That's still at least a 2x improvement.

I'm trying to copy+paste some of the code from the Swift code base
that drops the buffer cache. Will post an update here.

-Shri




More information about the Openstack mailing list