----- Original Message ----- From: tkaczma@gryf.net Cc: toasters@mathworks.com Sent: Thursday, February 24, 2000 3:14 AM Subject: Re: NVRAM memory
On Fri, 18 Feb 2000, Bruce Sterling Woodcock wrote:
Just having extra CPU won't help. A better indication is how often you see the writes on the systat being done. If you just see them in bunches every 5-10 seconds, you'll be fine. (Is it still every 10
seconds?)
If you see them more often than that, the less NVRAM will hurt you.
This is not neccesarily true. It will hurt you in certain, in my opinion exotic, scenarios.
You are, alas, incorrect.
Suppose I write a 7MB file to your F330. You had 8MB of NVRAM. I start writing. At 4MB you switch half of the NVRAM over and start flushing it to disk. I fill up the rest of your NVRAM and the filer
returns
back success and my client is ready to go do something else while the filer busily commits everything to disk.
Now, same situation, only you have 4MB. After 2 MB you switch, then I fill up the next 2MB, and now I'm stuck waiting for you to finish your disk activity. You do, and I write the next 2MB, and I have to wait again. Instead of being able to write to you at "memory" speeds (basically as fast as I can go and the network will allow), I am stuck waiting on the disks.
Suppose you write a 10MB file at a blazing speed.
No, please address *my* example, which was designed to illustrate the point. The fact you can invent a scenario where the effect is reduced is irrelevant.
With 8MB NVRAM, you'll fill up both parts of the NVRAM and wait while 4MB of data is written to disk. With 4MB NVRAM, you'll happily fill up both sides, but then wait only for 2MB of data to be written to disk before you can write some more. That's half the waiting time.
Yes, but with the 8MV NVRAM, you wait once. The key is the client doesn't have to wait for the final disk write, just the final write to NVRAM. So for a 10MB file:
8MB NVRAM Send 4MB (4s) Send 4MB (4s) Wait for 4MB write (4w) Send 2MB (2s) Total Time - 10s + 4w
4MB NVRAM Send 2MB (2s) Send 2MB (2s) Wait for 2MB write (2w) Send 2MB (2s) Wait for 2MB write (2w) Send 2MB (2s) Wait for 2MB write (2w) Send 2MB (2s) Totale Time - 10s + 6w
Bruce