karaf-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bram Pouwelse <b...@pouwelse.com>
Subject Re: Memory usage
Date Mon, 22 Oct 2012 09:33:41 GMT
I ran some tests last weekend and need to investigate further but it
seems that the application consumes more memory when I'm using the
Oracle JVM than when I use the OpenJDK JVM.

I've attached a weekly overview graph the first "mountain" is the run
from the first message in this thread,
The second is just a restart of the JVM to see what happens when I
don't use the application at all
The third is heavy usage on the Oracle JVM
The is heavy usage on the OpenJDK JVM

(heavy usage 5 j-meter threads continuously running)


2012/10/17 Bram Pouwelse <bram@pouwelse.com>:
> I don't think the problem is in karaf or pax-wicket, based on previous
> smaller projects. It's just that I didn't figure out where the gap between
> JVM memory usage and java process memory usage is coming from. I was hoping
> someone had seen something like this before to point me in the right
> direction.
>
>
> 2012/10/17 Achim Nierbeck <bcanhome@googlemail.com>
>>
>> After taking a closer look at your image,
>> are you sure you are using about 900M of PermSpace?
>> Also it seems the application is using about 700M of non Heap Memory
>> (native code)
>> So depending on your Memory Parameters for the JVM I'd say it looks a
>> lot like it uses this much.
>> Just recently I had a little web application with pax-wicket and karaf
>> that only took about 600 MB, so I'd say this shouldn't be the cause :)
>>
>> regards, Achim
>>
>> 2012/10/17 Bram Pouwelse <bram@pouwelse.com>:
>> > The server is running Ubuntu 12.04
>> >
>> > I was just reading about native memory usage by java nio, I'm not doing
>> > any
>> > nio stuff myself the application is based on Apache Karaf, Pax Wicket,
>> > OpenJPA, PostgreSQL.
>> >
>> >
>> >
>> >
>> >
>> > 2012/10/17 Achim Nierbeck <bcanhome@googlemail.com>
>> >>
>> >> wait, you have a JVM process that take about 4GB Ram but have a
>> >> Heap-usage of 400MB.
>> >> Do you have any kind of Native Code connected?
>> >> And which OS are you running on?
>> >>
>> >> 2012/10/17 Bram Pouwelse <bram@pouwelse.com>:
>> >> > I've used eclipse memory analyzer a few times before and I've used
it
>> >> > to
>> >> > analyze this problem. I've found a small leak which takes about 100
>> >> > MB
>> >> > of a
>> >> > total of the 400 MB heap space used, but the java process is growing
>> >> > from 1
>> >> > GB to 4GB in the same period of time.
>> >> >
>> >> > Regards,
>> >> > Bram
>> >> >
>> >> >
>> >> > 2012/10/17 Achim Nierbeck <bcanhome@googlemail.com>
>> >> >>
>> >> >> Did you try to analyze your dump with the eclipse memory analyzer,
>> >> >> it's pretty slick tool for this
>> >> >> and it'll show you possible memory leaks quite fast ...
>> >> >>
>> >> >> regards, Achim
>> >> >>
>> >> >> 2012/10/17 Bram Pouwelse <bram@pouwelse.com>:
>> >> >> > Hi JB,
>> >> >> >
>> >> >> > Thanks for the quick response!
>> >> >> >
>> >> >> > Sorry, forgot to mention I have a dump created using jmap
(jmap
>> >> >> > -dump:format=b,file=wolkje.hprof 992). The resulting file
is 975M,
>> >> >> > when
>> >> >> > analyzing this dump with Memory Analyzer
>> >> >> >
>> >> >> > Overview:
>> >> >> > Details
>> >> >> > Size: 377.9 MB Classes: 11.1k Objects: 10.6m
>> >> >> >
>> >> >> > Dominator tree:
>> >> >> > Class Name
>> >> >> > | Shallow Heap | Retained Heap | Percentage
>> >> >> >
>> >> >> >
>> >> >> >
>> >> >> > ------------------------------------------------------------------------------------------------------------------------
>> >> >> > org.apache.felix.framework.ModuleImpl$ModuleClassLoaderJava5
@
>> >> >> > 0xc0f793e8
>> >> >> > |           80 |   199,482,536 |     50.34%
>> >> >> > nl.ditp.fabuland.chart.googleviz.core.state.ChartSessionManager
@
>> >> >> > 0xc0f55b58|           16 |   104,510,648 |     26.37%
>> >> >> > nl.ditp.ricoh.dataprovider.internal.RicohDataSourceServiceImpl
@
>> >> >> > 0xc1c648f0
>> >> >> > |           24 |    22,419,768 |      5.66%
>> >> >> >
>> >> >> >
>> >> >> >
>> >> >> > ------------------------------------------------------------------------------------------------------------------------
>> >> >> >
>> >> >> >
>> >> >> > The consumed heap seems to be the same as in the jvm metrics
>> >> >> > displayed
>> >> >> > in
>> >> >> > the monitoring software.
>> >> >> >
>> >> >> > Regards,
>> >> >> > Bram
>> >> >> >
>> >> >> >
>> >> >> > 2012/10/17 Jean-Baptiste Onofré <jb@nanthrax.net>
>> >> >> >>
>> >> >> >> Hi Bram,
>> >> >> >>
>> >> >> >> could you take a dump (dev:create-dump for instance) ?
>> >> >> >>
>> >> >> >> Regards
>> >> >> >> JB
>> >> >> >>
>> >> >> >>
>> >> >> >> On 10/17/2012 04:29 PM, Bram Pouwelse wrote:
>> >> >> >>>
>> >> >> >>> Hi,
>> >> >> >>>
>> >> >> >>> I'm developing an application that using Pax Wicket
running on
>> >> >> >>> Apache
>> >> >> >>> Karaf. I'm having a memory usage issue that I don't
really
>> >> >> >>> understand,
>> >> >> >>> I've attached screenshot from server monitoring.
>> >> >> >>>
>> >> >> >>> At the moment of the screenshot the server memory
is almost
>> >> >> >>> completely
>> >> >> >>> consumed by the java process (the coloured graph displays
the
>> >> >> >>> server
>> >> >> >>> memory usage) and the growth in the memory usage is
almost
>> >> >> >>> linear.
>> >> >> >>> But
>> >> >> >>> when I look at the JVM metrics the memory consumption
doesn't
>> >> >> >>> grow
>> >> >> >>> in
>> >> >> >>> the same linear way.
>> >> >> >>>
>> >> >> >>> Is there an explanation for the gap between the memory
usage in
>> >> >> >>> the
>> >> >> >>> JVM
>> >> >> >>> metrics and the memory used by the java process?
>> >> >> >>>
>> >> >> >>> I'm using Karaf 2.2.9 and java 1.6.0_35
>> >> >> >>>
>> >> >> >>> Thanks,
>> >> >> >>>
>> >> >> >>> Bram Pouwelse
>> >> >> >>>
>> >> >> >>>
>> >> >> >>
>> >> >> >> --
>> >> >> >> Jean-Baptiste Onofré
>> >> >> >> jbonofre@apache.org
>> >> >> >> http://blog.nanthrax.net
>> >> >> >> Talend - http://www.talend.com
>> >> >> >
>> >> >> >
>> >> >>
>> >> >>
>> >> >>
>> >> >> --
>> >> >>
>> >> >> Apache Karaf <http://karaf.apache.org/> Committer & PMC
>> >> >> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/>
>> >> >> Committer & Project Lead
>> >> >> OPS4J Pax for Vaadin
>> >> >> <http://team.ops4j.org/wiki/display/PAXVAADIN/Home> Commiter
&
>> >> >> Project
>> >> >> Lead
>> >> >> blog <http://notizblog.nierbeck.de/>
>> >> >
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >>
>> >> Apache Karaf <http://karaf.apache.org/> Committer & PMC
>> >> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/>
>> >> Committer & Project Lead
>> >> OPS4J Pax for Vaadin
>> >> <http://team.ops4j.org/wiki/display/PAXVAADIN/Home> Commiter &
Project
>> >> Lead
>> >> blog <http://notizblog.nierbeck.de/>
>> >
>> >
>>
>>
>>
>> --
>>
>> Apache Karaf <http://karaf.apache.org/> Committer & PMC
>> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/>
>> Committer & Project Lead
>> OPS4J Pax for Vaadin
>> <http://team.ops4j.org/wiki/display/PAXVAADIN/Home> Commiter & Project
>> Lead
>> blog <http://notizblog.nierbeck.de/>
>
>

Mime
View raw message