From thomas.schatzl at oracle.com Tue Oct 22 08:26:20 2024 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Tue, 22 Oct 2024 10:26:20 +0200 Subject: Porting request for JEP Reduce Latency of G1 Write Barriers Message-ID: <0e7ee9cf-87da-4706-982d-e08d2cfa732b@oracle.com> Hi all, we in the GC team have been experimenting with new post-write barriers for G1 to reduce the throughput difference between G1 and Parallel GC. After quite a few attempts we think we found a balanced solution between overall complexity and impact on throughput and latency. The JEP draft in [1] summarizes the new write barrier and other relevant changes; feel free to also chime in in the a public discussion thread [2] if there are any questions. Summarizing, throughput is always better or the same as before, sometimes getting very close to Parallel GC. There are no changes to latency with pause times being a bit better at the cost of some native memory. This email is mostly an advance notice that unfortunately the new write barrier is incompatible with the old one, so effort is required to make G1 work again on all platforms. Hence we would like to ask you to help us with them. We intend to post a PR containing the implementation in the next (one or two) weeks (for this CR [3]); our goal would be to merge sometime for (early?) JDK 25 together with all barrier changes completed. At Oracle we will as usual fully support the x64_64 and aarch64 platforms. There are (seemingly) working implementations for riscv, aarch32/arm, and x86, which would need further testing/checking, but completely missing are barriers for PPC and S390 (I tried my luck with those, but gave up a after a bit ...). Thanks in advance, Thomas [1] https://bugs.openjdk.org/browse/JDK-8342382 [2] https://mail.openjdk.org/pipermail/hotspot-gc-dev/2024-October/049944.html [3] https://bugs.openjdk.org/browse/JDK-8342382