[OpenAFS] Re: Windows cache rehashed...

Rodney M Dyer rmdyer@uncc.edu
Tue, 16 Dec 2003 12:58:54 -0500


Joe,

At 08:57 AM 12/16/2003, you wrote:

>I have found this thread on the Windows client cache very enlightening.

I'm glad somebody does.  :)

>One question regarding something I am a little hazy on:
>
>The Windows client caches data in physical memory, not virtual memory?
>So if I set the cache size to X MB, I have essentially reserved X MB
>of system RAM for the AFS cache, unavailable for other uses?

I thought Jeffrey already covered this in the previous thread.  He's 
probably going to get a headache having to go over it again.   Here is what 
he stated...

"I haven't looked at all of the specifics but ... when you write data into 
the cache a chunk is allocated and mapped to the disk file.  This chunk 
remains in memory for some period of time to avoid the need to re-read the 
data from the cache into memory.  When you are copying a huge file the 
process is sequential and hence all of the data is processed once and then 
ignored.  Hence for some period of time the entire backing store ends up in 
memory.  Eventually those cache pages will time out due to lack of use and 
be flushed." - Jeffrey Altman.

To me, this also says that Windows will page those chunks out to it's own 
swap when we've run out of physical memory.  This makes sense, so there are 
a number of variables to look at here when performance testing of the AFS 
cache on Windows.

We've got...

1.  The amount of physical memory.
2.  The amount of Windows swap (pagefile size, min and max).
3.  The AFS cache size .
4.  The AFS cache chunk size.
5.  The available free memory.

But, what I'm still hazy on is that Windows does its own limited file 
caching for recently used files.  Windows probably uses virtual memory for 
that, so why do we need AFS caching in the first place on Windows?  Maybe I 
should set the AFS cache to nothing and see how that effects 
things...nope...the minimum client config is 1 Meg, but I will still try it.

Rodney