473,287 Members | 1,866 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,287 software developers and data experts.

Garbage Collection not running?

We have a web server with 2GB of physical memory on it and we are seeing the
memory usage running over 800,000KB in Task Manager. We have seen instances
where the memory being this high(due to problems with ColdFusion) has caused
the server to hang but this server is not hanging. Can anyone give me a
little insight on when garbage collection should run and if it should be
running before we get to 800,000KB(800MBG)? We are wondering if the server
is just idle enough and the memory is not needed so garbage collection is
not running. We are receiving only about 70 applicants of the application
per day so I don't think the server is overwhelmed with traffic either.

If anyone has any thoughts on this I would certainly appriciate it.

Thanks!
Andy
May 17 '06 #1
4 1356
GC will run less often if there is enough RAM, but it sounds like your app
is using an awful lot. How much traffic is it getting?

--
HTH,

Kevin Spencer
Microsoft MVP
Professional Numbskull

Complex things are made up of
lots of simple things.

"klar02" <kl****@hotmail.com> wrote in message
news:eu**************@TK2MSFTNGP04.phx.gbl...
We have a web server with 2GB of physical memory on it and we are seeing
the
memory usage running over 800,000KB in Task Manager. We have seen
instances
where the memory being this high(due to problems with ColdFusion) has
caused
the server to hang but this server is not hanging. Can anyone give me a
little insight on when garbage collection should run and if it should be
running before we get to 800,000KB(800MBG)? We are wondering if the
server
is just idle enough and the memory is not needed so garbage collection is
not running. We are receiving only about 70 applicants of the application
per day so I don't think the server is overwhelmed with traffic either.

If anyone has any thoughts on this I would certainly appriciate it.

Thanks!
Andy

May 18 '06 #2
Hi,

klar02 wrote:
We have a web server with 2GB of physical memory on it and we are seeing the
memory usage running over 800,000KB in Task Manager. We have seen instances
where the memory being this high(due to problems with ColdFusion) has caused
the server to hang but this server is not hanging. Can anyone give me a
little insight on when garbage collection should run and if it should be
running before we get to 800,000KB(800MBG)? We are wondering if the server
is just idle enough and the memory is not needed so garbage collection is
not running. We are receiving only about 70 applicants of the application
per day so I don't think the server is overwhelmed with traffic either.

If anyone has any thoughts on this I would certainly appriciate it.

Thanks!
Andy


This amount of memory lets me think that you have a memory leak
somewhere. We also had some in the beginning in our project, and had the
server hit 1GB RAM sometimes under stress conditions. The problem with
memory leak is that the GC cannot collect the garbage, as it is
circularly referenced. I recommend to check your code carefully for
circular references, etc... and to make sure that you release your
objects when they are not used anymore (sometimes simply setting them to
null helps). There are also tools available for this kind of search, but
I am not a specialist of them.

HTH,
Laurent
--
Laurent Bugnion, GalaSoft
Software engineering: http://www.galasoft-LB.ch
Private/Malaysia: http://mypage.bluewin.ch/lbugnion
Support children in Calcutta: http://www.calcutta-espoir.ch
May 21 '06 #3
also check the event log.
Note that objects having a .Dispose() really should be called before
releasing them.
Like the connection object:
oConn.Dispose();
oConn= null;
While setting to null is also done by the GC afaik.
"Laurent Bugnion" <lb******@bluewin.ch> schreef in bericht
news:44**********@news.bluewin.ch...
Hi,

klar02 wrote:
We have a web server with 2GB of physical memory on it and we are seeing
the
memory usage running over 800,000KB in Task Manager. We have seen
instances
where the memory being this high(due to problems with ColdFusion) has
caused
the server to hang but this server is not hanging. Can anyone give me a
little insight on when garbage collection should run and if it should be
running before we get to 800,000KB(800MBG)? We are wondering if the
server
is just idle enough and the memory is not needed so garbage collection is
not running. We are receiving only about 70 applicants of the
application
per day so I don't think the server is overwhelmed with traffic either.

If anyone has any thoughts on this I would certainly appriciate it.

Thanks!
Andy


This amount of memory lets me think that you have a memory leak somewhere.
We also had some in the beginning in our project, and had the server hit
1GB RAM sometimes under stress conditions. The problem with memory leak is
that the GC cannot collect the garbage, as it is circularly referenced. I
recommend to check your code carefully for circular references, etc... and
to make sure that you release your objects when they are not used anymore
(sometimes simply setting them to null helps). There are also tools
available for this kind of search, but I am not a specialist of them.

HTH,
Laurent
--
Laurent Bugnion, GalaSoft
Software engineering: http://www.galasoft-LB.ch
Private/Malaysia: http://mypage.bluewin.ch/lbugnion
Support children in Calcutta: http://www.calcutta-espoir.ch

