Profiling

Crates to help you figure out the performance of your code

Newest releases

EmbarkStudios 🐦 Puffin - The Friendly Little Profiler Puffin is an instrumention profiler written in Rust where you opt-in to profile parts of you code: fn my_func
 

larksuite A toolkit designed to be a foundation for applications to monitor their performance.
 

nnethercote This crate provides heap profiling and ad hoc profiling capabilities to Rust programs, similar to those provided by DHAT.
 

aclysma Provides a very thin abstraction over instrumented profiling crates like puffin, optick, tracy, and superluminal-perf
 

kdy1 Profiling rust program made easy.
 

aeledfyr deepsize A trait and derive macro to recursively find the size of an object and the size of allocations that it owns. This has can work in #[no_std] e
 

jonhoo trawler-rs This crate provides a workload generator that emulates the traffic to lobste.rs. It is a mostly open-loop benchmark similar to TailBench, b
 

jonhoo Inter-event timing metrics on top of tracing. This crate provides a tracing::Subscriber that keeps statistics on inter-event timing information. More
 

ludat hado Monadic haskell-like expressions brought to rust via the hado! macro What? A little macro for writing haskell-like do expressions without too muc
 

embarkstudios πŸ”† superluminal-perf-rs Superluminal Performance profiler Rust API for adding user events to captures. How to use In Cargo.toml add: [dependencies] su
 

gz perfcnt A library to program performance counters in rust. Documentation API Documentation See the examples/ directory for more code-snippets on how t
 
352

llogiq A proc macro to insert appropriate flame::start_guard(_) calls (for use with flame) This proc macro requires Rust 1.30. Because flamer is a proc macro
 

bluss A port of the libtest (unstable Rust) benchmark runner to Rust stable releases. Supports running benchmarks and filtering based on the name. Benchmark
 
121

athemathmo CPU Profiler This library provides bindings to google's cpuprofiler. Why use this? There are other profiling tools for Rust, cargo-profiler is particu
 

alexene rust_hawktracer Rust bindings for the Hawktracer profiler. This crate offers simple, minimal bindings to help you profile your rust programs. If profi
 
1.1k

jonhoo Inferno is a port of parts of the flamegraph toolkit to Rust, with the aim of improving the performance of the original flamegraph tools. The primary
 
592

llogiq FLAME A cool flamegraph library for rust Flamegraphs are a great way to view profiling information. At a glance, they give you information about how m
 
122

mrhooray torch A script that glues perf CPU sampling and Brendan Gregg's visualizer to generate FlameGraphs. Requirements Usage Examples License Requirements L
 

ellisonch rust-stopwatch This is a simple module used to time things in Rust. Usage To use, add the following line to Cargo.toml under [dependencies]: stopwatch
 
2.8k

koute A memory profiler for Linux Features Can be used to analyze memory leaks, see where exactly the memory is being consumed, identify temporary allocatio
 

performancecopilot hornet is a Performance Co-Pilot (PCP) Memory Mapped Values (MMV) instrumentation library written in Rust. Contents What is PCP MMV instrumenta
 
11.5k

sharkdp A command-line benchmarking tool. Demo: Benchmarking fd and find: Features Statistical analysis across multiple runs. Support for arbitra
 
2.6k

bheisler Criterion.rs Statistics-driven Microbenchmarking in Rust Getting Started | User Guide | Master API Docs | Released API Docs | Changelog | | Criterion.