Track: Performance Mythbusting


Day of week:

In our post-fact world, it is so easy to be mislead on many subjects unless we immerse ourselves in that subject. Performance is a subject that gathers more attention and myths than most other subjects in technology. In this track we gather the experts who can demystify this subject and distil what matters to answer the questions people struggle with.

Track Host:
Martin Thompson
High Performance & Low Latency Specialist
Martin is a Java Champion with over 2 decades of experience building complex and high-performance computing systems. He is most recently known for his work on Aeron and SBE. Previously at LMAX he was the co-founder and CTO when he created the Disruptor. Prior to LMAX Martin worked for Betfair, three different content companies wrestling with the world largest product catalogues, and was a lead on some of the most significant C++ and Java systems of the 1990s in the automotive and finance domains. He blogs at, and can be found giving training courses on performance and concurrency when he is not cutting code to make systems better.
10:35am - 11:25am

Open Space
11:50am - 12:40pm

by Andres Almiray
Java/Groovy Developer and Java Champion

by Ix-chel Ruiz
Groovy Enthusiast, Teacher of Computer Science

Writing software is regarded by many developers as a craft or an art. However when it comes to performance tuning and/or testing many believe it to be more of a dark art. Nothing farther from the truth. We can gain a lot by applying a concrete methodology and similar reasoning techniques we follow when writing production code. There are tools in the Java space that can help us get better measurements and results, JMeter perhaps one of the most well known, JMH is probably the next likely...

1:40pm - 2:30pm

by Martin Thompson
High Performance & Low Latency Specialist

Common wisdom dictates that native languages are the only means of building high-performance applications. How do managed runtimes such as those available to .NET, Java, and even JavaScript, yes even JavaScript compare? Many applications requiring high-performance are now developed for managed runtimes - such as financial trading, data stores and analytics, messaging processing, and even supercomputing.

2:55pm - 3:45pm

by Mark Price
Senior Performance Engineer @Improbableio

In our world of continuous delivery with repeatable builds and automated deployments, performance testing is often bolted on as an afterthought.

This can be an acceptable strategy until your application becomes popular, after which customers can start complaining about application response. As technologists, it is our responsibility to be able to reason about and improve the responsiveness of our systems.

Good performance testing is not only about catching regressions; it is a...

4:10pm - 5:00pm

by Todd Montgomery
Ex-NASA researcher

Asynchronous is the new normal! Or is it? Many of our languages, runtimes, and libraries are built around synchronous behaviour and usage as we keep trying to make RPC work by force of will. Primitives such as futures and promises present a synchronous facade. Blocking I/O dominates the vast majority of designs. Most of our communication models and architectures depend on synchronous methods of communication. For many years, we've been told that synchronous is...

5:25pm - 6:15pm

by Yao Yue
Distributed Systems Engineer Working on Cache @Twitter

In-memory caching in a distributed setting is widely used these days, and users usually expect it to be "fast and cheap". One important but often overlooked aspect of cache is tail latency– for many real-time applications, tail latency plays an outsized role in determining the overall performance and reliability.

Controlling tail latency, however, is tricky business, and much harder to achieve than good average latency. It...