At 03:12 AM 1/27/2004, Bert Roos wrote (in part) >Hi, > >We're having a strange problem that seems to be related to garbage collection. We're >performing load testing through a load generator tool (LoadRunner). At a certain load >level, the response times show strange and heavy fluctuations. Request handling times >go up by a factor 10 over an extended period of time (several minutes, up to 10 >minutes). Analysis of performance counters gave some interesting results: > >* Context switches go up heavily >* Contention rate/sec (.NET CLR LocksAndThreads) goes up heavily >* Time spent in GC (.NET CLR Memory) goes up heavily >* Gen 0 heap size (.NET CLR Memory) falls back from fluctuating around 5MB to a >flat 1MB >* Gen 1 heap size (.NET CLR Memory) falls back from fluctuating around 850KB to >nearly nearly flat 350KB >* Gen 2 heap size (.NET CLR Memory) keeps fluctuating around 29MB. At one >point, it goes up a few MBs in but this might be unrelated. > >The test is running on a 4 processor server with 1.5GB RAM. >[snip]
I'm not sure I can help, but this info might be useful to someone -- but it's possible that pointing your finger at GC is premature. Are you using the CLR ThreadPool, or are you doing your threading "naked"? Is there a correlation between the number of CLR threads and the number of context switches? (If you all of a sudden have 350 threads, when at a slightly lower load level you had 100, you'd expect context switches to go up significantly.) Is the server being tested handling TCP/IP requests (is it a web server?), or are the requests coming in some other way? If the former, did you collect any TCP/IP performance counters? What OS is the server running? I would guess that adding another 2.5GB RAM would help. Good luck! J. Merrill / Analytical Software Corp =================================== This list is hosted by DevelopMentor� http://www.develop.com Some .NET courses you may be interested in: NEW! Guerrilla ASP.NET, 26 Jan 2004, in Los Angeles http://www.develop.com/courses/gaspdotnetls View archives and manage your subscription(s) at http://discuss.develop.com
