Summary
Disclaimer: This summary has been generated by AI. It is experimental, and feedback is welcomed. Please reach out to info@qconsf.com with any comments or concerns.
The presentation titled "The Rust High Performance Talk You Did Not Expect" by Ruth Linehan addresses common misconceptions about using Rust for high-performance systems. It explores the unexpected benefits and challenges encountered during a transition from Kotlin to Rust at Memento, focusing on performance and engineering efficiency.
Key Points Discussed:
- Misconceptions about Rust: The assumption that Rust's faster runtime comes with higher engineering costs and steeper learning curves was challenged based on the team's experience.
- Performance Testing: Memento's testing reached 60,000 transactions per second with low latency, demonstrating the potential of Rust in high-performance caching systems.
- Complexity and Ergonomics: Rust was chosen for complex projects due to its ability to express intricacies clearly and provide confidence in the code through its compiler and ergonomic features.
- Code Optimization Examples: Practical examples of performance optimization, such as reducing dynamic memory allocation overhead in hot paths, were discussed.
- Benchmarking and Tooling: The discussion included tools for performance benchmarking and making well-informed improvements in Rust code.
The talk highlighted that while Rust offers several advantages, it requires good architectural practices to fully leverage its performance benefits.
This is the end of the AI-generated content.
Abstract
Rust runs faster, but it slows down engineers, right? This was our team’s assumption when we decided to rewrite our code from Kotlin into Rust. But we were wrong in completely unexpected ways. We learned that we could write very slow code in Rust, and we could also write features faster in Rust as a team. This talks dives into the unexpected aspects of Rust that we confronted as we built a multi-million TPS service.
We'll talk about features of the Rust compiler that help teams to move faster by bringing confidence to complex code. We'll also talk about what to do when your Rust code isn't as fast as you expect it to be, diving into tooling like benchmarking and flamegraphs.
This talk is aimed at engineers who are brand new to Rust or teams considering it. If you're a Rust expert, this probably isn't the talk for you (unless you're trying to figure out how to convince your team to use Rust).
Speaker
Ruth Linehan
Software Engineer @Momento, Previously APIs/Webhooks @GitHub and @Puppet
Ruth Linehan is a senior engineer at Momento, building high performance caching and pub/sub services, primarily in Rust. Previously, she worked on webhook delivery and APIs at GitHub, and on the server product at Puppet (Labs). Across her career, she has worked on high scale, high availability services and cares deeply about operational excellence.
Ruth lives in Portland, Oregon. When not working, she spends her time running in the woods, backpacking, singing, and petting cats.