Overview
Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore the inner workings of Java program execution in this 47-minute Devoxx conference talk. Delve into the transformation process from Java source code to machine code and microcode, uncovering the various optimizations that occur along the way. Learn about tools and techniques for tracing the execution path, and witness how a simple program actually looks when it reaches the hardware level. Gain insights from experienced developers Maurice Naftalin and Dmitry Vyazelenko as they discuss interpreter output, benchmarking techniques, manual optimizations, JIT optimizations, memory hierarchy, and cache-friendliness. Discover the complexities of Java execution, from javac compilation to hardware implementation, and enhance your understanding of advanced Java technologies.
Syllabus
Intro
Dmitry Vyazelenko
What Lies Beneath
Executing
java ... -XX: +PrintInterpreter
Improving Our Program...?
How Not to Benchmark
Let's Benchmark!
Manual Optimisation
Without Inlining (-XX:-Inline)
With Inlining
JIT Optimisations
But Processors Got Better...
Bridging the Gap
The Memory Hierarchy
Measuring Cache-Friendliness
Primitive Array
Poor Unloved Linkedlist...
Conclusions From javac soup to hardware nuts, there's a lot of advanced technology here. And as everyone knows to the ignorant
Digging Deeper...
Taught by
Devoxx