[jdk19] RFR: 8268398: 15% increase in JFR footprint in Noop-Base [v2]
Severin Gehwolf
sgehwolf at openjdk.org
Mon Jun 27 15:16:43 UTC 2022
On Fri, 17 Jun 2022 13:34:05 GMT, Erik Gahlin <egahlin at openjdk.org> wrote:
>> Hi,
>>
>> Could I have a review of a PR that skips bytecode instrumentation for container events and initialisation of Container.metrics() if the JVM isn't running in a container, or to be precise, if container support is not available. If a user specifies -XX:-UseContainerSupport, events are not emitted. This was the case before this PR, and maybe it should be fixed, but it's an enhancement and outside the scope of this bug.
>>
>> Testing:
>> - jdk/jdk/jfr
>> - Manual testing in a container.
>>
>> I tried to run test/hotspot/jtreg/containers/docker/TestJFREvents.java, but the test is broken (image can't be built, so test is skipped).
>>
>> This fix may not be sufficient to reduce footprint introduced by the container events, but [JDK-8282420: JFR: Remove event handlers](https://bugs.openjdk.org/browse/JDK-8282420) also reduced number of loaded classes which should reduce footprint in JDK 19. There are an ongoing enhancement work to generate bytecode and metadata at build time, which will help, but it will be integrated in JDK 20.
>>
>> Thanks
>> Erik
>
> Erik Gahlin has updated the pull request incrementally with one additional commit since the last revision:
>
> Update comment
src/jdk.jfr/share/classes/jdk/jfr/internal/JVM.java line 631:
> 629: * can't be emitted anyway.
> 630: */
> 631: public native boolean isContainerized();
@egahlin I'm not sure this comment is correct, given https://bugs.openjdk.org/browse/JDK-8261242 and friends. It'll return true on almost all Linux systems (with cgroups pseudo filesystem available).
-------------
PR: https://git.openjdk.org/jdk19/pull/31
More information about the hotspot-jfr-dev
mailing list