
152 MetaFrame Solutions Guide
Finding Memory Leaks
When multiple users are running a number of applications on a MetaFrame server,
it is not unusual for some of these applications to have some form of memory leak
that slowly consumes the available memory of the server. A memory leak occurs
when a memory pool allocates some of its memory to a process and the process
does not return the memory. When this happens repeatedly, the memory pool is
depleted. If you monitor paged pool bytes and page file usage in Performance
Monitor, you will see that they increase over time.
The most common signs that a system is experiencing a memory leak include but
are not limited to:
K
Virtual memory errors (displayed at the console only)
K
Excessive paging of the system pagefile(s)
K
Sluggish performance
K
System appears to hang
K
Client connection/disconnection problems
K
Processes and applications become unresponsive
Identifying Memory Leaks Using Performance Monitor
A memory leak can be caused by a process created by a service, a program, a
device driver, etc. The most common way to find a memory leak is to use
Performance Monitor to chart the following:
K
Object: Process
K
Instance: Process Name
K
Counter: Private Bytes
For example, on a system with 128MB RAM, a 384MB Pagefile, and two users,
the Spoolsv.exe shows 250,000,000 private bytes.
Always select the Memory, Objects, and Processes objects when you are looking
for a pool leak. Select all counters under each object. You can also select other
object counters to help you identify a specific problem. You then simply view all
charted objects until one or more objects show a trend that could be a pool leak.
1. By charting the memory resources, it becomes clear that one or more memory
pools are allocating memory and the available memory in one or more memory
pools is being continuously depleted. When charted, a memory pool can
display a continuously climbing stair-step effect while the process leaking
memory is running. However, during times of inactivity, it is common to see
the charted line remain flat. The charted line continues the stair-step pattern the
next time the process leaking memory is started and run.
Comentarios a estos manuales