JDK-8232051 : Epsilon should warn about Xms/Xmx/AlwaysPreTouch configuration
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 11,13,14
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2019-10-09
  • Updated: 2020-06-01
  • Resolved: 2019-10-15
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 11 JDK 13 JDK 14
11.0.6Fixed 13.0.2Fixed 14 b19Fixed
Sub Tasks
JDK-8237016 :  
Description
See here:
 https://stackoverflow.com/a/58292061/2613885

This is arguably the UX bug: users expect low latency, but may not be aware that additional configuration is needed for GCs to perform well in those conditions. Epsilon already enables LSM, and should warn about Xms/Xmx/AlwaysPreTouch config too. It cannot adjust these settings, though, because it would affect startup time -- users would have to opt-in.

Sample patch:
 http://cr.openjdk.java.net/~shade/8232051/webrev.01/

Emits these warnings:
 [0.001s][warning][gc] Consider setting -Xms equal to -Xmx to avoid resizing hiccups
 [0.001s][warning][gc] Consider adding -XX:+AlwaysPreTouch to avoid memory commit hiccups

These warnings can be shunned by overriding the default logging level with -Xlog:gc=error.
Comments
Fix Request (11u) This improves Epsilon usability in the low-latency baseline scenarios. Patch does not apply cleanly to 11u due to missing JDK-8214799. 11u RFR: https://mail.openjdk.java.net/pipermail/jdk-updates-dev/2019-October/002018.html
15-10-2019

Fix Request (13u) This improves Epsilon usability in the low-latency baseline scenarios. Patch applies cleanly to 13u, passes gc/epsilon in fastdebug and release. (These tests are also part of tier1).
15-10-2019

URL: https://hg.openjdk.java.net/jdk/jdk/rev/10db6989907f User: shade Date: 2019-10-15 18:00:06 +0000
15-10-2019