Sunday, November 2, 2014

Doug Lea at SPLASH on Parallel Programming

At SPLASH this year there was a summer school on parallel programming, and someone shot a video of Doug Lea giving a short keynote. The quality is not ideal, but the audio is good enough to hear what he says, so if you're interested in the new concurrency stuff in JDK 8, this is a nice talk to listen to

Some of the topics he covers are:
- StampedLock and its optimistic API;
- How LongAdder works;
- When to use ThreadLocalRandom;
- Fork/Join and CompletableFuture;
- Why does ConcurrentHashMap build a tree on each bucket in JDK 8 (hint: it's related to a bug Andreia and I found and fixed in ConcurrentHashMap);
- Parallel streams;
- The JVM memory model and volatiles (sequentially consistent atomics), and "out-of-thin-air results";
- Value types in Java;

I liked the part about Scala being the Canary of Java, such that whenever something gets implemented in Scala and it doesn't blow up, it means we can probably use it in Java.   lol
Not really a deep dive, so it should suit a general audience.

To help follow the presentation, here are are the accompanying slides (from near the end of the presentation):
http://jtres2014.compute.dtu.dk/slides/lea.pdf

No comments:

Post a Comment