Java is constantly evolving in terms of performance, allowing unchanged application code to run faster and faster with each new Java release.In this talk we will take a closer look at five recent performance improvements made in the JDK involving both the standard Java libraries, the JIT compiler, and in garbage collectors. We will explore some of the design considerations made and how performance is evaluated by the JDK developers in a world of conflicting optimization criterion and varying platform properties. One of the five improvements under the microscope is the newly introduced “MergeStore” feature of the JIT-complier allowing several write operations to an array to be merged into one single bulk operation. We will learn how this feature works, how much performance can improve, and how your code can take advantage of it by avoiding common pitfalls that would otherwise disable the feature altogether.
Presented by *Per-Ake Minborg* - Consulting Member of Technical Staff (Java Platform Group - Oracle) during *Devoxx Belgium* 2024 ➤ https://devoxx.be
Q&As with Per-Ake Minborg ➱ https://www.youtube.com/watch?v=uwB1rdSaGQY
Ask The Java Architects ➱ https://youtu.be/SPc9YpLsYo8?feature=shared
JEP 450: Compact Object Headers (Experimental) ➱ https://openjdk.org/jeps/450
JEP 474: ZGC: Generational Mode by Default ➱ https://openjdk.org/jeps/474
JDK-8318446 - C2: optimize stores into primitive arrays by combining values into larger store ➱ https://bugs.openjdk.org/browse/JDK-8318446
JDK-8340821 - Umbrella: Improve FFM bulk operation ➱ https://bugs.openjdk.org/browse/JDK-8340821
JDK-8180450 - Secondary_super_cache does not scale well ➱ https://bugs.openjdk.org/browse/JDK-8180450
JDK-8336856 - Efficient hidden class-based string concatenation strategy ➱ https://bugs.openjdk.org/browse/JDK-8336856
*Tags:* #Java #OpenJDK #Performance
Presented by *Per-Ake Minborg* - Consulting Member of Technical Staff (Java Platform Group - Oracle) during *Devoxx Belgium* 2024 ➤ https://devoxx.be
Q&As with Per-Ake Minborg ➱ https://www.youtube.com/watch?v=uwB1rdSaGQY
Ask The Java Architects ➱ https://youtu.be/SPc9YpLsYo8?feature=shared
JEP 450: Compact Object Headers (Experimental) ➱ https://openjdk.org/jeps/450
JEP 474: ZGC: Generational Mode by Default ➱ https://openjdk.org/jeps/474
JDK-8318446 - C2: optimize stores into primitive arrays by combining values into larger store ➱ https://bugs.openjdk.org/browse/JDK-8318446
JDK-8340821 - Umbrella: Improve FFM bulk operation ➱ https://bugs.openjdk.org/browse/JDK-8340821
JDK-8180450 - Secondary_super_cache does not scale well ➱ https://bugs.openjdk.org/browse/JDK-8180450
JDK-8336856 - Efficient hidden class-based string concatenation strategy ➱ https://bugs.openjdk.org/browse/JDK-8336856
*Tags:* #Java #OpenJDK #Performance