|
|
The symptoms of a memory leak include the following:
If you suspect that a particular application or service is causing a memory leak, investigate the memory use of your applications using the following counters:
Although any leak is serious, memory leaks are of particular concern when they involve the nonpaged pool. Many system services allocate memory from the nonpaged pool because they need to reference it when processing an interrupt and cannot take a page fault at that time. To identify whether or not a leak affects the nonpaged pool, include the following counters in your monitoring:
Portrait of a Leaky Application The following graphs are an example of an application with a memory leak. The leaky application is constantly requesting more memory. It is characterized by increasing Process/Page File Bytes at the same rate as the system Committed Bytes; i.e. all memory commitment is due to one process. Available Bytes are decreasing steadily until the system pages something out and then the Virtual Bytes increase to make room for more Available Bytes. The Working Set of the leaky application actually decreases when parts of it get paged out. Note how Page Faults/sec increases as Available Bytes decline.
The Windows Resource Kit includes an example program called LeakyApp.exe. This program has the typical fault of constantly allocating more and more memory. Start LeakyApp and investigate the memory counters with System Monitor. |
|
|