May 21 '06 #4
Thanks everyone. We have been looking in to memory leaks but the fixes we
have made may not be helping hat much. I have also mentioned to the team
that any object that has a Dispose() method should have that method called
after it is used. I am not sure that we have fully exhausted our resources
on checking this. I don't suppose there is a real easy way to get a list of
objects that have a Dispose() method?

By the way, our traffic is probably low to medium.

Thanks Again everyone. We will look into your recommendations.

Andy

"Edwin Knoppert" <in**@pbsoft.speedlinq.nl> wrote in message
news:e4**********@azure.qinip.net...
also check the event log.
Note that objects having a .Dispose() really should be called before
releasing them.
Like the connection object:
oConn.Dispose();
oConn= null;
While setting to null is also done by the GC afaik.
"Laurent Bugnion" <lb******@bluewin.ch> schreef in bericht
news:44**********@news.bluewin.ch...
Hi,

klar02 wrote:
We have a web server with 2GB of physical memory on it and we are seeing the
memory usage running over 800,000KB in Task Manager. We have seen
instances
where the memory being this high(due to problems with ColdFusion) has
caused
the server to hang but this server is not hanging. Can anyone give me a little insight on when garbage collection should run and if it should be running before we get to 800,000KB(800MBG)? We are wondering if the
server
is just idle enough and the memory is not needed so garbage collection is not running. We are receiving only about 70 applicants of the
application
per day so I don't think the server is overwhelmed with traffic either.

If anyone has any thoughts on this I would certainly appriciate it.

Thanks!
Andy


This amount of memory lets me think that you have a memory leak somewhere. We also had some in the beginning in our project, and had the server hit
1GB RAM sometimes under stress conditions. The problem with memory leak is that the GC cannot collect the garbage, as it is circularly referenced. I recommend to check your code carefully for circular references, etc... and to make sure that you release your objects when they are not used anymore (sometimes simply setting them to null helps). There are also tools
available for this kind of search, but I am not a specialist of them.

HTH,
Laurent
--
Laurent Bugnion, GalaSoft
Software engineering: http://www.galasoft-LB.ch
Private/Malaysia: http://mypage.bluewin.ch/lbugnion
Support children in Calcutta: http://www.calcutta-espoir.ch


May 22 '06 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
by: Peter Kwan | last post by:
Hi, I believe I have discovered a bug in Python 2.3. Could anyone suggest a get around? When I tested my existing Python code with the newly released Python 2.3, I get the following warning: ...
6
by: Ganesh | last post by:
Is there a utility by microsoft (or anyone) to force garbage collection in a process without have access to the process code. regards Ganesh
8
by: Martin Maat | last post by:
I am puzzled. I have this object that uses a thread. The thread is encapsulated by the object, the object has Start and Stop methods to enable the client to start or stop the thread. I found...
8
by: mike2036 | last post by:
For some reason it appears that garbage collection is releasing an object that I'm still using. The object is declared in a module and instantiated within a class that is in turn instantiated by...
0
by: Kevin Jackson | last post by:
ASP.NET 1.1 running on Windows Server 2003 SP1 with .NET 1.1 SP1 Web apps are dual proc servers (actually they are quad processor servers using VMWare to host two dual proc virtual machines) ...
2
by: roger.dunham | last post by:
I am trying to identify whether a .NET 1.1 application that I have written has a memory leak. I thought I understood how .NET memory management worked, but it appears that there is more to it...
3
by: davemerkel | last post by:
Hi folks - wondering if anyone has any pointers on troubleshooting garbage collection. My colleagues and I are running into an interesting problem: Intermittently, we get into a situation where...
72
by: Sebastian Nibisz | last post by:
SGCL is precise, parallel garbage collection library for C++ (at this time for Windows 32/64 only). SGCL is free software published under University of Illinois/NCSA Open Source License. Get it...
158
by: pushpakulkar | last post by:
Hi all, Is garbage collection possible in C++. It doesn't come as part of language support. Is there any specific reason for the same due to the way the language is designed. Or it is...
2
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 7 Feb 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:30 (7.30PM). In this month's session, the creator of the excellent VBE...
0
by: DolphinDB | last post by:
The formulas of 101 quantitative trading alphas used by WorldQuant were presented in the paper 101 Formulaic Alphas. However, some formulas are complex, leading to challenges in calculation. Take...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
by: Aftab Ahmad | last post by:
Hello Experts! I have written a code in MS Access for a cmd called "WhatsApp Message" to open WhatsApp using that very code but the problem is that it gives a popup message everytime I clicked on...
0
by: Aftab Ahmad | last post by:
So, I have written a code for a cmd called "Send WhatsApp Message" to open and send WhatsApp messaage. The code is given below. Dim IE As Object Set IE =...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: marcoviolo | last post by:
Dear all, I would like to implement on my worksheet an vlookup dynamic , that consider a change of pivot excel via win32com, from an external excel (without open it) and save the new file into a...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.