What is the best way to detect if my Windows 2000 Server is running out of memory? Also, what are the counters I use to detect physical memory constraints and how I calculate how much physical memory I need?
The traditional way to do this is by using Performance Monitor to check the status of the memory counters for "available bytes" and "pages/sec," the logical disk counters for "% disk time" on the drive that holds pagefile.sys, and Server "pool nonpaged failures" as well as "pool paged failures." A simpler, straightforward, and graphic base tool I often use is a utility called MemTurbo, which is designed to recover unused system memory when the machine hits a certain threshold. The GUI is similar to Task Manager and easy to use. With Memturbo, you can monitor memory usage in real time to see how your system reacts throughout the day.
Sizing your server is a little different. There are a number of factors to consider including number of concurrent connections, application requirements, server functions, etc. The minimum amount of memory I would use for any server is 512MB, and then add memory from there based on vendor recommendations. It's a bit dated, but there's a great book excerpt from "Tuning and Sizing NT Server" available on Technet at: http://www.microsoft.com/technet/archive/winntas/maintain/instant.mspx.
Also see my memory guide for reference: Learning Guide: Troubleshooting computer memory.
Dig Deeper on Windows Server troubleshooting
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.