[OpenAFS] openafs on Fedora 12?
Simon Wilkinson
sxw@inf.ed.ac.uk
Thu, 10 Dec 2009 21:50:03 +0000
On 10 Dec 2009, at 08:37, Rainer Toebbicke wrote:
>
> I guess none of those are unsolvable, having just a single file (or
> set of files on different discs) could make life easier and speed up
> things by eliminating double buffering (afs's VM cache + cache
> chunks's VM cache).
There are actually significant speed improvements for Linux already in
the 1.5.x tree (I spoke about some of these in Rome, and there's been
more work done since). The routines which move data to and from the
cache have been rewritten to work in terms of pages, rather than byte
ranges, and to minimise the number of context switches and copies
required. When we do need to copy data, this is now done in a separate
background work thread, which isn't governed by AFS's GLOCK and uses
kernel work queues to maximise processor use on SMP systems. (Sadly,
Linux requires that a page can only have one filesystem associated
with it in its lifetime - so we must copy data between the disk cache
VM, and AFS's VM)
In addition, a number of bugs with the marking of dirty pages have
been fixed - the kernel will no longer repeatedly flush the same dirty
page, and it now correctly flags pages which have been entirely
overwritten as being up-to-date, avoiding an expensive, and
unnecessary read from disk.
At some point, I'll do some extensive benchmarking and post proper
figures, but anecdotally we're seeing significant speed improvements
for applications which make use of cached data.
Cheers,
Simon.