Java Performance Tuning

Java(TM) - see bottom of page

|home |services |training |newsletter |tuning tips |tool reports |articles |resources |about us |site map |contact us |
Tools: | GC log analysers| Multi-tenancy tools| Books| SizeOf| Thread analysers|

Our valued sponsors who help make this site possible
New Relic: Try free w/ production profiling and get a free shirt! 

Site24x7: Java Method-Level Tracing into Transactions @ $12/Month/JVM. Sign Up! 

News April 2017

jKool for DevOps
Light up your Apps & get a cool t-shirt

JProfiler
Get rid of your performance problems and memory leaks!


Java Performance Training Courses
COURSES AVAILABLE NOW. We can provide training courses to handle all your Java performance needs

Java Performance Tuning, 2nd ed
The classic and most comprehensive book on tuning Java

Java Performance Tuning Newsletter
Your source of Java performance news. Subscribe now!
Enter email:


New Relic
New Relic: Try free w/ production profiling and get a free shirt!

Site24x7
Site24x7: Java Method-Level Tracing into Transactions @ $12/Month/JVM. Sign Up!


jKool for DevOps
Light up your Apps & get a cool t-shirt

JProfiler
Get rid of your performance problems and memory leaks!


Back to newsletter 197 contents

Half a year ago I listed and explained almost all the changes in Java 9 that have a performance impact. This month, courtesy of Tony Printezis (who I'll come back to later), there's a few more of those Java 9 performance related changes for me to list.

A note from this newsletter's sponsor

New Relic - Try New Relic today and get your free Data Nerd shirt!
Free SaaS APMto monitor, troubleshoot, and tune apps
running on Websphere, Weblogic, Tomcat, Jetty, JBoss, Solr, Resin

Firstly, JEP 295 gives us an ahead-of-time Java compiler. Yes, in Java 9, you can actually create a compiled object library from Java code that will be loaded into the JVM! This is targeted at applications and utilities that need quick startup time, I suspect if instead you need optimal speed after warmup, you are better off sticking to the traditional startup of loading .class/.jar and equivalent types of files. And, at least in this first release, it has too many limitations to be useful for most applications.

Next, and I've already mentioned this several times, not least in my complete list of Garbage Collector combinations, we're losing several combinations of garbage collectors in Java 9, as covered in JEP 214. The only one of these that was particularly useful was "ParNew + SerialOld : -XX:+UseParNewGC", which was the optimal garbage collector combination if you were targeting footprint size in bi-stable heaps (heaps where Xms and Xmx are set to different values and under normal operation the heap stabilizes at one lower value, but where occasionally operational flow changes to require a different higher stable heap size). Bi-stable heaps are the norm when you have an in-memory queue that is used for smoothing spikes. If you need to tune the footprint of a bi-stable heap in Java 9, the only option becomes the serial collector which sadly has really bad young generation pause times.

Finally there's JEP 271 and JEP 158 - unified logging. And for more on these, you want to head down to the articles listed in this newsletter and click on Tony Printezis' talk - generally, if Tony is giving a garbage collection talk you should make the time to see it, they are always top quality, extremely useful, and imho essential viewing for the performance community.

Now on to those links to articles, tools, news, talks, blogs. And if you need the tips from this month's articles and talks, as ever they are extracted into this month's tips page.

News

Java performance tuning related news.

Tools

Java performance tuning related tools.

A note from this newsletter's sponsor

Site24x7.com : Deep dive Application Performance Monitoring
Fix performance issues with Java, .NET and Ruby platforms
Monitor app instance at $12/Month. 30-day free trial. Sign Up!

Articles

Jack Shirazi


Back to newsletter 197 contents


Last Updated: 2017-06-27
Copyright © 2000-2017 Fasterj.com. All Rights Reserved.
All trademarks and registered trademarks appearing on JavaPerformanceTuning.com are the property of their respective owners.
Java is a trademark or registered trademark of Oracle Corporation in the United States and other countries. JavaPerformanceTuning.com is not connected to Oracle Corporation and is not sponsored by Oracle Corporation.
URL: http://www.JavaPerformanceTuning.com/news/news197.shtml
RSS Feed: http://www.JavaPerformanceTuning.com/newsletters.rss
Trouble with this page? Please contact us