CUDA Profiler Tools Interface (CUPTI) for CUDA Toolkit 12.2 is now available

CUDA Profiler Tools Interface (CUPTI) for CUDA Toolkit 12.2 is now available for download in the NVIDIA Registered Developer Program.

The NVIDIA® CUDA Profiling Tools Interface (CUPTI) is a dynamic 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 Event API,
  • the Metric API,
  • the Profiler API,
  • the PC Sampling API, and
  • the Checkpoint API

Using these CUPTI APIs, independent software developers can create profiling tools that provide low and deterministic profiling overhead on the target system, while giving insight into the CPU and GPU behavior of CUDA applications.

CUDA Profiler Tools Interface (CUPTI) for CUDA Toolkit 12.2 includes these improvements and updates:

New Features

    CUPTI has made the following changes as part of the CUDA Toolkit 12.2 release:
    • A new set of CUPTI APIs for collection of SASS metric data at the source level are provided in the header file cupti_sass_metrics.h. These support a larger set of metrics compared to the CUPTI Activity APIs for source-level analysis. SASS to source correlation can be done in the offline mode, similar to the PC sampling APIs. Hence the runtime overhead during data collection is lower. Refer to the section CUPTI SASS Metrics API for more details. Please note that this is a Beta feature, interface and functionality are subject to change in a future release.
    • CUPTI now reports fatal errors, non-fatal errors and warnings instantaneously through callbacks. A new callback domain CUPTI_CB_DOMAIN_STATE is added for subscribing to the instantaneous error reporting. Corresponding callback ids are provided in the struct CUpti_CallbackIdState.
    • Added support for profiling of device graphs and host graphs that launch device graphs. There are some known limitations, please refer to the Known Issues section for details.
    • Change in the stream attribute value is communicated by issuing the resource callback. Refer to the struct CUpti_StreamAttrData and callback id CUPTI_CBID_RESOURCE_STREAM_ATTRIBUTE_CHANGED added in the enum CUpti_CallbackIdResource.
    • New API cuptiGetErrorMessage provides descriptive message for CUPTI error codes.
    • Removed the deprecated API cuptiDeviceGetTimestamp from the header cupti_events.h.


For more information on CUPTI for CUDA Toolkit 12.2 , including features, requirements, documentation and support, please visit the CUPTI Overview pageCUDA Profiler Tools Interface {CUPTI} for CUDA Toolkit 12_2 .

To download this version, get it as part of the CUDA Toolkit CUDA Profiler Tools Interface {CUPTI} for CUDA Toolkit 12.2 .
Version 2023.2.0 Overview & New Features | Download | Documentation