Hi,
I am getting confused by conflicting information i am seeing in different
Microsoft white papers/MSDN TV shows about what is an acceptable threshold
for % Time in GC. Erik Olson's Monitoring ASP.NET Applications MSDN TV show
and the accompanying article "ASP.NET Performance Monitoring, and When to
Alert Administrators" suggests that over a period of time (spikes being
acceptable) the %Time in GC should be "5% or less". Well, then i find an
MSDN TV show by Gregor Noriskin that says a GC friendly application has
%Time in GC between 10% and 30% with occassional peaks upto 70-80%. But the
average he says should be between 10-30%.
My application is averaging about 12% with a 30 min. period where the spikes
touch 30. This period corresponds to increased load. Can anybody help me
sort out the "Threshold" beyond which the GC certainly needs to be
investigated.
Thanks much.
MS Support - 27 Feb 2004 16:20 GMT
I think this is well within the design specs. There is no
absolute truths, because it is a reflection of the stress
of the memory system; it is application dependent. Let me
put it this way: If you want to speed up your application,
you can try to shorten the path length by streamlining its
logic or you can work on reducing the time spent in GC by
allocating less volume, paying close attention to the
lifetime of all objects - using the CLR profile -. Where
is the most bang for the buck? it depends on the current
time in GC; If it is 10%, then if you kill yourself, you
may get it down to 5%, which is only a 5% total
application speedup. Now if you had 30% continously, then
bringing it down to 5% would give you a 25% speedup....
Patrick.
>-----Original Message-----
>Hi,
[quoted text clipped - 16 lines]
>
>.