How to make a java memory dump - VMS

This is a discussion on How to make a java memory dump - VMS ; Hello, I'm using Java based applications that are running as a detached process on OpenVMS (Alpha and I64) I use Java version 1.5. The java applications consume a lot of memory. Is it possible to make a memory dump of ...

+ Reply to Thread
Results 1 to 7 of 7

Thread: How to make a java memory dump

  1. How to make a java memory dump

    Hello,

    I'm using Java based applications that are running as a detached
    process on OpenVMS (Alpha and I64)
    I use Java version 1.5.
    The java applications consume a lot of memory.

    Is it possible to make a memory dump of all Java classes so I can find
    out which java objects are using the all the RAM memory?

    /Toine

  2. Re: How to make a java memory dump

    On Sat, 18 Oct 2008 16:45:11 -0700, wrote:

    > Hello,
    >
    > I'm using Java based applications that are running as a detached
    > process on OpenVMS (Alpha and I64)
    > I use Java version 1.5.
    > The java applications consume a lot of memory.


    Duh.
    >
    > Is it possible to make a memory dump of all Java classes so I can find
    > out which java objects are using the all the RAM memory?


    They all do.

    >
    > /Toine




    --
    PL/I for OpenVMS
    www.kednos.com

  3. Re: How to make a java memory dump

    tdirven@volvocars.com wrote:
    > I'm using Java based applications that are running as a detached
    > process on OpenVMS (Alpha and I64)
    > I use Java version 1.5.
    > The java applications consume a lot of memory.
    >
    > Is it possible to make a memory dump of all Java classes so I can find
    > out which java objects are using the all the RAM memory?


    If you run the Java program with:

    $ java "-Xverbosegc:heap" "-Xverbosegc:file:Foobar.lis" "Foobar"

    then you will get a lot of information about which classes are
    using the heap space.

    Arne

  4. Re: How to make a java memory dump

    In article , tdirven@volvocars.com writes:
    > Hello,
    >
    > I'm using Java based applications that are running as a detached
    > process on OpenVMS (Alpha and I64)
    > I use Java version 1.5.
    > The java applications consume a lot of memory.
    >
    > Is it possible to make a memory dump of all Java classes so I can find
    > out which java objects are using the all the RAM memory?


    The JRE tends to map things it wants to look at and never let them
    go. This includes all the classes that are used once.


  5. Re: How to make a java memory dump

    Bob Koehler wrote:
    >
    > In article , tdirven@volvocars.com writes:
    > > Hello,
    > >
    > > I'm using Java based applications that are running as a detached
    > > process on OpenVMS (Alpha and I64)
    > > I use Java version 1.5.
    > > The java applications consume a lot of memory.
    > >
    > > Is it possible to make a memory dump of all Java classes so I can find
    > > out which java objects are using the all the RAM memory?

    >
    > The JRE tends to map things it wants to look at and never let them
    > go. This includes all the classes that are used once.


    Hhmmm... Sems to reflect AIX's paradigm of memory utilization: keep
    everything in memory until you know that something else is more
    important.

    D.J.D.

  6. Re: How to make a java memory dump

    In article <48FE67F1.3BA52241@spam.comcast.net>, David J Dachtera writes:
    >
    > Hhmmm... Sems to reflect AIX's paradigm of memory utilization: keep
    > everything in memory until you know that something else is more
    > important.


    I think the guys that wrote the JRE just figured your OS would
    provide sufficient virtual memory for whatever they wanted to do.

    And file access while looking for classes seems to be a real
    performance issue, so they wanted not to close them. The search
    paths can get quite deep once you realise a lot of them are inside
    compressed .jar files.


  7. Re: How to make a java memory dump

    tdirven@volvocars.com wrote:
    > Hello,
    >
    > I'm using Java based applications that are running as a detached
    > process on OpenVMS (Alpha and I64)
    > I use Java version 1.5.
    > The java applications consume a lot of memory.
    >
    > Is it possible to make a memory dump of all Java classes so I can find
    > out which java objects are using the all the RAM memory?
    >
    > /Toine


    Toine,

    When running on IA64, you can get a heap dump in several ways. For
    example, you can add one of these options to your Java command line:
    -XX:+HeapDump or -XX:+HeapDumpOnCtrlBreak. The first option will
    produce a text format heap dump, and the second will produce a binary
    format heap dump. Next, define one of the logicals
    JAVA$ENABLE_SIGQUIT_CTRLC or JAVA$ENABLE_SIGQUIT_MAILBOX. There is more
    information about these logicals in the user guide. If you were using
    JAVA$ENABLE_SIGQUIT_CTRLC, when you type ^C, the JVM will produce a heap
    dump file. An alternative would be to use hprof, by adding
    -agentlib:hprof=heap=dump, which will produce a heap dump when your Java
    progam exits.

    You can analyze the heap dump using the HPjmeter tool, available from
    http://www.hp.com/go/hpjmeter. Also on IA64, you can use the
    -Xverbosegc option to generate a data file containing information about
    garbage collections. HPjmeter can analyze this file too.

    Jeff

+ Reply to Thread