Memory Accounting, JDKs [was: Re: [Techtalk] Java on Linux]
colby at wsu.edu
Thu Jan 10 15:02:18 EST 2002
I have a related question and some background that you all might be able
My company develops a distributed security monitoring system in Java. The
"head" of the distributed "tree" is a linux box running both the
head-specific 'server' code and the common tree 'client' code. It can also
run the GUI code (used to monitor the system) although it will not be
shipped this way (the GUI code can be run anywhere that can connect to
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). This seems like a lot, but we want to
track down whether it is the client code or the server code that is doing
the busywork with memory.
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. 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
Also, I am wondering if the memory usage/number of spawned
threads/processes would drop if we were to use IBM or Sun's JDK over
Blackdown. The main reason we're using Blackdown is because we use debian
and blackdown provides apt-getable binaries. Any thoughts here?
At 09:56 on Jan 10, Aaron Mulder combined all the right letters to say:
> Well, I can't speak for FreeBSD, but I do Java development on
> Linux for work, so I can at least help get up and running there.
> (According to Google, a FreeBSD JDK is available via "ports", and a native
> JDK may be included in the forthcoming FreeBSD 4.5)
More information about the Techtalk