Closed anssit closed 2 years ago
The default G1 garbage collector in Java 11 seems to cause unstable results. Using the Parallel collector (JDK8 default) gives similar results as previously. Data from local test runs:
Java8, ObjectSizeCalculator
- Test run length 30 min
- ##teamcity[buildStatisticValue key='list' value='76684']
- ##teamcity[buildStatisticValue key='editor' value='135488']
- ##teamcity[buildStatisticValue key='analytics' value='14708']
- 8 min 30 s
- ##teamcity[buildStatisticValue key='list' value='81376']
- ##teamcity[buildStatisticValue key='editor' value='138080']
- ##teamcity[buildStatisticValue key='analytics' value='18304']
- 11 min 30 s
- ##teamcity[buildStatisticValue key='list' value='81936']
- ##teamcity[buildStatisticValue key='editor' value='133472']
- ##teamcity[buildStatisticValue key='analytics' value='16470']
- 12 min
- ##teamcity[buildStatisticValue key='list' value='80560']
- ##teamcity[buildStatisticValue key='editor' value='138296']
- ##teamcity[buildStatisticValue key='analytics' value='19078']
- 16 min
- ##teamcity[buildStatisticValue key='list' value='81376']
- ##teamcity[buildStatisticValue key='editor' value='138304']
- ##teamcity[buildStatisticValue key='analytics' value='13932']
Java8, JAMM
- 12 min
- ##teamcity[buildStatisticValue key='list' value='81392']
- ##teamcity[buildStatisticValue key='editor' value='134032']
- ##teamcity[buildStatisticValue key='analytics' value='13352']
- 7 min
- ##teamcity[buildStatisticValue key='list' value='81928']
- ##teamcity[buildStatisticValue key='editor' value='138360']
- ##teamcity[buildStatisticValue key='analytics' value='18800']
- 10 min 30 s
- ##teamcity[buildStatisticValue key='list' value='87192']
- ##teamcity[buildStatisticValue key='editor' value='139168']
- ##teamcity[buildStatisticValue key='analytics' value='15489']
Java11, JAMM
- 28 min 30 s
- ##teamcity[buildStatisticValue key='list' value='89652']
- ##teamcity[buildStatisticValue key='editor' value='112276']
- ##teamcity[buildStatisticValue key='analytics' value='4608']
- 32 min
- ##teamcity[buildStatisticValue key='list' value='52430']
- ##teamcity[buildStatisticValue key='editor' value='110254']
- ##teamcity[buildStatisticValue key='analytics' value='3819']
- 29 min
- ##teamcity[buildStatisticValue key='list' value='57812']
- ##teamcity[buildStatisticValue key='editor' value='124518']
- ##teamcity[buildStatisticValue key='analytics' value='6601']
- 27 min
- ##teamcity[buildStatisticValue key='list' value='81000']
- ##teamcity[buildStatisticValue key='editor' value='124870']
- ##teamcity[buildStatisticValue key='analytics' value='52256'] -> FAIL!
Java11, JAMM, -XX:+UseParallelGC
- 25 min
- ##teamcity[buildStatisticValue key='list' value='79192']
- ##teamcity[buildStatisticValue key='editor' value='130579']
- ##teamcity[buildStatisticValue key='analytics' value='14443']
- 13 min 30 s
- ##teamcity[buildStatisticValue key='list' value='80408']
- ##teamcity[buildStatisticValue key='editor' value='136848']
- ##teamcity[buildStatisticValue key='analytics' value='32606']
- 11 min
- ##teamcity[buildStatisticValue key='list' value='79504']
- ##teamcity[buildStatisticValue key='editor' value='135088']
- ##teamcity[buildStatisticValue key='analytics' value='25955']
- 23 min
- ##teamcity[buildStatisticValue key='list' value='80528']
- ##teamcity[buildStatisticValue key='editor' value='136088']
- ##teamcity[buildStatisticValue key='analytics' value='15764']
Description
ObjectSizeCalculator
used in memory measurement tests was removed in JDK9. To run the tests on JDK11, an alternative memory measurement tool was needed.This PR replaces
ObjectSizeCalculator
with "Java Agent for Memory Measurements", jamm.Type of change
Checklist