Hello all,
I have several Web Applications running on a Windows 2000
Server machine. I feel very funstrated that the aspnet_wp
consumes tooo much virtual memory and keep recycling day
after day.
It looks very strange in the Task Manager: the amount of
physical memory it consumes are keep, usually under 70MB,
sometimes a little more, sometimes a little less, however,
the amount of virtual memory it consumes keep rising,
from 29MB the application starts, to being recycled.
Each object that has Dispose() or Close() method has been
disposed or closed when they are not needed. However, the
amount of virtual memory keep rising and rising.....
The only thing odd that i have done on the server is i, as
well, am doing debugging on it--i don't wanna do that but
there's no more machine available here. If i do not debug
applications on it, things get a little better.
How can i find a way out?
john - 19 Feb 2004 23:16 GMT
We had a similar problem. Use PerfMon and watch your '% GC Time' metric under the .Net Memory category. If its up around or above 30% your problem may be that you are creating too many objects.
We found that databound grids and data lists, and repeater controls were creating so many objects that our GC was running 35% of the asp_net process's time
we took out all asp.net controls and our % GC Time dropped to about 1% and the pages were several times faster.
Welman Jordan - 20 Feb 2004 00:39 GMT
John,
Thanks for your reply.
It seems that it is because I am debugging applications on the server.
The non-debugged applications are quite running normally. "% GC
Time" is fairly low on my machine if I do not debug on it.
I think that I am not doing well that I did not use "using" when creating
some objects which should be Disposed later. Even though I have
try...catch...finally statements to ensure memory is released. Actually
if I debug, some exceptions are not "expected", so there may be
chances that some objects created fail to be disposed.
Jordan
> We had a similar problem. Use PerfMon and watch your '% GC Time' metric under the .Net Memory category. If its up around or above 30% your problem
may be that you are creating too many objects.
> We found that databound grids and data lists, and repeater controls were creating so many objects that our GC was running 35% of the asp_net
process's time.
> we took out all asp.net controls and our % GC Time dropped to about 1% and the pages were several times faster.
MS support - 27 Feb 2004 16:50 GMT
To make progress, I suggest looking at the perfmon
counters for .NET CLR Memory and see if any increases.
That would help tell if the managed framework is
implicated.
Patrick.
>-----Original Message-----
>Hello all,
[quoted text clipped - 21 lines]
>
>.