You are viewing content from a past/completed QCon

Presentation: Applying Concurrency Cookbook Recipes to SPEC JBB

Track: Bare Knuckle Performance

Location: Windsor, 5th flr.

Duration: 1:40pm - 2:30pm

Day of week: Tuesday

Slides: Download Slides

Share this on:

This presentation is now available to view on InfoQ.com

Watch video with transcript

Abstract

Our overarching goal was to understand, quantify and highlight the consequences of certain choices of fences when compiling Java constructs down to hardware platforms such as ARM, IBM Power or Intel x86. We used Doug Lea's cookbook as a compilation guide, and SPEC JBB as our reference benchmark. More precisely, we followed the recipes appearing in the cookbook and applied them to SPEC JBB. This talk reports our findings, both from a soundness and efficiency point of view. We hope that the attendees of this talk will benefit from:

  1. an introduction to relaxed memory consistency as implemented in Java, which in turn motivates the need for memory barriers in concurrent code;
  2. a presentation of our performance analysis methodology;
  3. a detailed report on the performance implications of memory barriers, specifically:
  • on the performance measurement front: we use Java Micro-benchmarking Harness (JMH) to understand and showcase these performance implications better;
  • on the performance analysis front: we look at profiling snippets to be able to highlight hot code;
  • on the performance study front: we examine the implications of the use of memory barriers on core and SMT scaling.

Speaker: Monica Beckwith

Java Champion, First Lego League Coach, passionate about JVM Performance @Microsoft

Java Champion Monica Beckwith is considered a subject matter expert, has several published articles and gets regular invitations to give talks on JVM/JIT Compilation/Garbage Collection (GC). She is also a JavaOne Rock Star.

Monica has made various performance contributions to the Java HotSpot VM by identifying the need for a NUMA-aware allocator and allocation patterns, reduction of redundant instructions, reduction of the Java object header, prefetching patterns, redundant array checks in a loop and various other optimizations for the JIT compiler, the generated code, the JVM heuristics and garbage collection and collectors.

Prior to joining Microsoft, Monica was the JVM Performance Architect at Arm. Her past also includes leading Oracle’s Garbage First Garbage Collector performance team.

Find Monica Beckwith at

Speaker: Jade Alglave

Lecturer @ucl

Find Jade Alglave at

Last Year's Tracks