Skip to content
This repository has been archived by the owner on Oct 18, 2018. It is now read-only.

[che-server] Tune for 32bit JDK. #76

Merged
merged 1 commit into from
Dec 15, 2017

Conversation

jerboaa
Copy link
Contributor

@jerboaa jerboaa commented Nov 23, 2017

Remove MaxRAMFraction=2 since this would turn out
to be too little heap for a memory limit of 300MB (i.e. 150MB).
Explicitly set MaxHeapSize=256m instead.

Che server VmRSS shows up to be ~240 to ~250MB with 32bit
OpenJDK and other tunings in place. Thus, I've done the exercise
of trying to squeeze che-server into a 300MB limit which seems to
work.

@fabric8cd
Copy link
Contributor

@jerboaa
Copy link
Contributor Author

jerboaa commented Nov 23, 2017

This PR depends on redhat-developer/rh-che#458 which prepares the che image for this to work. In order to test this with a build I've done use #77.

Remove MaxRAMFraction=2 since this would turn out
to be too inflexible for a memory limit of 300MB (i.e. 150MB).
Explicitly set MaxHeapSize=180m instead.

Adjust other GC parameters so as to not delay server boot-up
too much.

Che server VmRSS shows up to be ~240 to ~250MB with 32bit
OpenJDK and other tunings in place.
@jerboaa jerboaa force-pushed the che_server_32bit_jdk branch from 26a67a1 to 5825b89 Compare November 24, 2017 14:45
@fabric8cd
Copy link
Contributor

@jerboaa
Copy link
Contributor Author

jerboaa commented Nov 27, 2017

Here is a screenshot of this running in my tenant:
osio_che_server_32bit_openjdk_tuned

This will increase boot-up time of the che pod a little: Ball-park 80secs to 100secs if those numbers printed by Tomcat are anything to go by. Setting -XX:MaxHeapFreeRatio=50 gives roughly the same boot-up time than currently deployed but hurts VmRSS. It's a trade-off to make. Since che-server is mostly long running I've opted for the better long-term memory footprint option.

@l0rd l0rd merged commit ef748b6 into fabric8-services:master Dec 15, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants