--------------------
Sender: "Colin Hansen" <
[email protected]>
Subject: low virtual memory.
Date: Tue, 25 May 2004 06:50:18 -0700
I have a PC that during random times, an error pops-up
with a low virtual memory error message. I have tried to
set the paging files to 0 then restarting then back to the
recommended, but that does nothing. Is there anything
else I can try?
---------------------
If you don't seem to be "multi-tasking" more than before...than you need to
find out which application is hogging your memory. Run a Performance
Monitor log to try to determine the problem process (note: a counter log
may have to be created and ran for several days to spot a culprit). Below
is a very quick guide to find memory leaks with Performance Monitor.
1. Create a new Counter Log
2. Add all counters (and all instances where possible) from the following
performance objects: Processor, Memory, Process, Thread
3. How long does it take for the issue to occur after reboot? Less than a
day => use a 1 minute interval....more than a day => use a 5 minute
interval (this is a rough guideline, the specific goal is to keep logfile
size under control, while still capturing at least 100 data samples
4. Analyze the log data:
- Counters from the Memory performance object (Available Mbytes, Pool
Nonpaged Bytes, Pool Paged Bytes) will show if a
trend exists in memory usage that could be responsible for the errors
you are seeing.
- If you see an upward trend in Pool memory usage:
Check the Pool memory usage of processes in the Process performance
object, you may be able to find a culprit
(if you don't find a culprit, then the leak is in Kernel Mode, and a
tool like Poolsnap will help you. See Internet for usage)
- If you see a downward trend in Available Mbytes:
The Working Set counter in the Process performance object (monitor
All Instances of this counter), is a great indicator of a process that is
using up too much memory.
- Note, sometimes a memory leak found in Memory counters cannot be
explained by a similar memory usage in an individual process.
In this case, using the %Processor Time counter for the processes
may be helpful in finding out which process is more active at a time
coinciding with a "stair-step" in the Memory counter
I understand that this is a very broad overview of leak detection, if you
have further questions let me know. Also, check out the below article:
Using Performance Monitor to Identify a Pool Leak
http://support.microsoft.com/default.aspx?scid=kb;en-us;q130926
--
~~ JASON HALL ~~
~ Performance Support Specialist,
~ Microsoft Enterprise Platforms Support
~ This posting is provided "AS IS" with no warranties, and confers no
rights.
~ Use of included script samples are subject to the terms specified at
http://www.microsoft.com/info/cpyright.htm
~ Note: For the benefit of the community-at-large, all responses to this
message are best directed to the newsgroup/thread from which they
originated.