Foren

setting JVM heap size in 64bit JVM

thumbnail
Sreeraj AV, geändert vor 11 Jahren.

setting JVM heap size in 64bit JVM

Regular Member Beiträge: 239 Beitrittsdatum: 27.04.10 Neueste Beiträge
Below is the system details. This server is dedicated to Liferay portal. I need to change the JVM heap size. Can anyone please tell me what is the optimal heap size i can provide for this particular JVM?

Processor: Intel(R) Xeon(R) CPU E5645 @ 2.40GHz , dual core- 64bit
Memory : 6GB
OS : Linux 64bit
Java : java version "1.6.0_21-ea" 64bit
thumbnail
Sagar A Vyas, geändert vor 11 Jahren.

RE: setting JVM heap size

Liferay Master Beiträge: 679 Beitrittsdatum: 17.04.09 Neueste Beiträge
Sreeraj AV:
Below is the system details. This server is dedicated to Liferay portal. I need to change the JVM heap size. Can anyone please tell me what is the optimal heap size i can provide for this particular JVM?

Processor: Intel(R) Xeon(R) CPU E5645 @ 2.40GHz , dual core- 64bit
Memory : 6GB
OS : Linux 64bit
Java : java version "1.6.0_21-ea" 64bit


Hi Sreeraj,

You can edit setenv.sh located in "tomcat-New\tomcat-6.0.32\bin"

-Xmx1024m -XX:MaxPermSize=256m" change it to -Xmx1024m -XX:MaxPermSize=512m"

Hope this help.

Thanks,
Sagar Vyas
Chintan Akhani, geändert vor 11 Jahren.

RE: setting JVM heap size

Regular Member Beiträge: 111 Beitrittsdatum: 13.03.08 Neueste Beiträge
As you have 6 GB memory allocated for liferay instance only, so you can increase heap size upto 4 GB.
thumbnail
Sreeraj AV, geändert vor 11 Jahren.

RE: setting JVM heap size

Regular Member Beiträge: 239 Beitrittsdatum: 27.04.10 Neueste Beiträge
Chintan Akhani:
As you have 6 GB memory allocated for liferay instance only, so you can increase heap size upto 4 GB.




Thanks for your reply. How you are telling 4GB? is there any procedure or best practices to determine the heap size value? Can you please explain..
Linus Sphinx, geändert vor 11 Jahren.

RE: setting JVM heap size

Junior Member Beiträge: 99 Beitrittsdatum: 12.08.10 Neueste Beiträge
I use apache bench or http_load if non-ssl to simulate a bunch of users banging on the site while monitoring the memory usage in jvisualvm remotely and adjust accordingly til I get the behavior desired.
Given your hardware I'd assume you'll need some resources for other apps like backup etc. and recommend for a starting point a setenv.sh of;
JAVA_OPTS="$JAVA_OPTS -XX:NewSize=700m -XX:MaxNewSize=700m -Xms2560m -Xmx2560m -XX:MaxPermSize=512m -Dfile.encoding=UTF8 -Duser.timezone=GMT -Dorg.apache.catalina.loader.WebappClassLoader.ENABLE_CLEAR_REFERENCES=false -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:SurvivorRatio=20 -XX: ParallelGCThreads=8"

concatenate this to the above string to enable JMX;
 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=33100
thumbnail
Mika Koivisto, geändert vor 11 Jahren.

RE: setting JVM heap size in 64bit JVM (Antwort)

Liferay Legend Beiträge: 1519 Beitrittsdatum: 07.08.06 Neueste Beiträge
Heap is not absolute amount of memory your java process will take. There's several factors and I've quite recently explained them in my blog post: Why is my java process taking more memory than I gave it?
thumbnail
Sagar A Vyas, geändert vor 11 Jahren.

RE: setting JVM heap size in 64bit JVM

Liferay Master Beiträge: 679 Beitrittsdatum: 17.04.09 Neueste Beiträge
Hi Mika,

Good Sharing,
@Sreeraj : you can follow given formula.
(-Xmx) + (-XX:MaxPermSize) + numberofthreads * (-Xss) + Other mem

Thanks,
Sagar Vyas
thumbnail
Sreeraj AV, geändert vor 11 Jahren.

RE: setting JVM heap size in 64bit JVM

Regular Member Beiträge: 239 Beitrittsdatum: 27.04.10 Neueste Beiträge
Thanks Mika..

Mika Koivisto:
Heap is not absolute amount of memory your java process will take. There's several factors and I've quite recently explained them in my blog post: Why is my java process taking more memory than I gave it?
thumbnail
Mika Koivisto, geändert vor 11 Jahren.

RE: setting JVM heap size in 64bit JVM

Liferay Legend Beiträge: 1519 Beitrittsdatum: 07.08.06 Neueste Beiträge
The maximum heap certainly isn't 4GB on a 64bit system. You can increase it well beyond that but doing so may adversely affect the performance of the application because of longer full garbage collection times.
Linus Sphinx, geändert vor 11 Jahren.

RE: setting JVM heap size in 64bit JVM

Junior Member Beiträge: 99 Beitrittsdatum: 12.08.10 Neueste Beiträge
Mika Koivisto:
The maximum heap certainly isn't 4GB on a 64bit system. You can increase it well beyond that but doing so may adversely affect the performance of the application because of longer full garbage collection times.

Must have been thinking 32 bit, thank you. GC is also tunable.
-XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:SurvivorRatio=20 -XX: ParallelGCThreads=8