| Crates.io | ittapi-sys |
| lib.rs | ittapi-sys |
| version | 0.4.0 |
| created_at | 2022-04-06 18:45:51.945732+00 |
| updated_at | 2023-10-23 18:09:20.222165+00 |
| description | Rust bindings for ittapi |
| homepage | https://github.com/intel/ittapi/tree/master/rust/ittapi-sys |
| repository | https://github.com/intel/ittapi |
| max_upload_size | |
| id | 563273 |
| size | 1,128,151 |
This crate contains low-level Rust bindings for the C ittapi library--you likely want to use the
high-level Rust crate. The ittapi library is used for various aspects of IntelĀ® profiling;
it exposes the Instrumentation and Tracing Technology (ITT) API as well as the Just-In-Time (JIT)
Profiling API. More details about ittapi are available on its README.
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
[dependencies]
ittapi-sys = "0.3"
cargo build
Building ittapi-sys will build the ittapi C library and link it statically into your
application; see the build.rs file.
For Windows developers: this crate uses a symbolic link to access the C library it depends on. To modify this crate on Windows, either configure Git to understand POSIX symlinks or use the copy-c-library.ps1 script to temporarily copy the files.
cargo test
This crate's tests ensure the ittapi-sys bindings remain up to date with the official C header
files; they do not check ittapi functionality.
If the ittapi-sys bindings are not up to date, they can be regenerated with:
BLESS=1 cargo test
The binding generation uses bindgen. An in-depth description of how to use bindgen is available
in the bindgen documentation.