In this talk, we'll dive deep into what makes concurrency coordination costly, and explore some pathways to mitigate that cost.

Modern hardware is moving to more cores rather than faster ones. For application developers, this means that further performance gains require _parallelism_; making progress on many tasks at the same time. But as anyone with experience writing multi-threaded code will tell you, this is easier said than done — those threads inevitably have to coordinate, and coordination is "expensive."
But _why_ is it expensive? Sure, a mutual exclusion lock forces sequential execution, which limits overall speedup (per Amdahl's law). But is the lock itself expensive? Do reader-writer locks help when the coordination is mostly required for reads? In this talk, we'll dive deep into what makes concurrency coordination costly, and explore some pathways to mitigate that cost. By the end, you'll leave with a mental model that goes all the way down to the CPU cache line, and a newfound appreciation for a protocol from the 1980s.
The talk explores how Rust’s type system and memory safety can be leveraged to enforce mandatory guardrails at the infrastructure level, where traditional frameworks often fall short.
This talk puts popular Rust rewrites to the test. We'll examine how these tools stack up against their battle-tested predecessors, looking at real-world performance, compilation times, binary sizes, feature completeness, and ecosystem maturity.
In 2024, I added the `Option::as_slice` and `Option::as_mut_slice` methods to libcore. This talk is about what motivated the addition, and looks into the no less than 4 different implementations that made up the methods. It also shows that even without a deep understanding of all compiler internals, it is possible to add changes both to the compiler and standard library.
In this introductory talk, we will explore what it means to "Ratatuify" the Rust package manager, Cargo.
I contributed LTO-related changes to many open-source projects, and had a lot of interesting discussions with their maintainers about LTO. In this talk, I want to share with you my experience.
This talk explores what it means to write scientific software that lives up to the standards we expect of science itself.