Using the statistics provided in monitor under cache utilization is the best method. Using long term cache hits and LRU sitting time specifically. LRU sitting time is explained below.
LRU Sitting Time
The LRU Sitting Time statistic is updated and displayed once per second in MONITOR.NLM under the Cache Statistics menu. The statistic is calculated by taking the difference between the current time and the time stamp of the LRU cache block at the tail of the cache list. The result is displayed in HH:MM:SS.0 format (beginning with hours and ending with tenths of a second).
LRU Sitting Time measures the length of time it is taking for an MRU cache buffer at the list head to make its way down to the list tail, where it becomes the LRU cache buffer. One might refer to this measurement as the cache "churn rate" because, whether from cache hits or misses, every cache buffer in the list is being reused within that period of time.
In configurations with an excessive cache, the LRU Sitting Time can be very high, even many hours. At the other extreme, with in-sufficient cache, the LRU Sitting Time can be down in the 10 to 20 second range. The time will vary widely depending on your circumstances.
A Cache Tuning Strategy
Here's a step-by-step process to help you use the LRU Sitting Time statistic effectively.
1 Estimate Server Memory Requirements. Use the current NetWare 3 and 4 Server Memory Worksheet found in the January 1995 issue of Novell Application Notes to estimate your server memory requirements. This estimate is the first step in making sure you've given NetWare sufficient memory resources.
2 Determine an Average Think Time. Get to know your user community's applications, the types of loads they place on the server, and how workload patterns change over time and by user type.
Using protocol analysis tools or by inference, determine an average think time for your server's environment. Think time is the period of time that is created when a user workload isn't performing I/O to the server. It can be caused by pauses for creative thinking, phone time during an order-entry process, or use of the distributed processing model in which much of the work is done on cached data at the user's workstation. Think times typically range from several minutes to 12 minutes.
3 Track Server Resource Utilization Statistics. Use STAT.NLM (available from Novell Consulting Toolkit at http://www.novell.com/programs/ncs/toolkit/) to track server resource utilization statistics. Chart the results for daily, weekly, monthly, period-end, and year-end cycles. Identify recurring periods of peak workloads.
4 Observe Cache Statistics. Monitor the LRU Sitting Time during peak workload periods and at other times of the day. Keep a record of the lowest LRU Sitting Time during your observations for at least one week, longer if necessary to see a consistent pattern.
5 Develop a Low Watermark. Based on the knowledge you have gained of your server, users, workload patterns, work cycles, resource utilization statistics, and cache statistic observations, determine your average low LRU Sitting Time. This average becomes your low watermark.
6 Tune the Cache. Now you're ready to tune the server's cache. There are several ways to tune server cache for peak efficiency. We'll concentrate on tuning the size of cache here.
We recommend that your cache be sized in such a way that it is able to sustain an LRU Sitting Time low watermark that is equal to or greater than the average think time during peak workloads.
Here's where your homework pays off. If your low watermark is 7 minutes and your average think time is 12 minutes, you'll need to add memory to increase the LRU Sitting Time during those peak workloads. The added memory increases the likelihood that repeatedly used data will still be cached when the next user request is received.
On the other hand, if your LRU Sitting Time low watermark is 18 minutes and your average think time is 8 minutes, you have more than adequate cache resources. In this case, you can leave the excess memory in the server as a buffer for future growth, or you may want to consider removing some memory and using it in another server where it may be more beneficial.
The point is not whether you actually add or remove memory from your server. This information is intended to improve your ability to interpret the LRU Sitting Time statistic and thereby provide you with a meaningful way to understand the efficiency and performance of NetWare's file cache.
|