From fd37714ea6b478a498335bfabb3b6ab66a98a88a Mon Sep 17 00:00:00 2001 From: Sue Chaplain Date: Tue, 2 Jul 2019 16:41:27 +0100 Subject: [PATCH] Add content for JEP 331 OpenJ9 now provides an implementation of JEP 331, which enables heap profiling with minimal resources. There are a couple of restrictions, which are documented. Closes: #284 Signed-off-by: Sue Chaplain --- docs/version0.15.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/docs/version0.15.md b/docs/version0.15.md index 0103d66ef3..33b0375307 100644 --- a/docs/version0.15.md +++ b/docs/version0.15.md @@ -33,6 +33,7 @@ - ![Start of content that applies only to Java 11 (LTS)](cr/java11.png) [ChaCha20 algorithm support for OpenSSL](#chacha20-algorithm-support-for-openssl)![End of content that applies only to Java 11 (LTS)](cr/java_close_lts.png) - [Support for OpenJDK HotSpot options](#support-for-openjdk-hotspot-options) - [Support for Transparent HugePage](#support-for-transparent-hugepage) +- ![Start of content that applies to Java 11 (LTS) and later](cr/java11plus.png) [Support for low-overhead heap profiling (JEP 331)](#support-for-low-overhead-heap-profiling)![End of content that applies only to Java 11 (LTS)](cr/java_close_lts.png) - [Removal of -Xdiagnosticscollector option](#removal-of-xdiagnosticscollector-option) @@ -69,6 +70,17 @@ For compatibility, the [`-XX:OnOutOfMemoryError`](xxonoutofmemoryerror.md) OpenJ The VM now supports the allocation of huge pages on Linux when you use the `madvise` (`/sys/kernel/mm/transparent_hugepage/enabled`) setting. To enable this feature, set [`-XX:+TransparentHugePage`](xxtransparenthugepage.md) on the command line when you start your application. This option is currently not enabled by default. +### ![Start of content that applies to Java 11 (LTS) and later](cr/java11plus.png) Support for low-overhead heap profiling + +[JEP 331](http://openjdk.java.net/jeps/331) provides a mechanism for sampling Java heap allocations with a low overhead via +the JVM Tool Interface (JVMTI). + + **Restrictions:** JEP 331 is implemented for OpenJ9 with the following limitations: + +- The `balanced` and `metronome` garbage collection policies are not supported. +- The JEP331 JVMTI agent and the Health Center agent both set a sampling interval, which by default is different. If both agents are used at the same time the Health Center agent will get incorrect results, unless the sampling intervals are adjusted to use the same value. +![End of content that applies only to Java 11 (LTS)](cr/java_close_lts.png) + ### Removal of -Xdiagnosticscollector option This option was redundant and has now been removed. If you try to use this option on the command line, the VM outputs this error message: