Sessions
GOTO Amsterdam 2024

Wednesday Jun 12
10:20 –
11:10
Veilingzaal

How fast can you parse a file with one billion rows of weather data using Java?

Last January a challenge was posted online by Gunnar Morling: How fast can you parse a file with one billion rows of weather data using Java?

Little did I know this deceivingly simple question would lead me down a path that taught me all about: parallelism, memory mapped files, SWAR techniques (SIMD as a register), bit twiddling, branchless code, mechanical sympathy, Graal native compilation and finally... I even turned to the dark side: using sun.misc.Unsafe.

Join me in this deep dive where I'll explain all the code changes and tricks that took me from the reference implementation which processes the billion records in >4 minutes, to processing everything in under two seconds.

Who knew Java could be this fast?

Java