what is the gcc version? or do you know if memory thread pooling is enabled in 10.04
turning that off should resolve the memory bloat. On Fedora / RHEL it is an env var, should be able to google it for Ubuntu Carl. On 09/08/2011 01:30 PM, Jeff Armstrong wrote: > Ubuntu 10.04 > ________________________________________ > From: Carl Trieloff [[email protected]] > Sent: Thursday, September 08, 2011 12:25 PM > To: [email protected] > Subject: Re: qpidd using approx 10x memory > > What OS version? > > Carl. > > > On 09/08/2011 11:53 AM, Jeff Armstrong wrote: >> Does anyone have thoughts on this? Should this be submitted in the issue >> tracker? >> ________________________________________ >> From: Jeff Armstrong [[email protected]] >> Sent: Friday, August 26, 2011 3:08 PM >> To: [email protected] >> Subject: qpidd using approx 10x memory >> >> When filling up some queues, I noticed that the qpidd process was using >> about 10x the memory than was actually being used by the queues. To do a >> simple test on this I wrote a simple client that sends a bunch of messages >> that get stored in the queue, then compared the total byte depth with the >> memory used by qpidd. >> >> After sending 1 million messages, the byte count (using qpid-stat -q) showed >> 105MB, but checking the memory usage I saw 1.4GB (checked with htop and >> pmap). The messages were approximately 100 bytes large, so the byte count >> from qpid-stat makes sense. What doesn't make sense is that the total memory >> usage is over 10x as big. I checked the memory usage of qpidd before >> connecting with the client to send the messages and it was around 200MB, so >> there is still a discrepancy of about 1.1GB. These results also match with >> the original problem with an application I'm working on where qpidd used up >> all my memory (16GB) even though the queue sizes added up to about 1GB. >> >> I'm using version 0.10. Is this a known issue? I couldn't find it in the >> issue tracker. Any workarounds? >> >> >> Here is how I created the exchange/queues: >> $ ./qpid-config add exchange direct qvue >> $ ./qpid-config add queue testQueue >> $ ./qpid-config bind qvue testQueue testBind >> >> >> Here is the client code I used: >> #include <iostream> >> #include <qpid/client/Message.h> >> #include <qpid/client/Connection.h> >> #include <qpid/client/Session.h> >> >> using namespace std; >> using namespace qpid::client; >> >> int main(int argc, char** argv) { >> Connection connection; >> connection.open("127.0.0.1"); >> Session session = connection.newSession(); >> >> int count = 0; >> while(true) { >> Message msg; >> msg.setData("Hello World! 0123456789 abcdefghijklmnopqrstuvwxyz >> weeeeeeeeeeeeeooooooooooooooooooooooooooooooooooooooo!"); >> msg.getDeliveryProperties().setRoutingKey("testBind"); >> session.messageTransfer(qpid::client::arg::content=msg, >> qpid::client::arg::destination="testQueue"); >> count++; >> if (count % 1000 == 0) { >> cout << count << " messages sent" << endl; >> } >> } >> return 0; >> } >> >> >> Thanks, >> Jeff >> --------------------------------------------------------------------- >> Apache Qpid - AMQP Messaging Implementation >> Project: http://qpid.apache.org >> Use/Interact: mailto:[email protected] >> >> >> --------------------------------------------------------------------- >> Apache Qpid - AMQP Messaging Implementation >> Project: http://qpid.apache.org >> Use/Interact: mailto:[email protected] >> > > --------------------------------------------------------------------- > Apache Qpid - AMQP Messaging Implementation > Project: http://qpid.apache.org > Use/Interact: mailto:[email protected] > > > --------------------------------------------------------------------- > Apache Qpid - AMQP Messaging Implementation > Project: http://qpid.apache.org > Use/Interact: mailto:[email protected] > --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:[email protected]
