|
|
|
Back to newsletter 231 contents
Before getting on to the main newsletter subject, I wanted to point out that I have published a useful article on modern GC tuning, more on that next month.
Back to this month - I'm listing all the new performance features in the upcoming release of Java 14 (I have done this every 6 months prior to each new release, you can track back to the previous February and August newsletters if you want to see what's new performance-wise in any release). As usual I give the new features, the performance benefits from each feature, and how to use the feature.
For this Java 14 new feature set, there are lots of improvements (eg in GC) that might make you try it, and a couple of interesting alpha features (records and foreign memory access) but actually only one new delivered performance feature that seems really significant: JFR event streaming. JFR event streaming means that from Java 14 you have the prospect of continuous real-time low overhead profiling as part of your monitoring. 'nuff said.
Now on to the details of those Java 14 changes, including the options you have available to use them, relevant tools and articles, and of course all the useful performance tips in from those articles extracted into this month's tips page. this month's tips page.
Java performance tuning related news - Java 14 release performance features.
Note I've not listed separate entries and links for the many Java 14 GC improvements (it's always worth trying the latest version if you need better GC performance) - instead I'm covering these here in brief. Java 14 GC changes include: GC bug fixes; NUMA-Aware memory allocation for G1; ZGC on MacOS and Windows; Shenandoah support for the JFR Leak Profiler; Shenandoah support for concurrent class unloading; Parallel GC Improvements; and Epsilon now warns about the heap configuration in case it's being used for low latency - for low latency you should have -Xms and -Xmx set to the same value and -XX:+AlwaysPreTouch.
Also the Concurrent Mark Sweep (CMS) garbage collector is removed; and the combination of the Parallel Scavenge and Serial Old is deprecated.
Java performance tuning related tools.
Back to newsletter 231 contents