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 65123/week @ 2025-10-27 76224/week @ 2025-11-03 72966/week @ 2025-11-10 79647/week @ 2025-11-17 78050/week @ 2025-11-24 85153/week @ 2025-12-01 93789/week @ 2025-12-08 95282/week @ 2025-12-15 66848/week @ 2025-12-22 63759/week @ 2025-12-29 116059/week @ 2026-01-05 118486/week @ 2026-01-12 124836/week @ 2026-01-19 122299/week @ 2026-01-26 136369/week @ 2026-02-02 149196/week @ 2026-02-09

543,422 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