The crate allow to trace sample execution, in-between start and stop trace, and extract statistics of the functions consuming the most resources. Example usage ```rust fn k() { trace_cpu!("k", for _i in 0..1000 {}) } fn f() { for i in 0..100 { trace_cpu!("g", g()); } for j in 0..10000 {} } fn g() { for i in 0..100 { k() } } fn main() { start(); trace_cpu!("f1", f()); trace_cpu!("f2", f()); stop(); f(); show(); } ``` Will output: ``` f2 : 1 calls | 43.356 total ms -- Timing overhead 10.1 ms k : 20000 calls | 58.118 total ms -- Timing overhead 0 ms f1 : 1 calls | 40.9 total ms -- Timing overhead 10.1 ms g : 200 calls | 83.916 total ms -- Timing overhead 20 ms ``` The overhead timing are indicative of the amount spend in the timing macros.