LJC Unparty 2014 "Java Performance Blind Ignite Talk"

Preview:

DESCRIPTION

This talk was delivered at the awesome LJC Unparty in January 2014, and is meant to be a light-hearted whistle-stop tour of important Java Performance topics.

Citation preview

Java Performance ExplainedIn 15 second blind-ignite-sized chunks…

Bravely Presented By: Richard Warburton & Martijn Verburg

Slides Created By: Daniel Bryant

Which Java developers should be interested in performance?

How can I learn to write Java code

that performs well?

Is there any part of the JDK I should avoid for performance reasons?

How useful is “Mechanical Sympathy”?

(as popularised by Martin Thompson)

Do we love L.A.M.P?...

Or Java on Windows?...

(for best performance)

How does the JVM optimise code?

How can I tune JVM performance?

“Cool cats” enable as many GC Flags as possible, right?

When should I turn on GC logging?

Java -XX:+PrintGCDetails \ -XX:+PrintGCDateStamps \ -XX:+PrintTenuringDistribution \ -Xloggc:logs/gc.log \...

GC Logs in production, really?

My manager doesn’t like that…

Do products exist to analyse GC Logs?

Random Heap Usage Graph - explain…

How common is “Yak Shaving” with performance diagnostics / tuning?

How does the Azul JVM work its magic?

(in 15 seconds or less…)

What’s all the fuss about Shenandoah?

How effective is ‘off heap’ storage?

Any noteworthy performance stuff in the soon to be released JDK 8?

* GA Release: 18/03/2014. http://openjdk.java.net/projects/jdk8/milestones

Most common performance-related mistake you see in Java code?

How can I troll Java performance mailing lists?

Great work! And relax…

(Let’s have a round of applause!)

Recommended