rocprofiler-sdk/buffer_tracing.h Source File#
|
ROCprofiler-SDK developer API 1.3.5
ROCm Profiling API and tools
|
buffer_tracing.h
703 * @retval ::ROCPROFILER_STATUS_ERROR_CONFIGURATION_LOCKED ::rocprofiler_configure initialization
706 * @retval ::ROCPROFILER_STATUS_ERROR_SERVICE_ALREADY_CONFIGURED Context has already been configured
727 * allocation, this parameter will be set to the address of the string literal, otherwise it will
729 * @param [out] name_len If non-null, this will be assigned the length of the name (regardless of
747 * @param [in] operation Enumeration id value which maps to a specific API function or event type
749 * allocation, this parameter will be set to the address of the string literal, otherwise it will
751 * @param [out] name_len If non-null, this will be assigned the length of the name (regardless of
755 * @retval ::ROCPROFILER_STATUS_ERROR_OPERATION_NOT_FOUND The operation number is not recognized for
759 * @retval ::ROCPROFILER_STATUS_SUCCESS Valid domain and operation, regardless of whether there is a
769 * @brief Iterate over all the buffer tracing kinds and invokes the callback for each buffer tracing
772 * This is typically used to invoke ::rocprofiler_iterate_buffer_tracing_kind_operations for each
787 * id. This is useful to build a map of the operation names during tool initialization instead of
811 * @param [in] arg_indirection_count the total number of indirection levels for the argument, e.g.
int32_t rocprofiler_tracing_operation_t
Tracing Operation ID. Depending on the kind, operations can be determined. If the value is equal to z...
Definition fwd.h:564
rocprofiler_runtime_initialization_operation_t
ROCProfiler Runtime Initialization Tracer Operations.
Definition fwd.h:475
uint64_t rocprofiler_thread_id_t
Thread ID. Value will be equivalent to syscall(__NR_gettid)
Definition fwd.h:555
rocprofiler_kernel_dispatch_operation_t
ROCProfiler Kernel Dispatch Tracing Operation Types.
Definition fwd.h:344
ROCProfiler Correlation ID record for async activity.
Definition fwd.h:709
HIP graph executable instance ID. Process-monotonic identifier assigned by rocprofiler-sdk for each s...
Definition fwd.h:673
Generic record with type identifier(s) and a pointer to data. This data type is used with buffered da...
Definition fwd.h:819
rocprofiler_tracing_operation_t operation
Specification of the API function, e.g., rocprofiler_rccl_api_id_t.
Definition buffer_tracing.h:202
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:100
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:267
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_MEMORY_ALLOCATION
Definition buffer_tracing.h:392
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_MARKER_CORE_API, ROCPROFILER_CALLBACK_TRACING_MARKER_CONTROL_API,...
Definition buffer_tracing.h:178
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_KFD_PAGE_FAULT
Definition buffer_tracing.h:581
rocprofiler_thread_id_t thread_id
ID for thread which loaded this runtime.
Definition buffer_tracing.h:654
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_ROCSHMEM_API_EXT
Definition buffer_tracing.h:240
rocprofiler_timestamp_t start_timestamp
Start timestamp as reported by KFD.
Definition buffer_tracing.h:557
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:206
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_ROCJPEG_API
Definition buffer_tracing.h:304
rocprofiler_tracing_operation_t operation
Specification of the API function, e.g., rocprofiler_hip_runtime_api_id_t or rocprofiler_hip_compiler...
Definition buffer_tracing.h:99
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:180
rocprofiler_agent_id_t agent_id
Agent ID on which memory ranges were unmapped.
Definition buffer_tracing.h:520
rocprofiler_agent_id_t preferred_agent
Preferred location for this memory This field should be ignored on a migrate-end event.
Definition buffer_tracing.h:465
rocprofiler_tracing_operation_t operation
Specification of the rocprofiler_ompt_operation_t.
Definition buffer_tracing.h:153
rocprofiler_agent_id_t preferred_agent
Preferred location for this memory.
Definition buffer_tracing.h:565
rocprofiler_rocdecode_api_retval_t retval
return value of function call
Definition buffer_tracing.h:289
rocprofiler_hipfile_api_id_t operation
Specification of the API function (.
Definition buffer_tracing.h:325
rocprofiler_agent_id_t prefetch_agent
Agent to which memory is to be prefetched.
Definition buffer_tracing.h:564
rocprofiler_timestamp_t timestamp
Timestamp (in nanosec) of when rocprofiler detected the correlation ID could be retired....
Definition buffer_tracing.h:631
uint64_t instance
Number of times this runtime had been loaded previously.
Definition buffer_tracing.h:657
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_KFD_QUEUE
Definition buffer_tracing.h:598
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_ROCSHMEM_API
Definition buffer_tracing.h:220
rocprofiler_memory_allocation_operation_t operation
Specification of the memory allocation function (.
Definition buffer_tracing.h:393
rocprofiler_timestamp_t start_timestamp
Start timestamp as reported by KFD.
Definition buffer_tracing.h:583
rocprofiler_kfd_event_dropped_events_operation_t operation
Definition buffer_tracing.h:538
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_SCRATCH_MEMORY
Definition buffer_tracing.h:612
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:203
rocprofiler_tracing_operation_t operation
Specification of the API function, e.g., rocprofiler_rocshmem_api_id_t.
Definition buffer_tracing.h:221
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:394
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:284
rocprofiler_kfd_event_unmap_from_gpu_operation_t operation
Definition buffer_tracing.h:517
rocprofiler_address_t end_address
End address of the memory range being migrated.
Definition buffer_tracing.h:461
rocprofiler_timestamp_t timestamp
Timestamp of the event as reported by KFD.
Definition buffer_tracing.h:505
rocprofiler_agent_id_t agent_id
agent information for memory allocation
Definition buffer_tracing.h:398
rocprofiler_rocdecode_api_id_t operation
Specification of the API function, e.g., rocprofiler_rocdecode_api_id_t.
Definition buffer_tracing.h:263
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_KFD_EVENT_QUEUE
Definition buffer_tracing.h:503
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:306
rocprofiler_timestamp_t timestamp
Timestamp of the event as reported by KFD.
Definition buffer_tracing.h:458
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:225
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:242
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:222
rocprofiler_address_t start_address
Start address of the memory range being migrated.
Definition buffer_tracing.h:560
rocprofiler_agent_id_t src_agent
Source agent from which pages were migrated.
Definition buffer_tracing.h:562
rocprofiler_address_t start_address
Start address of the memory range being unmapped.
Definition buffer_tracing.h:521
rocprofiler_timestamp_t timestamp
Timestamp of the event as reported by KFD.
Definition buffer_tracing.h:539
rocprofiler_hipfile_api_id_t operation
Specification of the API function (.
Definition buffer_tracing.h:346
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:154
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:183
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_RUNTIME_INITIALIZATION
Definition buffer_tracing.h:651
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:347
rocprofiler_timestamp_t end_timestamp
End timestamp as reported by KFD.
Definition buffer_tracing.h:558
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:350
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_KFD_PAGE_MIGRATE
Definition buffer_tracing.h:555
rocprofiler_agent_id_t prefetch_agent
Agent to which memory is to be prefetched. This field should be ignored on a migrate-end event.
Definition buffer_tracing.h:464
rocprofiler_kfd_event_page_migrate_operation_t operation
Definition buffer_tracing.h:457
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_HSA_CORE_API, ROCPROFILER_CALLBACK_TRACING_HSA_AMD_EXT_API,...
Definition buffer_tracing.h:53
rocprofiler_timestamp_t timestamp
Timestamp (in nanosec) of when runtime was initialized/loaded.
Definition buffer_tracing.h:655
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:287
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_CORRELATION_ID_RETIREMENT
Definition buffer_tracing.h:630
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_KFD_EVENT_PAGE_FAULT
Definition buffer_tracing.h:486
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_HIPFILE_API
Definition buffer_tracing.h:324
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_RCCL_API
Definition buffer_tracing.h:201
rocprofiler_tracing_operation_t operation
Specification of the API function, e.g., rocprofiler_hsa_core_api_id_t, rocprofiler_hsa_amd_ext_api_i...
Definition buffer_tracing.h:54
rocprofiler_timestamp_t start_timestamp
Start timestamp as reported by KFD.
Definition buffer_tracing.h:600
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_HIPFILE_API_EXT
Definition buffer_tracing.h:345
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_KERNEL_DISPATCH
Definition buffer_tracing.h:415
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_ROCDECODE_API
Definition buffer_tracing.h:262
rocprofiler_correlation_id_t correlation_id
Correlation ID for these records are always zero.
Definition buffer_tracing.h:653
rocprofiler_timestamp_t end_timestamp
End timestamp as reported by KFD.
Definition buffer_tracing.h:584
rocprofiler_runtime_initialization_operation_t operation
Indicates which runtime was initialized/loaded.
Definition buffer_tracing.h:652
rocprofiler_kernel_dispatch_operation_t operation
Kernel dispatch buffer records only report the ROCPROFILER_KERNEL_DISPATCH_COMPLETE operation because...
Definition buffer_tracing.h:416
rocprofiler_scratch_memory_operation_t operation
specification of the kind
Definition buffer_tracing.h:613
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:103
rocprofiler_memory_copy_operation_t operation
Specification of the memory copy direction (.
Definition buffer_tracing.h:368
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_ROCDECODE_API_EXT
Definition buffer_tracing.h:282
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:157
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_HIP_RUNTIME_API or ROCPROFILER_CALLBACK_TRACING_HIP_COMPILER_API
Definition buffer_tracing.h:77
rocprofiler_timestamp_t timestamp
Timestamp of the event as reported by KFD.
Definition buffer_tracing.h:488
rocprofiler_address_t start_address
Start address of the memory range being migrated.
Definition buffer_tracing.h:460
rocprofiler_rocdecode_api_id_t operation
Specification of the API function (.
Definition buffer_tracing.h:283
rocprofiler_address_t end_address
End address of the memory range being migrated.
Definition buffer_tracing.h:561
rocprofiler_tracing_operation_t operation
Specification of the API function, e.g., rocprofiler_marker_core_api_id_t, rocprofiler_marker_control...
Definition buffer_tracing.h:179
rocprofiler_agent_id_t dst_agent
Destination agent to which pages were migrated.
Definition buffer_tracing.h:463
rocprofiler_timestamp_t end_timestamp
End timestamp as reported by KFD.
Definition buffer_tracing.h:601
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:326
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:245
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:617
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:264
rocprofiler_agent_id_t agent_id
Agent ID on which this event occurred.
Definition buffer_tracing.h:603
rocprofiler_agent_id_t src_agent
Source agent from which pages were migrated.
Definition buffer_tracing.h:462
rocprofiler_tracing_operation_t operation
Specification of the API function (.
Definition buffer_tracing.h:305
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:614
rocprofiler_rocshmem_api_retval_t retval
return value of function call
Definition buffer_tracing.h:247
rocprofiler_kfd_queue_operation_t operation
Definition buffer_tracing.h:599
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_MEMORY_COPY
Definition buffer_tracing.h:367
rocprofiler_async_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:417
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_OMPT
Definition buffer_tracing.h:152
rocprofiler_timestamp_t timestamp
Timestamp of the event as reported by KFD.
Definition buffer_tracing.h:518
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:309
rocprofiler_tracing_operation_t operation
Specification of the API function, e.g., rocprofiler_hip_runtime_api_id_t or rocprofiler_hip_compiler...
Definition buffer_tracing.h:78
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:329
rocprofiler_agent_id_t dst_agent
Destination agent to which pages were migrated.
Definition buffer_tracing.h:563
rocprofiler_kfd_event_queue_operation_t operation
Definition buffer_tracing.h:504
rocprofiler_agent_id_t agent_id
Agent ID on which this event occurred.
Definition buffer_tracing.h:507
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_HIP_RUNTIME_API or ROCPROFILER_CALLBACK_TRACING_HIP_COMPILER_API
Definition buffer_tracing.h:98
uint64_t internal_correlation_id
Only internal correlation ID is provided.
Definition buffer_tracing.h:632
rocprofiler_tracing_operation_t operation
Specification of the API function (.
Definition buffer_tracing.h:241
rocprofiler_async_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:369
int(* rocprofiler_buffer_tracing_kind_operation_cb_t)(rocprofiler_buffer_tracing_kind_t kind, rocprofiler_tracing_operation_t operation, void *data)
Callback function for mapping the operations of a given rocprofiler_buffer_tracing_kind_t to string n...
Definition buffer_tracing.h:689
rocprofiler_status_t rocprofiler_iterate_buffer_tracing_kinds(rocprofiler_buffer_tracing_kind_cb_t callback, void *data)
Iterate over all the buffer tracing kinds and invokes the callback for each buffer tracing kind.
int(* rocprofiler_buffer_tracing_operation_args_cb_t)(rocprofiler_buffer_tracing_kind_t kind, rocprofiler_tracing_operation_t operation, uint32_t arg_number, const void *const arg_value_addr, int32_t arg_indirection_count, const char *arg_type, const char *arg_name, const char *arg_value_str, void *data)
Callback function for iterating over the function arguments to a traced function. This function will ...
Definition buffer_tracing.h:818
int(* rocprofiler_buffer_tracing_kind_cb_t)(rocprofiler_buffer_tracing_kind_t kind, void *data)
Callback function for mapping rocprofiler_buffer_tracing_kind_t ids to string names.
Definition buffer_tracing.h:681
rocprofiler_status_t rocprofiler_configure_buffer_tracing_service(rocprofiler_context_id_t context_id, rocprofiler_buffer_tracing_kind_t kind, const rocprofiler_tracing_operation_t *operations, unsigned long operations_count, rocprofiler_buffer_id_t buffer_id)
Configure Buffer Tracing Service.
rocprofiler_status_t rocprofiler_query_buffer_tracing_kind_name(rocprofiler_buffer_tracing_kind_t kind, const char **name, uint64_t *name_len)
Query the name of the buffer tracing kind. The name retrieved from this function is a string literal ...
rocprofiler_status_t rocprofiler_query_buffer_tracing_kind_operation_name(rocprofiler_buffer_tracing_kind_t kind, rocprofiler_tracing_operation_t operation, const char **name, uint64_t *name_len)
Query the name of the buffer tracing kind. The name retrieved from this function is a string literal ...
rocprofiler_status_t rocprofiler_iterate_buffer_tracing_kind_operations(rocprofiler_buffer_tracing_kind_t kind, rocprofiler_buffer_tracing_kind_operation_cb_t callback, void *data)
Iterates over all the operations for a given rocprofiler_buffer_tracing_kind_t and invokes the callba...
ROCProfiler Buffer Correlation ID Retirement Tracer Record.
Definition buffer_tracing.h:628
ROCProfiler Buffer HIP API Tracer Record.
Definition buffer_tracing.h:96
ROCProfiler Buffer HIP API Tracer Record.
Definition buffer_tracing.h:75
Summary record emitted once per successful hipGraphLaunch invocation.
Definition buffer_tracing.h:436
An extended ROCProfiler hipFILE API Tracer Record which includes function arguments and return values...
Definition buffer_tracing.h:343
ROCProfiler Buffer hipFILE API Record.
Definition buffer_tracing.h:322
ROCProfiler Buffer HSA API Tracer Record.
Definition buffer_tracing.h:51
ROCProfiler Buffer Kernel Dispatch Tracer Record.
Definition buffer_tracing.h:413
ROCProfiler Buffer Dropped events event record, for when KFD reports that it has dropped some events.
Definition buffer_tracing.h:535
ROCProfiler Buffer Page Fault event record from KFD.
Definition buffer_tracing.h:484
ROCProfiler Buffer Page Migration event record from KFD.
Definition buffer_tracing.h:454
ROCProfiler Buffer Queue event record from KFD.
Definition buffer_tracing.h:501
ROCProfiler Buffer Unmap of memory from GPU event record from KFD.
Definition buffer_tracing.h:514
ROCProfiler Buffer Page Fault (paired) record from KFD.
Definition buffer_tracing.h:579
ROCProfiler Buffer Page Migration (paired) record from KFD.
Definition buffer_tracing.h:553
ROCProfiler Buffer Queue suspend (paired) record from KFD.
Definition buffer_tracing.h:596
ROCProfiler Buffer Marker Tracer Record.
Definition buffer_tracing.h:176
ROCProfiler Buffer Memory Allocation Tracer Record.
Definition buffer_tracing.h:390
ROCProfiler Buffer Memory Copy Tracer Record.
Definition buffer_tracing.h:365
ROCProfiler Buffer OMPT Tracer Record.
Definition buffer_tracing.h:150
Additional trace data for OpenMP target routines.
Definition buffer_tracing.h:120
ROCProfiler Buffer RCCL API Record.
Definition buffer_tracing.h:199
An extended ROCProfiler rocDecode API Tracer Record which includes function arguments....
Definition buffer_tracing.h:280
ROCProfiler Buffer rocDecode API Record.
Definition buffer_tracing.h:260
ROCProfiler Buffer rocJPEG API Record.
Definition buffer_tracing.h:302
An extended ROCProfiler rocSHMEM API Tracer Record which includes function arguments....
Definition buffer_tracing.h:238
ROCProfiler Buffer rocSHMEM API Record.
Definition buffer_tracing.h:218
ROCProfiler Buffer Runtime Initialization Tracer Record.
Definition buffer_tracing.h:649
ROCProfiler Buffer Scratch Memory Tracer Record.
Definition buffer_tracing.h:610
Generated by