Memory Accounting, JDKs [was: Re: [Techtalk] Java on Linux]

Kathryn Hogg kjh at
Thu Jan 10 17:56:50 EST 2002

> When I run the client and the server both on the same machine (for
> internal testing), along with the GUI, I am up to 241M memory used, 118
> Java 'processes' (according to ps).

Each thread looks like a separate process on Linux.

Have you tried analyzing how memory a do-nothing java app takes up to get a
baseline of the JVM footprint?

> Using ps, I can get the RSS and the VSZ of the java processes, but that
> doesn't really look correct -- each of them say 200+M, which is
> impossible since I only have 256M RAM.

They are probably are reporting some shared statistics since they are
running in the same address space.  Differences are probably related the
high water mark in each threads stack or something similar.

> So there is some shared memory going on, which I don't really care about.
> What I want is a way to find out how much memory each of the 3 JVM
> incarnations (client, server, GUI) is taking up individually. I will also
> include how much memory they have 'reserved' (including shared memory)
> which appears to be what
> I'm getting now. Any ideas?

start with none of those running an take a look at your system level amount
of free virtual memory.  Start up one component, run it through some paces,
and see how your memory utilization drops. The difference between the  two
is a rough idea of how much memory it is using.  Repeat for the other two


More information about the Techtalk mailing list