"Glew, Andy" wrote:

> Q: why is AFS so slow?
>
> Where slow is:
> a) compared to local disks on a client
> b) compared to NFS across same network
> c) compared to local disks on the AFS server

Andy,

It would be better to compare like for like.
Why do you compare a distributed filesystem with the local filesystem?

I think a better comparison would be: AFS/DFS/NFS/CODA from the client machine.

Have you looked at running the Andrew Benchmark [1]?

As I understand it, there are several factors which affect
how fast AFS would appear to you as a user on a client machine:

a) Are your AFS servers dedicated machines?
     Do you run a set of pure AFS database servers
     and another set of pure AFS fileservers?
     Do you restrict these servers to handling only AFS workload
      (eg: no web serving, administrator only login).
      Do you have enough database servers to distribute the workload?
      Are your fileservers strategically placed in the network to serve
      data as fast as possible (eg close to clients)?
      Are all your servers "evenly balanced" (eg identical hardware config.)?

b) Are your dedicated AFS servers the latest/fastest
     machines with plenty of RAM ,fast network connection,
     and high speed disks (on fileservers)?
     When was the last time you upgraded your AFS servers?
     When will you next upgrade these servers?

c) How does your network cope with heavy load?
     Do you have the fastest, highest bandwidth network?
     Have you done any network traffic analysis to determine
     the workload on your network?

d) How much workload are you placing on your servers?
     How many users?
     Is the cell too big?
     Is it time to sub-divide to smaller cells?
     Do you need more AFS database servers?

e) On your client: is it the latest fastest machine with plenty of RAM
     and high speed network connection?
     Is your client overloaded with other tasks?

f) On your client machine, have you tried using a RAM cache
    instead of a disk cache?

    In my experience of compiling large suites of software on a
    machine with a 1 GB AFS RAM cache, it was signifigantly
    faster (once the cache had been "primed"- eg get all the
    files in to cache by "tar cvf - /afs/@cell/$dir >/dev/null")
    than using a disk cache.

g) Have you tuned your AFS client?
     Is the cache the optimum size?
     For me, with my workload, I found a 64 MB cache works well.

h) Are there files that you access via /afs that may
     be more logically placed in local filespace?

     An example:
      I have to run Lotus Notes on my current machine
      (RISC System/6000 43p-150 with 64 MB disk cache).

     I have Notes client  for AIX. It is huge.
     Originally, I tried running the whole thing via /afs.
     It was slow.  The problem was that the binaries
     were so big that the AFS disk cache was "thrashing".

     So, I moved the Notes binaries to local filespace and left my data in
/afs.

I hope this helps.
--
cheers
paul                                                     http://acm.org/~mpb

References:
[1] Andrew Benchmark
      http://www.angelfire.com/hi/plutonic/afs-faq.html#sub3.27

Reply via email to