It seems that with 1.5.0_24 (not on 6uXX) there is a heap generation size calculation issue with either of the following commands.
java -Xmx2048m -Xms2048m -XX:PermSize=512m -XX:NewSize=400m -version
java -Xmx2048m -Xms2048m -XX:PermSize=512m -XX:NewSize=400m -XX:MaxNewSize=800m -version
Error output:
Error occurred during initialization of VM
Could not reserve enough space for object heap
Strangely, this command works fine:
java -Xmx2048m -Xms2048m -XX:PermSize=512m -XX:NewSize=400m -XX:MaxNewSize=400m -version
All three commands work in JDK 6. It seems that in 1.5.0_24 it cannot handle a MaxNewSize bigger than NewSize?
See comments.