CUDA Profiler Tools Interface (CUPTI) 12.9 is now available for download in the NVIDIA Registered Developer Program.
The NVIDIA CUDA Profiler Tools Interface (CUPTI), distributed as part of the CUDA Toolkit, is a library that enables the creation of profiling and tracing tools that target CUDA applications. CUPTI provides a set of APIs targeted at ISVs creating profilers and other performance optimization tools:- the Activity API,
- the Callback API,
- the Host Profiling API,
- the Range Profiling API,
- the PC Sampling API,
- the SASS Metric API,
- the PM Sampling API,
- the Checkpoint API,
- the Profiling API,
- the Event API,
- the Metric API, and
- the Python API (available separately)
Updates in CUDA Toolkit 12.9 Update 1
-
Resolved Issues
- Report the green context ID in the graph-level trace when graphs are launched from the host under a green context, instead of reporting the primary context ID.
- Update the CUPTI API version
CUPTI_API_VERSION
for CUDA Update releases. - Include the required NVTX headers in the header file generated_nvtx_meta.h.
Updates in CUDA Toolkit 12.9
-
New Features
- In confidential computing, rotating a key is a high-impact operation that halts all traffic using that key.
During the key rotation, channels sharing the key will be drained and will not accept new CUDA work until
the rotation completes.
However, this process is not directly visible to user applications.
CUPTI offers additional feedback to tools, allowing users to account for their impact on application timelines.
The struct
CUpti_ActivityConfidentialComputeRotation
provides timestamps for each stage of the encryption rotation, while the enumCUpti_ConfidentialComputeRotationEventType
lists the supported stages. - For Orin+ mobile chips on the Linux aarch64 platform, added metrics (mcc__*) support for memory controller channel (MC Channel) unit which connects to the DRAM.
- A new attribute
CUPTI_ACTIVITY_ATTR_DEVICE_BUFFER_SIZE_DEVICE_GRAPHS
is added in the activity attribute enumCUpti_ActivityAttribute
to set and get the size for the profiling buffer for device graph operations. - Decoupled activity kinds
CUPTI_ACTIVITY_KIND_CUDA_EVENT
andCUPTI_ACTIVITY_KIND_SYNCHRONIZATION
. Previously, enabling one of these activities would automatically enable the capturing of records for the other. - Fixed a crash when the client fails to provide a buffer in response to the activity buffer request callback issued by CUPTI.
This condition is notified to the client using the
CUPTI_CB_DOMAIN_STATE
callback. - The callback
CUPTI_CBID_RESOURCE_MODULE_PROFILED
is issued regardless of whether kernel tracing is enabled.
Getting Started
-
For more information on CUPTI for CUDA Toolkit 12.9 , including features, requirements, documentation and support, please visit the CUPTI Overview page.
To download this version, get it as part of the CUDA Profiler Tools Interface (CUPTI) for CUDA Toolkit 12.9.
Version 2025.2.1 Overview & New Features | Download | Documentation
For more information on CUPTI Python
Please refer to the CUPTI Python for CUDA Toolkit 12.8.0 overview,
Latest PRODUCT INFO
- Overview (download, features, platforms, requirements)
- Documentation
- Downloads (as part of CUDA Toolkit)
- Downloads (outside of CUDA Toolkit)
- Revision History
- CUPTI Forum