hotpath-rs dev blog
Notes on Rust performance, profiling techniques, and development updates from building hotpath-rs by Paweł Urbanek.
Profiling Async and Concurrent Rust: Channels and Lock Contention
June 23, 2026
Traditional Rust profilers can reveal where your application spends CPU time, but they often cannot explain why async or concurrent code is waiting. Queue buildup, channel throughput, message processing latency, and lock contention can be difficult or impossible to observe with standard profilers. In this blog post I’ll describe instrumentation APIs recently introduced to hotpath-rs that provide observability into async and concurrency bottlenecks. I’ll also explain the new "wrap" channel instrumentation introduced in hotpath 0.18.0.
Lessons Learned Building High-Performance Rust Profiler
May 12, 2026
The Rust performance book features over a dozen different profiling tools. So I’m not sure if the world needed a new Rust profiler. Still, I spent the last 6+ months building hotpath-rs. In this post, I’ll describe the design decisions behind the library and share a few performance challenges I encountered while working on it. We’ll go deep into the low-level details: cache-line contention, async futures instrumentation, and decoding raw CPU traces back into Rust symbols.
Cargo Flamegraph Alternatives for Rust Performance Profiling
December 17, 2025
In this post, we’ll compare hotpath with popular Rust performance profilers such as cargo flamegraph, samply, and perf. We’ll walk through three common Rust performance profiling scenarios - CPU-bound code, blocking I/O, and async I/O - to show where traditional sampling profilers excel and where runtime instrumentation provides a different perspective.