#profiler #real-time #tracy #bindings #load

tracy-rs

Rust bindings for the tracy realtime profiler

3 releases

0.1.2 Jul 30, 2020
0.1.1 May 28, 2020
0.1.0 Mar 16, 2020

#197 in Profiling

Download history 847/week @ 2023-11-20 802/week @ 2023-11-27 808/week @ 2023-12-04 739/week @ 2023-12-11 776/week @ 2023-12-18 676/week @ 2023-12-25 1026/week @ 2024-01-01 944/week @ 2024-01-08 1203/week @ 2024-01-15 1549/week @ 2024-01-22 1116/week @ 2024-01-29 1270/week @ 2024-02-05 1563/week @ 2024-02-12 1401/week @ 2024-02-19 1762/week @ 2024-02-26 2348/week @ 2024-03-04

7,220 downloads per month
Used in 2 crates (via azul-webrender)

MPL-2.0 license

10KB
157 lines

tracy-rs

This provides a Rust integration for the Tracy profiling library (https://bitbucket.org/wolfpld/tracy).

Usage

  1. Clone the Tracy library from the above URL.
  2. Follow the steps to build the profiler GUI (e.g. in tracy/profiler/build/unix/).
  3. Follow the steps to build the profiler shared library (e.g. in tracy/library/unix).
  4. Add this crate to your project dependencies, with the 'enable_profiler' cargo feature.
  5. Call tracy_rs::load at the start of your application, providing path to library from (3).
  6. Insert the main frame marker tracy_frame_marker!(); at the end of your frame.
  7. Optionally, add sub-frame markers with tracy_begin_frame!() and tracy_end_frame!().
  8. Annotate functions to be profiled with profile_scope!().
  9. Run the application and profiler GUI.

Dependencies