Global Basic Data Types#
-
enum rocprofiler_status_t#
Status codes.
Values:
-
enumerator ROCPROFILER_STATUS_SUCCESS#
No error occurred.
-
enumerator ROCPROFILER_STATUS_ERROR#
Generalized error.
-
enumerator ROCPROFILER_STATUS_ERROR_CONTEXT_NOT_FOUND#
No valid context for given context id.
-
enumerator ROCPROFILER_STATUS_ERROR_BUFFER_NOT_FOUND#
No valid buffer for given buffer id.
-
enumerator ROCPROFILER_STATUS_ERROR_KIND_NOT_FOUND#
Kind identifier is invalid.
-
enumerator ROCPROFILER_STATUS_ERROR_OPERATION_NOT_FOUND#
Operation identifier is invalid for domain.
-
enumerator ROCPROFILER_STATUS_ERROR_THREAD_NOT_FOUND#
No valid thread for given thread id.
-
enumerator ROCPROFILER_STATUS_ERROR_AGENT_NOT_FOUND#
Agent identifier not found.
-
enumerator ROCPROFILER_STATUS_ERROR_COUNTER_NOT_FOUND#
Counter identifier does not exist.
-
enumerator ROCPROFILER_STATUS_ERROR_CONTEXT_ERROR#
Generalized context error.
-
enumerator ROCPROFILER_STATUS_ERROR_CONTEXT_INVALID#
Context configuration is not valid.
-
enumerator ROCPROFILER_STATUS_ERROR_CONTEXT_NOT_STARTED#
Context was not started (e.g., atomic swap into active array failed)
-
enumerator ROCPROFILER_STATUS_ERROR_CONTEXT_CONFLICT#
Context operation failed due to a conflict with another context.
-
enumerator ROCPROFILER_STATUS_ERROR_CONTEXT_ID_NOT_ZERO#
Context ID is not initialized to zero.
-
enumerator ROCPROFILER_STATUS_ERROR_BUFFER_BUSY#
buffer operation failed because it currently busy handling another request (e.g. flushing)
-
enumerator ROCPROFILER_STATUS_ERROR_SERVICE_ALREADY_CONFIGURED#
service has already been configured in context
-
enumerator ROCPROFILER_STATUS_ERROR_CONFIGURATION_LOCKED#
Function call is not valid outside of rocprofiler configuration (i.e. function called post-initialization)
-
enumerator ROCPROFILER_STATUS_ERROR_NOT_IMPLEMENTED#
Function is not implemented.
-
enumerator ROCPROFILER_STATUS_ERROR_INCOMPATIBLE_ABI#
Data structure provided by user is incompatible with current version of rocprofiler.
-
enumerator ROCPROFILER_STATUS_ERROR_INVALID_ARGUMENT#
Function invoked with one or more invalid arguments.
-
enumerator ROCPROFILER_STATUS_ERROR_METRIC_NOT_VALID_FOR_AGENT#
Invalid metric supplied to agent.
-
enumerator ROCPROFILER_STATUS_ERROR_FINALIZED#
invalid because rocprofiler has been finalized
-
enumerator ROCPROFILER_STATUS_ERROR_HSA_NOT_LOADED#
Call requires HSA to be loaded before performed.
-
enumerator ROCPROFILER_STATUS_ERROR_DIM_NOT_FOUND#
Dimension is not found for counter.
-
enumerator ROCPROFILER_STATUS_ERROR_PROFILE_COUNTER_NOT_FOUND#
Profile could not find counter for GPU agent.
-
enumerator ROCPROFILER_STATUS_ERROR_AST_GENERATION_FAILED#
AST could not be generated correctly.
-
enumerator ROCPROFILER_STATUS_ERROR_AST_NOT_FOUND#
AST was not found.
-
enumerator ROCPROFILER_STATUS_ERROR_AQL_NO_EVENT_COORD#
Event coordinate was not found by AQL profile.
-
enumerator ROCPROFILER_STATUS_ERROR_INCOMPATIBLE_KERNEL#
A service depends on a newer version of KFD (amdgpu kernel driver). Check logs for service that report incompatibility.
-
enumerator ROCPROFILER_STATUS_ERROR_OUT_OF_RESOURCES#
The given resources are insufficient to complete operation.
-
enumerator ROCPROFILER_STATUS_ERROR_PROFILE_NOT_FOUND#
Could not find the counter profile.
-
enumerator ROCPROFILER_STATUS_ERROR_AGENT_DISPATCH_CONFLICT#
Cannot enable both agent and dispatch counting in the same context.
-
enumerator ROCPROFILER_STATUS_INTERNAL_NO_AGENT_CONTEXT#
No agent context found, may not be an error.
-
enumerator ROCPROFILER_STATUS_ERROR_SAMPLE_RATE_EXCEEDED#
Sample rate exceeded.
-
enumerator ROCPROFILER_STATUS_ERROR_NO_PROFILE_QUEUE#
Profile queue creation failed.
-
enumerator ROCPROFILER_STATUS_ERROR_NO_HARDWARE_COUNTERS#
No hardware counters were specified.
-
enumerator ROCPROFILER_STATUS_ERROR_AGENT_MISMATCH#
Agent mismatch between profile and context.
-
enumerator ROCPROFILER_STATUS_ERROR_NOT_AVAILABLE#
The service is not available. Please refer to API functions that return this status code for more information.
-
enumerator ROCPROFILER_STATUS_ERROR_EXCEEDS_HW_LIMIT#
Exceeds hardware limits for collection.
-
enumerator ROCPROFILER_STATUS_ERROR_AGENT_ARCH_NOT_SUPPORTED#
Agent HW architecture not supported.
-
enumerator ROCPROFILER_STATUS_ERROR_PERMISSION_DENIED#
Permission denied.
-
enumerator ROCPROFILER_STATUS_LAST#
-
enumerator ROCPROFILER_STATUS_SUCCESS#
-
enum rocprofiler_buffer_category_t#
Buffer record categories. This enumeration type is encoded in rocprofiler_record_header_t category field.
Values:
-
enumerator ROCPROFILER_BUFFER_CATEGORY_NONE#
-
enumerator ROCPROFILER_BUFFER_CATEGORY_TRACING#
-
enumerator ROCPROFILER_BUFFER_CATEGORY_PC_SAMPLING#
-
enumerator ROCPROFILER_BUFFER_CATEGORY_COUNTERS#
-
enumerator ROCPROFILER_BUFFER_CATEGORY_LAST#
-
enumerator ROCPROFILER_BUFFER_CATEGORY_NONE#
-
enum rocprofiler_agent_type_t#
Agent type.
Values:
-
enumerator ROCPROFILER_AGENT_TYPE_NONE#
Agent type is unknown.
-
enumerator ROCPROFILER_AGENT_TYPE_CPU#
Agent type is a CPU.
-
enumerator ROCPROFILER_AGENT_TYPE_GPU#
Agent type is a GPU.
-
enumerator ROCPROFILER_AGENT_TYPE_LAST#
-
enumerator ROCPROFILER_AGENT_TYPE_NONE#
-
enum rocprofiler_callback_phase_t#
Service Callback Phase.
Values:
-
enumerator ROCPROFILER_CALLBACK_PHASE_NONE#
Callback has no phase.
-
enumerator ROCPROFILER_CALLBACK_PHASE_ENTER#
Callback invoked prior to function execution.
-
enumerator ROCPROFILER_CALLBACK_PHASE_LOAD#
Callback invoked prior to code object loading.
-
enumerator ROCPROFILER_CALLBACK_PHASE_EXIT#
Callback invoked after to function execution.
-
enumerator ROCPROFILER_CALLBACK_PHASE_UNLOAD#
Callback invoked prior to code object unloading.
-
enumerator ROCPROFILER_CALLBACK_PHASE_LAST#
-
enumerator ROCPROFILER_CALLBACK_PHASE_NONE#
-
enum rocprofiler_callback_tracing_kind_t#
Service Callback Tracing Kind.
Values:
-
enumerator ROCPROFILER_CALLBACK_TRACING_NONE#
-
enumerator ROCPROFILER_CALLBACK_TRACING_HSA_CORE_API#
See also
rocprofiler_hsa_core_api_id_t
-
enumerator ROCPROFILER_CALLBACK_TRACING_HSA_AMD_EXT_API#
See also
rocprofiler_hsa_amd_ext_api_id_t
-
enumerator ROCPROFILER_CALLBACK_TRACING_HSA_IMAGE_EXT_API#
See also
rocprofiler_hsa_image_ext_api_id_t
-
enumerator ROCPROFILER_CALLBACK_TRACING_HSA_FINALIZE_EXT_API#
See also
rocprofiler_hsa_finalize_ext_api_id_t
-
enumerator ROCPROFILER_CALLBACK_TRACING_HIP_RUNTIME_API#
See also
rocprofiler_hip_runtime_api_id_t
-
enumerator ROCPROFILER_CALLBACK_TRACING_HIP_COMPILER_API#
See also
rocprofiler_hip_compiler_api_id_t
-
enumerator ROCPROFILER_CALLBACK_TRACING_MARKER_CORE_API#
See also
rocprofiler_marker_core_api_id_t
-
enumerator ROCPROFILER_CALLBACK_TRACING_MARKER_CONTROL_API#
See also
rocprofiler_marker_control_api_id_t
-
enumerator ROCPROFILER_CALLBACK_TRACING_MARKER_NAME_API#
See also
rocprofiler_marker_name_api_id_t
-
enumerator ROCPROFILER_CALLBACK_TRACING_CODE_OBJECT#
See also
-
enumerator ROCPROFILER_CALLBACK_TRACING_SCRATCH_MEMORY#
-
enumerator ROCPROFILER_CALLBACK_TRACING_KERNEL_DISPATCH#
Callbacks for kernel dispatches.
-
enumerator ROCPROFILER_CALLBACK_TRACING_MEMORY_COPY#
See also
-
enumerator ROCPROFILER_CALLBACK_TRACING_RCCL_API#
RCCL tracing.
-
enumerator ROCPROFILER_CALLBACK_TRACING_OMPT#
See also
rocprofiler_ompt_operation_t
-
enumerator ROCPROFILER_CALLBACK_TRACING_MEMORY_ALLOCATION#
-
enumerator ROCPROFILER_CALLBACK_TRACING_RUNTIME_INITIALIZATION#
Callback notifying that a runtime library has been initialized.
-
enumerator ROCPROFILER_CALLBACK_TRACING_ROCDECODE_API#
rocDecode API Tracing
-
enumerator ROCPROFILER_CALLBACK_TRACING_ROCJPEG_API#
rocJPEG API Tracing
-
enumerator ROCPROFILER_CALLBACK_TRACING_HIP_STREAM#
See also
-
enumerator ROCPROFILER_CALLBACK_TRACING_MARKER_CORE_RANGE_API#
See also
rocprofiler_marker_core_range_api_id_t
-
enumerator ROCPROFILER_CALLBACK_TRACING_LAST#
-
enumerator ROCPROFILER_CALLBACK_TRACING_NONE#
-
enum rocprofiler_buffer_tracing_kind_t#
Service Buffer Tracing Kind.
Values:
-
enumerator ROCPROFILER_BUFFER_TRACING_NONE#
-
enumerator ROCPROFILER_BUFFER_TRACING_HSA_CORE_API#
See also
rocprofiler_hsa_core_api_id_t
-
enumerator ROCPROFILER_BUFFER_TRACING_HSA_AMD_EXT_API#
See also
rocprofiler_hsa_amd_ext_api_id_t
-
enumerator ROCPROFILER_BUFFER_TRACING_HSA_IMAGE_EXT_API#
See also
rocprofiler_hsa_image_ext_api_id_t
-
enumerator ROCPROFILER_BUFFER_TRACING_HSA_FINALIZE_EXT_API#
See also
rocprofiler_hsa_finalize_ext_api_id_t
-
enumerator ROCPROFILER_BUFFER_TRACING_HIP_RUNTIME_API#
See also
rocprofiler_hip_runtime_api_id_t
-
enumerator ROCPROFILER_BUFFER_TRACING_HIP_COMPILER_API#
See also
rocprofiler_hip_compiler_api_id_t
-
enumerator ROCPROFILER_BUFFER_TRACING_MARKER_CORE_API#
See also
rocprofiler_marker_core_api_id_t
-
enumerator ROCPROFILER_BUFFER_TRACING_MARKER_CONTROL_API#
See also
rocprofiler_marker_control_api_id_t
-
enumerator ROCPROFILER_BUFFER_TRACING_MARKER_NAME_API#
See also
rocprofiler_marker_name_api_id_t
-
enumerator ROCPROFILER_BUFFER_TRACING_MEMORY_COPY#
See also
-
enumerator ROCPROFILER_BUFFER_TRACING_KERNEL_DISPATCH#
Buffer kernel dispatch info.
-
enumerator ROCPROFILER_BUFFER_TRACING_SCRATCH_MEMORY#
Buffer scratch memory reclaimation info.
-
enumerator ROCPROFILER_BUFFER_TRACING_CORRELATION_ID_RETIREMENT#
Correlation ID in no longer in use.
-
enumerator ROCPROFILER_BUFFER_TRACING_RCCL_API#
RCCL tracing.
-
enumerator ROCPROFILER_BUFFER_TRACING_OMPT#
See also
rocprofiler_ompt_operation_t
-
enumerator ROCPROFILER_BUFFER_TRACING_MEMORY_ALLOCATION#
-
enumerator ROCPROFILER_BUFFER_TRACING_RUNTIME_INITIALIZATION#
Record indicating a runtime library has been initialized.
-
enumerator ROCPROFILER_BUFFER_TRACING_ROCDECODE_API#
rocDecode tracing
-
enumerator ROCPROFILER_BUFFER_TRACING_ROCJPEG_API#
rocJPEG tracing
-
enumerator ROCPROFILER_BUFFER_TRACING_HIP_STREAM#
See also
-
enumerator ROCPROFILER_BUFFER_TRACING_HIP_RUNTIME_API_EXT#
-
enumerator ROCPROFILER_BUFFER_TRACING_HIP_COMPILER_API_EXT#
-
enumerator ROCPROFILER_BUFFER_TRACING_ROCDECODE_API_EXT#
-
enumerator ROCPROFILER_BUFFER_TRACING_KFD_EVENT_PAGE_MIGRATE#
See also
rocprofiler_kfd_event_page_migrate_operation_t
-
enumerator ROCPROFILER_BUFFER_TRACING_KFD_EVENT_PAGE_FAULT#
See also
rocprofiler_kfd_event_page_fault_operation_t
-
enumerator ROCPROFILER_BUFFER_TRACING_KFD_EVENT_QUEUE#
See also
rocprofiler_kfd_event_queue_operation_t
-
enumerator ROCPROFILER_BUFFER_TRACING_KFD_EVENT_UNMAP_FROM_GPU#
See also
rocprofiler_kfd_event_unmap_from_gpu_operation_t
-
enumerator ROCPROFILER_BUFFER_TRACING_KFD_EVENT_DROPPED_EVENTS#
See also
rocprofiler_kfd_event_dropped_events_operation_t
-
enumerator ROCPROFILER_BUFFER_TRACING_KFD_PAGE_MIGRATE#
See also
rocprofiler_kfd_page_migrate_operation_t
-
enumerator ROCPROFILER_BUFFER_TRACING_KFD_PAGE_FAULT#
See also
rocprofiler_kfd_page_fault_operation_t
-
enumerator ROCPROFILER_BUFFER_TRACING_KFD_QUEUE#
See also
rocprofiler_kfd_queue_operation_t
-
enumerator ROCPROFILER_BUFFER_TRACING_MARKER_CORE_RANGE_API#
See also
rocprofiler_marker_core_range_api_id_t
-
enumerator ROCPROFILER_BUFFER_TRACING_LAST#
-
enumerator ROCPROFILER_BUFFER_TRACING_HIP_RUNTIME_API_EXT
-
enumerator ROCPROFILER_BUFFER_TRACING_HIP_COMPILER_API_EXT
-
enumerator ROCPROFILER_BUFFER_TRACING_ROCDECODE_API_EXT
-
enumerator ROCPROFILER_BUFFER_TRACING_NONE#
-
enum rocprofiler_code_object_operation_t#
ROCProfiler Code Object Tracer Operations.
Values:
-
enumerator ROCPROFILER_CODE_OBJECT_NONE#
Unknown code object operation.
-
enumerator ROCPROFILER_CODE_OBJECT_LOAD#
Code object containing kernel symbols.
-
enumerator ROCPROFILER_CODE_OBJECT_DEVICE_KERNEL_SYMBOL_REGISTER#
Kernel symbols - Device.
-
enumerator ROCPROFILER_CODE_OBJECT_HOST_KERNEL_SYMBOL_REGISTER#
Kernel symbols - Host.
-
enumerator ROCPROFILER_CODE_OBJECT_LAST#
-
enumerator ROCPROFILER_CODE_OBJECT_NONE#
-
enum rocprofiler_hip_stream_operation_t#
ROCProfiler HIP Stream Operations. These operations can be used to associate subsequent information with a HIP stream.
Values:
-
enumerator ROCPROFILER_HIP_STREAM_NONE#
Unknown stream handle operation.
-
enumerator ROCPROFILER_HIP_STREAM_CREATE#
A stream handle is created.
-
enumerator ROCPROFILER_HIP_STREAM_DESTROY#
A stream handle is destroyed.
-
enumerator ROCPROFILER_HIP_STREAM_SET#
-
enumerator ROCPROFILER_HIP_STREAM_LAST#
-
enumerator ROCPROFILER_HIP_STREAM_SET
-
enumerator ROCPROFILER_HIP_STREAM_NONE#
-
enum rocprofiler_memory_copy_operation_t#
Memory Copy Operations.
Values:
-
enumerator ROCPROFILER_MEMORY_COPY_NONE#
Unknown memory copy direction.
-
enumerator ROCPROFILER_MEMORY_COPY_HOST_TO_HOST#
Memory copy from host to host.
-
enumerator ROCPROFILER_MEMORY_COPY_HOST_TO_DEVICE#
Memory copy from host to device.
-
enumerator ROCPROFILER_MEMORY_COPY_DEVICE_TO_HOST#
Memory copy from device to host.
-
enumerator ROCPROFILER_MEMORY_COPY_DEVICE_TO_DEVICE#
Memory copy from device to device.
-
enumerator ROCPROFILER_MEMORY_COPY_LAST#
-
enumerator ROCPROFILER_MEMORY_COPY_NONE#
-
enum rocprofiler_memory_allocation_operation_t#
Memory Allocation Operation.
Values:
-
enumerator ROCPROFILER_MEMORY_ALLOCATION_NONE#
Unknown memory allocation function.
-
enumerator ROCPROFILER_MEMORY_ALLOCATION_ALLOCATE#
Allocate memory function.
-
enumerator ROCPROFILER_MEMORY_ALLOCATION_VMEM_ALLOCATE#
Allocate vmem memory handle.
-
enumerator ROCPROFILER_MEMORY_ALLOCATION_FREE#
Free memory function.
-
enumerator ROCPROFILER_MEMORY_ALLOCATION_VMEM_FREE#
Release vmem memory handle.
-
enumerator ROCPROFILER_MEMORY_ALLOCATION_LAST#
-
enumerator ROCPROFILER_MEMORY_ALLOCATION_NONE#
-
enum rocprofiler_kernel_dispatch_operation_t#
ROCProfiler Kernel Dispatch Tracing Operation Types.
Values:
-
enumerator ROCPROFILER_KERNEL_DISPATCH_NONE#
Unknown kernel dispatch operation.
-
enumerator ROCPROFILER_KERNEL_DISPATCH_ENQUEUE#
-
enumerator ROCPROFILER_KERNEL_DISPATCH_COMPLETE#
-
enumerator ROCPROFILER_KERNEL_DISPATCH_LAST#
-
enumerator ROCPROFILER_KERNEL_DISPATCH_ENQUEUE
-
enumerator ROCPROFILER_KERNEL_DISPATCH_COMPLETE
-
enumerator ROCPROFILER_KERNEL_DISPATCH_NONE#
-
enum rocprofiler_pc_sampling_method_t#
PC Sampling Method.
Values:
-
enumerator ROCPROFILER_PC_SAMPLING_METHOD_NONE#
Unknown sampling type.
-
enumerator ROCPROFILER_PC_SAMPLING_METHOD_STOCHASTIC#
Stochastic sampling (MI300+)
-
enumerator ROCPROFILER_PC_SAMPLING_METHOD_HOST_TRAP#
Interval sampling (MI200+)
-
enumerator ROCPROFILER_PC_SAMPLING_METHOD_LAST#
-
enumerator ROCPROFILER_PC_SAMPLING_METHOD_NONE#
-
enum rocprofiler_pc_sampling_unit_t#
PC Sampling Unit.
Values:
-
enumerator ROCPROFILER_PC_SAMPLING_UNIT_NONE#
Sample interval has unspecified units.
-
enumerator ROCPROFILER_PC_SAMPLING_UNIT_INSTRUCTIONS#
Sample interval is in instructions.
-
enumerator ROCPROFILER_PC_SAMPLING_UNIT_CYCLES#
Sample interval is in cycles.
-
enumerator ROCPROFILER_PC_SAMPLING_UNIT_TIME#
Sample internval is in nanoseconds.
-
enumerator ROCPROFILER_PC_SAMPLING_UNIT_LAST#
-
enumerator ROCPROFILER_PC_SAMPLING_UNIT_NONE#
-
enum rocprofiler_buffer_policy_t#
Actions when Buffer is full.
Values:
-
enumerator ROCPROFILER_BUFFER_POLICY_NONE#
No policy has been set.
-
enumerator ROCPROFILER_BUFFER_POLICY_DISCARD#
Drop records when buffer is full.
-
enumerator ROCPROFILER_BUFFER_POLICY_LOSSLESS#
Block when buffer is full.
-
enumerator ROCPROFILER_BUFFER_POLICY_LAST#
-
enumerator ROCPROFILER_BUFFER_POLICY_NONE#
-
enum rocprofiler_scratch_memory_operation_t#
Scratch event kind.
Values:
-
enumerator ROCPROFILER_SCRATCH_MEMORY_NONE#
Unknown scratch operation.
-
enumerator ROCPROFILER_SCRATCH_MEMORY_ALLOC#
Scratch memory allocation event.
-
enumerator ROCPROFILER_SCRATCH_MEMORY_FREE#
Scratch memory free event.
-
enumerator ROCPROFILER_SCRATCH_MEMORY_ASYNC_RECLAIM#
Scratch memory asynchronously reclaimed.
-
enumerator ROCPROFILER_SCRATCH_MEMORY_LAST#
-
enumerator ROCPROFILER_SCRATCH_MEMORY_NONE#
-
enum rocprofiler_runtime_library_t#
Enumeration for specifying runtime libraries supported by rocprofiler. This enumeration is used for thread creation callbacks.
See also
Internal Thread Handling.
Values:
-
enumerator ROCPROFILER_LIBRARY#
-
enumerator ROCPROFILER_HSA_LIBRARY#
-
enumerator ROCPROFILER_HIP_LIBRARY#
-
enumerator ROCPROFILER_MARKER_LIBRARY#
-
enumerator ROCPROFILER_RCCL_LIBRARY#
-
enumerator ROCPROFILER_ROCDECODE_LIBRARY#
-
enumerator ROCPROFILER_ROCJPEG_LIBRARY#
-
enumerator ROCPROFILER_LIBRARY_LAST#
-
enumerator ROCPROFILER_LIBRARY#
-
enum rocprofiler_intercept_table_t#
Enumeration for specifying intercept tables supported by rocprofiler. This enumeration is used for intercept tables.
See also
Intercept table for runtime libraries.
Values:
-
enumerator ROCPROFILER_HSA_TABLE#
-
enumerator ROCPROFILER_HIP_RUNTIME_TABLE#
-
enumerator ROCPROFILER_HIP_COMPILER_TABLE#
-
enumerator ROCPROFILER_MARKER_CORE_TABLE#
-
enumerator ROCPROFILER_MARKER_CONTROL_TABLE#
-
enumerator ROCPROFILER_MARKER_NAME_TABLE#
-
enumerator ROCPROFILER_RCCL_TABLE#
-
enumerator ROCPROFILER_ROCDECODE_TABLE#
-
enumerator ROCPROFILER_ROCJPEG_TABLE#
-
enumerator ROCPROFILER_TABLE_LAST#
-
enumerator ROCPROFILER_HSA_TABLE#
-
enum rocprofiler_runtime_initialization_operation_t#
ROCProfiler Runtime Initialization Tracer Operations.
Values:
-
enumerator ROCPROFILER_RUNTIME_INITIALIZATION_NONE#
Unknown runtime initialization.
-
enumerator ROCPROFILER_RUNTIME_INITIALIZATION_HSA#
Application loaded HSA runtime.
-
enumerator ROCPROFILER_RUNTIME_INITIALIZATION_HIP#
Application loaded HIP runtime.
-
enumerator ROCPROFILER_RUNTIME_INITIALIZATION_MARKER#
Application loaded Marker (ROCTx) runtime.
-
enumerator ROCPROFILER_RUNTIME_INITIALIZATION_RCCL#
Application loaded RCCL runtime.
-
enumerator ROCPROFILER_RUNTIME_INITIALIZATION_ROCDECODE#
Application loaded rocDecoder runtime.
-
enumerator ROCPROFILER_RUNTIME_INITIALIZATION_ROCJPEG#
Application loaded rocJPEG runtime.
-
enumerator ROCPROFILER_RUNTIME_INITIALIZATION_LAST#
-
enumerator ROCPROFILER_RUNTIME_INITIALIZATION_NONE#
-
enum rocprofiler_counter_info_version_id_t#
Enumeration for specifying the counter info struct version you want.
Values:
-
enumerator ROCPROFILER_COUNTER_INFO_VERSION_NONE#
-
enumerator ROCPROFILER_COUNTER_INFO_VERSION_0#
See also
-
enumerator ROCPROFILER_COUNTER_INFO_VERSION_1#
See also
-
enumerator ROCPROFILER_COUNTER_INFO_VERSION_LAST#
-
enumerator ROCPROFILER_COUNTER_INFO_VERSION_NONE#
-
enum rocprofiler_counter_record_kind_t#
Enumeration for distinguishing different buffer record kinds within the ROCPROFILER_BUFFER_CATEGORY_COUNTERS category.
Values:
-
enumerator ROCPROFILER_COUNTER_RECORD_NONE#
-
enumerator ROCPROFILER_COUNTER_RECORD_PROFILE_COUNTING_DISPATCH_HEADER#
-
enumerator ROCPROFILER_COUNTER_RECORD_VALUE#
-
enumerator ROCPROFILER_COUNTER_RECORD_LAST#
-
enumerator ROCPROFILER_COUNTER_RECORD_NONE#
-
enum rocprofiler_counter_flag_t#
Enumeration of flags that can be used with some counter api calls.
Values:
-
enumerator ROCPROFILER_COUNTER_FLAG_NONE#
-
enumerator ROCPROFILER_COUNTER_FLAG_ASYNC#
Do not wait for completion before returning.
-
enumerator ROCPROFILER_COUNTER_FLAG_APPEND_DEFINITION#
Append the counter definition to the system provided counter definition file.
-
enumerator ROCPROFILER_COUNTER_FLAG_LAST#
-
enumerator ROCPROFILER_COUNTER_FLAG_NONE#
-
enum rocprofiler_pc_sampling_record_kind_t#
Enumeration for distinguishing different buffer record kinds within the ROCPROFILER_BUFFER_CATEGORY_PC_SAMPLING category.
Values:
-
enumerator ROCPROFILER_PC_SAMPLING_RECORD_NONE#
-
enumerator ROCPROFILER_PC_SAMPLING_RECORD_INVALID_SAMPLE#
-
enumerator ROCPROFILER_PC_SAMPLING_RECORD_HOST_TRAP_V0_SAMPLE#
-
enumerator ROCPROFILER_PC_SAMPLING_RECORD_STOCHASTIC_V0_SAMPLE#
-
enumerator ROCPROFILER_PC_SAMPLING_RECORD_LAST#
-
enumerator ROCPROFILER_PC_SAMPLING_RECORD_NONE#
-
typedef uint64_t rocprofiler_timestamp_t#
ROCProfiler Timestamp.
-
typedef uint64_t rocprofiler_thread_id_t#
Thread ID. Value will be equivalent to
syscall(__NR_gettid)
-
typedef int32_t rocprofiler_tracing_operation_t#
Tracing Operation ID. Depending on the kind, operations can be determined. If the value is equal to zero that means all operations will be considered for tracing. Detailed API tracing operations can be found at associated header file for that partiular operation. i.e: For ROCProfiler enumeration of HSA AMD Extended API tracing operations, look at source/include/rocprofiler-sdk/hsa/amd_ext_api_id.h.
-
typedef uint64_t rocprofiler_kernel_id_t#
Kernel identifier type.
-
typedef uint64_t rocprofiler_dispatch_id_t#
-
typedef uint64_t rocprofiler_counter_instance_id_t#
Unique record id encoding both the counter and dimensional values (positions) for the record.
-
typedef uint64_t rocprofiler_counter_dimension_id_t#
A dimension for counter instances. Some example dimensions include XCC, SM (Shader), etc. This value represents the dimension beind described or queried about.
-
typedef rocprofiler_counter_record_dimension_info_t rocprofiler_record_dimension_info_t#
-
typedef rocprofiler_counter_record_t rocprofiler_record_counter_t#
-
static inline uint64_t rocprofiler_record_header_compute_hash(uint32_t category, uint32_t kind)#
Function for computing the unsigned 64-bit hash value in rocprofiler_record_header_t from a category and kind (two unsigned 32-bit values)
- Parameters:
category – [in] a value from rocprofiler_buffer_category_t
kind – [in] depending on the category, this is the domain value, e.g., rocprofiler_buffer_tracing_kind_t value
- Returns:
uint64_t hash value of category and kind
-
ROCPROFILER_CORRELATION_ID_INTERNAL_NONE#
The NULL value of an internal correlation ID.
-
ROCPROFILER_CORRELATION_ID_ANCESTOR_NONE#
The NULL value of an ancestor correlation ID.
-
union rocprofiler_user_data_t#
- #include <rocprofiler-sdk/fwd.h>
User-assignable data type.
-
union rocprofiler_address_t#
- #include <rocprofiler-sdk/fwd.h>
Stores memory address for profiling.
-
struct rocprofiler_uuid_t#
- #include <rocprofiler-sdk/fwd.h>
Stores UUID for devices.
-
struct rocprofiler_version_triplet_t#
- #include <rocprofiler-sdk/fwd.h>
Versioning info.
-
struct rocprofiler_context_id_t#
- #include <rocprofiler-sdk/fwd.h>
Context ID.
-
struct rocprofiler_queue_id_t#
- #include <rocprofiler-sdk/fwd.h>
Queue ID.
-
struct rocprofiler_stream_id_t#
- #include <rocprofiler-sdk/fwd.h>
Stream ID.
-
struct rocprofiler_correlation_id_t#
- #include <rocprofiler-sdk/fwd.h>
ROCProfiler Record Correlation ID.
-
struct rocprofiler_async_correlation_id_t#
- #include <rocprofiler-sdk/fwd.h>
ROCProfiler Correlation ID record for async activity.
-
struct rocprofiler_buffer_id_t#
- #include <rocprofiler-sdk/fwd.h>
Buffer ID.
-
struct rocprofiler_agent_id_t#
- #include <rocprofiler-sdk/fwd.h>
Agent Identifier.
-
struct rocprofiler_counter_id_t#
- #include <rocprofiler-sdk/fwd.h>
Counter ID.
-
struct rocprofiler_counter_config_id_t#
- #include <rocprofiler-sdk/fwd.h>
Profile Configurations.
See also
rocprofiler_create_counter_config for how to create.
-
struct rocprofiler_dim3_t#
- #include <rocprofiler-sdk/fwd.h>
Multi-dimensional struct of data used to describe GPU workgroup and grid sizes.
-
struct rocprofiler_callback_tracing_record_t#
- #include <rocprofiler-sdk/fwd.h>
Tracing record.
-
struct rocprofiler_record_header_t#
- #include <rocprofiler-sdk/fwd.h>
Generic record with type identifier(s) and a pointer to data. This data type is used with buffered data.
void tool_tracing_callback(rocprofiler_record_header_t** headers, size_t num_headers) { for(size_t i = 0; i < num_headers; ++i) { rocprofiler_record_header_t* header = headers[i]; if(header->category == ROCPROFILER_BUFFER_CATEGORY_TRACING && header->kind == ROCPROFILER_BUFFER_TRACING_HSA_API) { // cast to rocprofiler_buffer_tracing_hsa_api_record_t which // is type associated with this category + kind auto* record = static_cast<rocprofiler_buffer_tracing_hsa_api_record_t*>(header->payload); // trivial test assert(record->start_timestamp <= record->end_timestamp); } } }
-
struct rocprofiler_kernel_dispatch_info_t#
- #include <rocprofiler-sdk/fwd.h>
ROCProfiler kernel dispatch information.
-
struct rocprofiler_counter_record_dimension_info_t#
- #include <rocprofiler-sdk/fwd.h>
(experimental) Details for the dimension, including its size, for a counter record.
-
struct rocprofiler_counter_record_t#
- #include <rocprofiler-sdk/fwd.h>
(experimental) ROCProfiler Profile Counting Counter Record per instance.
- rocprofiler_record_header_t.__unnamed16__
Public Members
- struct rocprofiler_record_header_t
-
uint64_t hash#
generic identifier. You can compute this via:
uint64_t hash = category | ((uint64_t)(kind) << 32)
- rocprofiler_record_header_t.__unnamed16__.__unnamed18__