Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I am using 32bit Intellij on my 32bit windows XP with 4 GB of RAM.
I am attempting to increase intellij xmx to 1.5GB : -Xmx1500m
So I know JVM support 1.5GB of RAM in 32bit systems.
But this error throws from JVM :

The JVM could not be started. The maximum heap size (-Xmx) might be too large ...

I can't increase intellij Xmx more than 900MB
Please help me!

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
950 views
Welcome To Ask or Share your Answers For Others

1 Answer

You can't do it as JVM needs to allocate all the heap in a single continuous chunk, which may not be possible because of the memory fragmentation. See my FAQ article for more details.

See also this picture:

JVM heap

As you can notice, total process memory is not just the heap size, making it much easier to hit the 2GB OS limit.

The actual heap that can be used varies on the OS configuration and on other applications that are running (DLLs with hooks inject into process space and cause additional fragmentation). Usually it's somewhere between 512M and 1G, but can be higher on a clean system.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...