CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
67 lines
1.8 KiB
ReStructuredText
67 lines
1.8 KiB
ReStructuredText
.. meta::
|
|
:description: ROCprofiler-SDK-ROCTx API reference page
|
|
:keywords: AMD, ROCm, HSA
|
|
|
|
.. _rocprofiler_sdk_roctx_api_reference:
|
|
|
|
********************************************************************************
|
|
ROCTx API
|
|
********************************************************************************
|
|
|
|
Introduction
|
|
============
|
|
|
|
ROCTx is a comprehensive library that implements the AMD code annotation API. It provides
|
|
essential functionality for:
|
|
|
|
- Event annotation and marking
|
|
- Code range tracking and management
|
|
- Profiler control and customization
|
|
- Thread and device naming capabilities
|
|
|
|
Key features:
|
|
|
|
- Nested range tracking with push/pop functionality
|
|
- Process-wide range management
|
|
- Thread-specific and global profiler control
|
|
- Device and stream naming support
|
|
- HSA agent and HIP device management
|
|
|
|
The API is divided into several main components:
|
|
|
|
1. **Markers** - For single event annotations
|
|
2. **Ranges** - For tracking code execution spans
|
|
3. **Profiler Control** - For managing profiling tool behavior
|
|
4. **Naming Utilities** - For labeling threads, devices, and streams
|
|
|
|
Thread Safety:
|
|
|
|
- Range operations are thread-local and thread-safe
|
|
- Marking operations are thread-safe
|
|
- Profiler control operations are process-wide
|
|
|
|
Integration:
|
|
|
|
- Compatible with HIP runtime
|
|
- Supports HSA (Heterogeneous System Architecture)
|
|
- Provides both C and C++ interfaces
|
|
|
|
Performance Considerations:
|
|
|
|
- Minimal overhead for marking and range operations
|
|
- Thread-local storage for efficient range stacking
|
|
- Lightweight profiler control mechanisms
|
|
|
|
.. note::
|
|
|
|
All string parameters must be null-terminated.
|
|
|
|
.. warning::
|
|
|
|
Proper nesting of range push/pop operations is the user's responsibility.
|
|
|
|
This ROCTx API topic broadly covers:
|
|
|
|
* :ref:`roctx_modules_reference`
|
|
* :ref:`global_roctx_data_structures_topics_files_reference`
|