Releases: NVIDIA/NVTX
Releases · NVIDIA/NVTX
v3.4.0
NVTX v3.4.0 Changelog
Core improvements:
- Introducing Rust NVTX bindings, available now from our GitHub repository.
- Add Correlation Semantic header.
Python improvements:
- Add support for NumPy arrays as payloads.
- Set up support for free-threaded Python.
- Apply
NVTX_DISABLEenvironment variable tonvtx.Profileclass.
v3.3.0
NVTX v3.3.0 Changelog
New feature:
- C++ bindings for the Payload Extension: Add custom structured data to NVTX events using idiomatic C++.
Core bugfixes:
- Remove uses of
moduleas an identifier, fixing build issues under C++20. - Improve return value of
nvtxDomainIsEnabledwhen not implemented by an injection, or none is attached.
Python bugfixes:
- Fix tracing with tools that do not implement
nvtxDomainIsEnabled. - Fix decorator ranges not ending when an exception is thrown.
- Fix automatic function name annotation for decorator ranges.
v3.2.2
Bugfix release.
NVTX v3.2.2 Changelog
C headers:
- Remove uses of
moduleas an identifier, fixing build issues under C++20. - Improve return value of
nvtxDomainIsEnabledwhen not implemented by an injection, or none is attached.
Python bindings:
- Fix tracing with tools that do not implement
nvtxDomainIsEnabled. - Fix decorator ranges not ending when an exception is thrown.
- Fix automatic function name annotation for decorator ranges.
v3.2.1
Maintenance release to support Python NVTX 0.2.12. No changes to C/C++ headers.
NVTX v3.2.1 Changelog
Python bindings:
- Expose API via
domainobject for better performance. - No-OP when domain is disabled.
- Improved documentation.
v3.2.0
NVTX v3.2.0 Release Highlights
- Payload Extension - Add custom structured data to NVTX events such as ranges and markers, then view the data in tools with support for this extension, such as NVIDIA Nsight Systems
- Counters Extension - Record numerical quantities suitable for statistical analysis or display as a graph, table, etc
- Memory Extension - Annotate CPU and GPU memory heaps and regions in order to improve statistics, correctness checking, diagnostics, etc, for use with a tool such as NVIDIA Compute Sanitizer
- Sample Backend - A minimal code sample for building a custom tool that can collect NVTX data
- CMake fixes - Add NVTX to your project using CMake Package Manager (CPM) or conda-forge
- Compiler diagnostic messages addressed for a streamlined development experience
v3.1.1
NVTX v3.1.1 Changelog
Core headers:
- Fixed static injection feature.
- Fixed
NVTX_EXPORT_APIfeature for building a dynamic library for the purpose of language interoperability. - Fixed atomic operation macros on POSIX platforms.
- Fixed
NVTX_INLINE_STATICunder C89. - Extended
NVTX_BUFSIZEfromMAX_PATHto16384. - Cleaned up header includes in
nvtxImpl.h, fixing build failures. - Added test cases.
C++ bindings:
- Added
[[maybe_unused]]and[[nodiscard]]attributes where appropriate. - Fixed syntax for union members of
class event_attributesdefault constructor. - Applied workaround for broken SFINAE in GCC 8.1-8.3.
Python bindings:
- Reimplemented domain, string, and category caches for performance and thread safety.
- Added caching of EventAttributes objects.
- Fixed errors when building the package from source.
- Changed project structure from flat-layout to src-layout.
- Updated project metadata.
Overall project:
- Updated/fixed code comments throughout headers.
- Updated copyright header boilerplate.
- Fixed compiler warnings.
- Normalized text details such as line endings (LF), byte order markers (absent), character set (ASCII-only), and trailing whitespace (removed).