nvtx

Crates.ionvtx
lib.rsnvtx
version1.3.0
sourcesrc
created_at2022-05-30 11:18:31.519656
updated_at2024-01-18 21:37:46.979711
descriptionRust bindings for the NVIDIA® Tools Extension SDK (NVTX)
homepage
repositoryhttps://github.com/simbleau/nvtx
max_upload_size
id596929
size219,787
Spencer C. Imbleau (simbleau)

documentation

README

NVIDIA Logo

NVTX

Crates.io Documentation Build Status dependency status

A safe and ergonomic #![no_std] crate to bind the NVIDIA® Tools Extension SDK (NVTX) with zero-cost abstraction.

NVIDIA® Tools Extension SDK (NVTX) is a C-based Application Programming Interface (API) for annotating events, code ranges, and resources in your applications. Official documentation for NVIDIA®'s NVTX can be found here.

This library is a wrapper over that SDK, safely, and with zero-cost abstractions. This library facilitates integration into the rich CPU and GPU profiling tools provided by NVIDIA®, such as NSight Systems. The primary motivation for this library is to assist research GPU analysts and bring NVIDIA® tools to Rust. This crate is #![no_std].

➡️ Quickstart

The crate is published on crates.io and the easiest way to use nvtx is by adding the dependency to your Cargo.toml file:

nvtx = "1.1.1"

Example

There are several examples in the examples folder which can be executed through tools such as NSight Systems. Each example has a README document with easy to read steps, screenshots, and documentation. Check out the first example, 'Hello, World!'

🙋 If you need support, please file an issue or start a discussion.


🤝 Contributing

If you support the project, consider sponsoring or buying a coffee. Otherwise, any help is welcome, including pull requests. Please check the active issues if you'd like to help.

The Rust code of conduct applies.


📜 Changelog

See the changelog.


🔏 License

This project is dual-licensed under both Apache 2.0 and MIT licenses.

Commit count: 78

cargo fmt