Garbage Collector Debugging

N

Noah Coad [MVP & MCP]

WARNING!

I just downloaded, installed, and ran this Memory Profiler and now my system
is under a constant unknown 90% utlization. It is running extremely slow
for no apparent reason (no tasks show the utiliztion under Task Manager
other than "System"). Even after a reboot the system is running at 80% to
90%!

I can barely use my computer and I have a huge contract due this week! This
is very frustrating... Any recommendations?

-Noah Coad
Microsoft MVP & MCP
 
J

Jack Meyhoff

I guess you make those MVP & MCP letters look good now huh.

You dont deserve those if you do stupid things like that , havnt u heard of
vmware :D and other tools to contain test apps :D

Even more fool you for doing it on a production machine.

Guess we can remove those little letters that obviously show alot when you
do that.
 
N

Noah Coad [MVP & MCP]

Your product does look like a good product, it was probobly a quirk. I
tried e-mailing but didn't get a response back and was distrought there
wasn't a way to contact the company directly via telephone support.

My system is back fine after running the Memory Profiler again,
loading the same application, and closing the Memory Profiler again.

It just took so long to do this because of the system load that I had to use
another computer for e-mail and newsgroups. Memory Profiler looks so good
(nice components) that I e-mailed asking what components you use for the
multicolumn list box (I'd still like to know).

-Noah

P.S. For possible debugging purposes, here is the sequence of events:

1. Loaded Memory Profiler
2. "Used Profile Application" and selected a very simple .NET app that I've
used for over a year
3. Ran the Process
4. Took a look at some values in M.P.
5. Clicked the 'Stop' button which brought up a dialog asking me if I wanted
to end the process.
6. Manually closed the application running
7. M.P. detected the program closed and asked if I wanted to save the
profile infomation (in a dialog on top of the click to stop dialog). I
clicked 'No'
8. Then I clicked the 'Cancel' button on the dialog from step 5.
9. System Load Goes to 90%
10. Closed Memory Profiler

It stopped the heavy system load after repeating steps 1 through 5, but this
time allowing M.P. to close the application. The reason this took so long
was that my system was going so slow at this point it took awhile to do
this. The warning message was brisk, my first to ever post such a message,
but it was a scare without barely being able to even use the computer to
take M.P out or try to fix it and not being able to get in touch with the
company.
 
M

Mark Pearce

Jack,

You should never express yourself more clearly than you are able to think.

Mark
--
Author of "Comprehensive VB .NET Debugging"
http://www.apress.com/book/bookDisplay.html?bID=128


I guess you make those MVP & MCP letters look good now huh.

You dont deserve those if you do stupid things like that , havnt u heard of
vmware :D and other tools to contain test apps :D

Even more fool you for doing it on a production machine.

Guess we can remove those little letters that obviously show alot when you
do that.
 
G

Gustavo Franco

Hi,



I did a medium complex application in C#, and in some areas the memory goes
up to 60Mb, when I finish I dispose everything and setting everything to
null and calling GC.Collect, but the memory never goes below 45MB and I'm
pretty sure I'm not allocating that huge amount of memory.



Now the question is, are there some kind of tool that allow to me to see
what objects are inside of Garbage Collector?. How do I know if I freed the
resources properly?.



If my application looks like is taking 64Mb of ram al the time the users are
not going to install it.



I need any kind of tool to see the content of the GC.



Supposed I have a bug and the application is taking memory and never is
released how do I supposed to know what is happening if the GC hide this
information?



Any Help?



Thanks.
 
A

Andreas Suurkuusk

Hi,

I did a quick try to see if I could reproduce your problem, but I didn't
succeed. I will try some more after the weekend.

I understand that you needed a quick reply to your problems, but we received
your first e-mail at 18.01 (CET), and the e-mail about your CPU utilization
problem at 18.39. I responded by e-mail and to the newsgroup at 20.16, which
I think is a pretty quick response, considering it to be after office hour
at Friday night. Currently we have no possibility to offer phone support for
our .NET Memory Profiler, but we always try respond to e-mail support
requests within one business day, and we usually answer them faster.

Best regards,

Andreas Suurkuusk
SciTech Software AB
 
E

Eric Gunnerson [MS]

The runtime has a number of performance counters. If you run "perfmon",
you'll see them. Try ".NET CLR Memory" as the category, and choose something
like "Bytes in all heaps". If you're use taskman to look at memory, it
doesn't necessarily report how much memory you're really using.

--
Eric Gunnerson

Visit the C# product team at http://www.csharp.net
Eric's blog is at http://blogs.gotdotnet.com/ericgu/

This posting is provided "AS IS" with no warranties, and confers no rights.
 
S

Shri Borde

CLR Profiler can show you tons of information about the GC heap. It plugs
into the profiling API hooks and can track the GC heap with a very fine
granularity. It is available as a download on
http://msdn.microsoft.com/library/d...y/en-us/dndotnet/html/highperfmanagedapps.asp

Plus there's video showing Gregor demoing it:
http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20030729CLRGN/manifest.xml

As a general background, Rico's and Jan's articles are helpful:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/dotnetgcbasics.asp

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/fastmanagedcode.asp
 
J

JerryK

Is this a windows app? If so, what sort of controls are you using? Are you
using AddEvents?

jerry
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,734
Messages
2,569,441
Members
44,832
Latest member
GlennSmall

Latest Threads

Top