MENU

Fun & Interesting

Pushing Java to the Limits: Processing a Billion Rows in under 2 Seconds by Thomas Wuerthinger

Devoxx 9,865 6 months ago
Video Not Working? Fix It Now

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 we know this deceivingly simple question would lead us down a path that covered: parallelism, memory mapped files, SWAR techniques (SIMD as a register), bit twiddling, branchless code, mechanical sympathy, Graal native compilation and finally... turning to the dark side: using sun.misc.Unsafe.Join Thomas and Roy during this deep dive where they explain all the improvements and tricks that enabled them to go from a >4 minute reference implementation to processing a billion rows in under two seconds.Who knew Java could be _this_ fast?

Comment