[olug] Re: OJUG Re: Commanding java_vm to give memory back to the OS?
jeffsheets at gmail.com
Sat Jan 28 21:13:00 UTC 2006
I also believe that the M (for MB) should be lowercase. As in:
Eclipse requires you to do this:
So you'll want to look for a special vm flag for whatever program your
-- Jeff Sheets
On 1/28/06, Rob Townley <rob.townley at gmail.com> wrote:
> thanks for the Xms tip, after doing various searches for Xms, i also
> found Xmx, which sets the maximum size. I tried setting the following
> "-Xms8M -Xmx64M" parameters in the ./ControlPanel, thinking this would
> set the minimum size to 8M and the max to 64M. I rebooted. The
> java_vm memory usage has not changed, still using 270MB.
> JRE 1.5.0_06 /usr/lib/j2se/jre1.5.0_06 -Xms8M -Xmx64M
> I guess the next step is to figure out how to prints out the command
> line parameters to verify whether or not the XMS and XMX parameters
> are actually seen.
> On 1/25/06, Matt Secoske <secoskem at gmail.com> wrote:
> > To see what the JVM thinks is free or total memory, look at the
> > java.lang.Runtime javadocs for the freeMemory() and totalMemory() methods.
> > The only thing you can do to free up memory is to call Runtime.gc().
> > Unfortunately this will run at its discretion, and may or maynot (or
> > both!!!) free up memory.
> > You may also want to lower the minimum amount of memory the JVM holds: when
> > starting the JVM pass it the -XMS parameter with a value of, say 16M (for 16
> > megabytes). (i.e. java -XMS16M matt.MyClass)
> > There are some other command line options to reduce memory/control the
> > garbage collector... overall its best to leave those alone unless you know
> > exactly what you are doing.
> > - Matt
> > On 1/25/06, Rob Townley <rob.townley at gmail.com> wrote:
> > >
> > > According to the "KDE System Guard" process list, my java_vm is
> > > using 276MegaBytes of memory. I only have 256MB of physical ram, so
> > > my harddrive is swapping like crazy and wasting battery life. I
> > > opened the java console and ran garbage collection, but the console
> > > says java is using less than 4MB of RAM. I know for certain, that
> > > there are no Java applets running, so it should be using zero. How
> > > can i command JAVA to give the memory back to the operating system
> > > that it is not using?
> > >
> > > At one time, there was NOT a standard C function to actually tell
> > > the C runtime to give the memory back to the OS. The C runtime would
> > > keep the memory even though you had freed it. But some operating
> > > systems have a non standard call to free the memory.
> > >
> > > 256MB RAM
> > > Java 1.5
> > > FireFox 1.5
> > > Debian Linux with 2.6 Kernel
> > >
> > --
> > Matt Secoske
> > http://www.secosoft.net
More information about the OLUG