Memmory size displayed near PS Eden Space is 639.5 MB WHILE JAVA_OPTS contains -Xms2558m -Xmx2558m
(2.5G) .
After creating seten.sh file , i add this line :
export JAVA_OPTS="-Dfile.encoding=UTF-8 -Xms2558m -Xmx2558m -XX:PermSize=2558m -XX:MaxPermSize=2558m -XX:+HeapDumpOnOutOfMemoryError
Then , i monitor the UI of Application server to check this increase of memory is for what
I was wondred: Why when i browse to my application why PS Old Gen remains stable while PS Eden Space consume memory quickly . However , Memmory size displayed near PS Eden Space is 639.5 MB .
When i set -Xms2558m
: Is it too much known that my app is a grails application(includes spring framework,spring security,...)
Several issues:
-Xms
sets the initial Heap space and has nothing to do with Eden space. That's what the JVM allocates on startup. If more is required, it allocates up to -Xmx
later, but this applies to the total heap space, not one of the GC generation spaces (those will be part of the heap)
You can configure the ratio of young and old generation with -XX:NewRatio=
. Check the documentation for your JVM, if it's Oracle's this might suffice, others might have better links. You'll find a lot of GC tutorials and articles all over the net.
When you read them: as far as I'm concerned, Young and Eden are often used synonymously.
A permanent generation space of 2.5G sounds like waaaaay too large - and you should use CATALINA_OPTS to set the tomcat configuration, not JAVA_OPTS.