8 releases

0.5.0 Dec 4, 2025
0.4.0 Oct 23, 2023
0.3.5 Oct 5, 2023
0.3.4 Jul 28, 2023
0.3.1 Apr 12, 2022

#16 in Profiling

Download history 62790/week @ 2025-10-23 68647/week @ 2025-10-30 81794/week @ 2025-11-06 65248/week @ 2025-11-13 89895/week @ 2025-11-20 80720/week @ 2025-11-27 90820/week @ 2025-12-04 93765/week @ 2025-12-11 82945/week @ 2025-12-18 56343/week @ 2025-12-25 90767/week @ 2026-01-01 124885/week @ 2026-01-08 114663/week @ 2026-01-15 128055/week @ 2026-01-22 132917/week @ 2026-01-29 127763/week @ 2026-02-05

528,323 downloads per month
Used in 297 crates (6 directly)

GPL-2.0-only OR BSD-3-Clause

1MB
22K SLoC

Rust 15K SLoC // 0.0% comments C 2K SLoC // 0.0% comments Python 2K SLoC // 0.2% comments GNU Style Assembly 1.5K SLoC // 0.0% comments C++ 1K SLoC // 0.1% comments Assembly 265 SLoC // 0.1% comments

ittapi

Build Status Documentation Status

This crate allows Rust programs to use Intel® Instrumentation and Tracing Technology (ITT) APIs. Currently, the following APIs are supported (please submit an issue or PR for additional support):

  • a JIT notification API, a higher-level view of the C JIT Profiling API
  • the Domain API
  • the Task API
  • the String Handle API
  • the Event API
  • the Collection Control API

This uses the ittapi-sys crate which depends on the C ittapi library.

IMPORTANT NOTE: this crate is currently only tested on Linux, macOS, and Windows platforms but support for other platforms is intended; contributions are welcome! FreeBSD and OpenBSD are supported but untested.

If you are interested in using VTune to profile Rust applications, you may find the following guide helpful: Wasmtime Docs: Using VTune on Linux

Use

[dependencies]
ittapi = "*"

Instrument the code to measure with ittapi; e.g.,:

Build

cargo build

Test

cargo test

Dependencies