CppCon 2025 Cutting C++ Exception Time by 93.4% -- Khalil Estell
Registration is now open for CppCon 2025! The conference starts on September 13 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting some upcoming talks that you will be able to attend this year. Here’s another CppCon future talk we hope you will enjoy – and register today for CppCon 2025!
Cutting C++ Exception Time by 93.4%
Monday, September 15 11:00 - 12:00 MDT
by Khalil Estell
Summary of the talk:
Have you ever been "nerd sniped"? When I realized that exceptions are capable of reducing binaries sizes, it felt like the only thing standing in the way of its adoption was its performance concerns. I couldn't let it go. I wanted to see how far the algorithm could be pushed. In 2024, I set out to just that: making C++ exceptions blazingly fast for embedded platforms. A year later, I've achieved a +90% performance improvement for ARM microcontrollers.
This talk takes you behind the scenes of this journey. I'll share the complete roadmap—from initial benchmarking to optimization—revealing techniques applicable to any performance-critical C++ system. But this isn't just a technical story; it's a testament to the power of community collaboration and how the C++ community summoned this talk. Even if you've sworn off exceptions forever, this talk still delivers value. It's a course in performance optimization which applies across the entire C++ ecosystem.
Join me for a deep dive into what happens when obsession meets optimization—and discover just how fast C++ can really be. Whether you're writing embedded firmware, high-frequency trading systems, a game, or a web server in C++ you'll walk away with techniques to dramatically improve your code.
You'll discover:
- Building precise measurement frameworks for cpu cycle improvements
- Navigating and modernizing a 25-year-old codebase
- Demystifying and eliminating the actual sources of non-determinism
- Leveraging community expertise to shape product requirements
- Using data-oriented design to convert O(log(n)) operations to O(1)
- Working within fixed ABI constraints without compromising performance
- Exploring the future landscape of C++ exception handling
Khalil is a ISO C++ Committee Member and has extensive experience writing production firmware.