[geeks] Upper Memory Limit - Java

Doug McLaren dougmc at frenzied.us
Wed Jan 30 11:34:08 CST 2008


On Tue, Jan 29, 2008 at 01:56:46PM -0800, Brian Dunbar wrote:

| We have an EDI program (it's new) that blows up when 'many large files'*
| are run through it.
| 
| But I'm not here to complain about that.  During troubleshooting the
| vendor rep mentioned that Java has an upper memory limit and you can't
| allocate any more memory to it than X.
| 
| Indeed we're giving the JVM 3850m of ram on startup
| 
| /vendor-dir/bin/java -Xms3850m -Xmx3850m
| 
| And it won't start with any more than that.
| 
| But .. an upper memory limit on Java?  I can believe there is a point past
| where it's simply not wise to allocate ram but .. is she mis-informed?

No, she's not.  Though it's generally not about `not being wise' -- it
just breaks.

32 bit JVMs tend to blow up with -Xmx set at 2 GB or higher.  Of
course, in general, on a 32 bit platform, no process can allocate more
than 4 GB of memory, and your OS has to jump through some hoops to
even have that much memory available.

For 64 bit JVMs, I don't know.  I would expect any hard coded memory
limits to be huge, but I haven't really done much with them.

I'm surprised you can get up to 3850m -- but no higher.  Which JVM is
that?  What OS, platform?

-- 
Doug McLaren, dougmc at frenzied.us
If ignorance is bliss, why aren't there more happy people in the world?



More information about the geeks mailing list