Just Stand Them Next to Each Other – A New Approach to Microbenchmarking

By Denis Bazhenov

Talk - Tuesday, 15 September
14:00

Microbenchmarks are supposed to help us compare algorithms, yet the common approach runs each benchmark separately—often minutes apart, sometimes on different machines—and then compares the results. On modern systems where performance fluctuates constantly, that comparison can be surprisingly fragile.

In everyday life, if you want to know who is taller, you don’t measure people hours apart with an extremely precise ruler—you simply stand them next to each other.

In this talk, I’ll argue that microbenchmarks should follow the same principle. Instead of measuring implementations independently, we can run two versions of the code simultaneously on the same machine. Any background noise or system effects influence both versions equally, allowing us to measure the relative performance much more reliably.

Speaker

speaker.name

Denis Bazhenov

Denis is a software engineer at JetBrains. Earlier in his career he worked on search engines and information retrieval systems, where performance and efficiency were constant concerns. He is particularly interested in building correct and efficient software and in understanding how modern systems behave under the hood. Denis enjoys working with Rust because it combines powerful abstractions with precise control over low-level details across the entire software stack—from application code down to the operating system and hardware.