rocprofiler-sdk/buffer_tracing.h Source File#
|
ROCprofiler-SDK developer API 1.0.0
ROCm Profiling API and tools
|
buffer_tracing.h
594 * @retval ::ROCPROFILER_STATUS_ERROR_CONFIGURATION_LOCKED ::rocprofiler_configure initialization
597 * @retval ::ROCPROFILER_STATUS_ERROR_SERVICE_ALREADY_CONFIGURED Context has already been configured
620 * @param [out] name_len If non-null, this will be assigned the length of the name (regardless of
638 * @param [in] operation Enumeration id value which maps to a specific API function or event type
642 * @param [out] name_len If non-null, this will be assigned the length of the name (regardless of
646 * @retval ::ROCPROFILER_STATUS_ERROR_OPERATION_NOT_FOUND The operation number is not recognized for
650 * @retval ::ROCPROFILER_STATUS_SUCCESS Valid domain and operation, regardless of whether there is a
660 * @brief Iterate over all the buffer tracing kinds and invokes the callback for each buffer tracing
663 * This is typically used to invoke ::rocprofiler_iterate_buffer_tracing_kind_operations for each
678 * id. This is useful to build a map of the operation names during tool initialization instead of
702 * @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:516
rocprofiler_runtime_initialization_operation_t
ROCProfiler Runtime Initialization Tracer Operations.
Definition fwd.h:430
uint64_t rocprofiler_thread_id_t
Thread ID. Value will be equivalent to syscall(__NR_gettid)
Definition fwd.h:507
rocprofiler_kernel_dispatch_operation_t
ROCProfiler Kernel Dispatch Tracing Operation Types.
Definition fwd.h:304
ROCProfiler Correlation ID record for async activity.
Definition fwd.h:643
Generic record with type identifier(s) and a pointer to data. This data type is used with buffered da...
Definition fwd.h:753
rocprofiler_tracing_operation_t operation
Specification of the API function, e.g., rocprofiler_rccl_api_id_t.
Definition buffer_tracing.h:199
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:222
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_MEMORY_ALLOCATION
Definition buffer_tracing.h:304
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_MARKER_CORE_API, ROCPROFILER_CALLBACK_TRACING_MARKER_CONTROL_API,...
Definition buffer_tracing.h:175
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_KFD_PAGE_FAULT
Definition buffer_tracing.h:472
rocprofiler_thread_id_t thread_id
ID for thread which loaded this runtime.
Definition buffer_tracing.h:545
rocprofiler_timestamp_t start_timestamp
Start timestamp as reported by KFD.
Definition buffer_tracing.h:448
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:203
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_ROCJPEG_API
Definition buffer_tracing.h:259
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:96
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:177
rocprofiler_agent_id_t agent_id
Agent ID on which memory ranges were unmapped.
Definition buffer_tracing.h:411
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:356
rocprofiler_tracing_operation_t operation
Specification of the rocprofiler_ompt_operation_t.
Definition buffer_tracing.h:150
rocprofiler_agent_id_t preferred_agent
Preferred location for this memory.
Definition buffer_tracing.h:456
rocprofiler_rocdecode_api_retval_t retval
return value of function call
Definition buffer_tracing.h:244
rocprofiler_agent_id_t prefetch_agent
Agent to which memory is to be prefetched.
Definition buffer_tracing.h:455
rocprofiler_timestamp_t timestamp
Timestamp (in nanosec) of when rocprofiler detected the correlation ID could be retired....
Definition buffer_tracing.h:522
uint64_t instance
Number of times this runtime had been loaded previously.
Definition buffer_tracing.h:548
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_KFD_QUEUE
Definition buffer_tracing.h:489
rocprofiler_memory_allocation_operation_t operation
Specification of the memory allocation function (.
Definition buffer_tracing.h:305
rocprofiler_timestamp_t start_timestamp
Start timestamp as reported by KFD.
Definition buffer_tracing.h:474
rocprofiler_kfd_event_dropped_events_operation_t operation
Definition buffer_tracing.h:429
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_SCRATCH_MEMORY
Definition buffer_tracing.h:503
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:200
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:306
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:239
rocprofiler_kfd_event_unmap_from_gpu_operation_t operation
Definition buffer_tracing.h:408
rocprofiler_address_t end_address
End address of the memory range being migrated.
Definition buffer_tracing.h:352
rocprofiler_timestamp_t timestamp
Timestamp of the event as reported by KFD.
Definition buffer_tracing.h:396
rocprofiler_agent_id_t agent_id
agent information for memory allocation
Definition buffer_tracing.h:310
rocprofiler_rocdecode_api_id_t operation
Specification of the API function, e.g., rocprofiler_rocdecode_api_id_t.
Definition buffer_tracing.h:218
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_KFD_EVENT_QUEUE
Definition buffer_tracing.h:394
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:261
rocprofiler_timestamp_t timestamp
Timestamp of the event as reported by KFD.
Definition buffer_tracing.h:349
rocprofiler_address_t start_address
Start address of the memory range being migrated.
Definition buffer_tracing.h:451
rocprofiler_agent_id_t src_agent
Source agent from which pages were migrated.
Definition buffer_tracing.h:453
rocprofiler_address_t start_address
Start address of the memory range being unmapped.
Definition buffer_tracing.h:412
rocprofiler_timestamp_t timestamp
Timestamp of the event as reported by KFD.
Definition buffer_tracing.h:430
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:151
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:180
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_RUNTIME_INITIALIZATION
Definition buffer_tracing.h:542
rocprofiler_timestamp_t end_timestamp
End timestamp as reported by KFD.
Definition buffer_tracing.h:449
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_KFD_PAGE_MIGRATE
Definition buffer_tracing.h:446
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:355
rocprofiler_kfd_event_page_migrate_operation_t operation
Definition buffer_tracing.h:348
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_HSA_CORE_API, ROCPROFILER_CALLBACK_TRACING_HSA_AMD_EXT_API,...
Definition buffer_tracing.h:50
rocprofiler_timestamp_t timestamp
Timestamp (in nanosec) of when runtime was initialized/loaded.
Definition buffer_tracing.h:546
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:242
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_CORRELATION_ID_RETIREMENT
Definition buffer_tracing.h:521
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_KFD_EVENT_PAGE_FAULT
Definition buffer_tracing.h:377
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_RCCL_API
Definition buffer_tracing.h:198
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:51
rocprofiler_timestamp_t start_timestamp
Start timestamp as reported by KFD.
Definition buffer_tracing.h:491
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_KERNEL_DISPATCH
Definition buffer_tracing.h:327
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_ROCDECODE_API
Definition buffer_tracing.h:217
rocprofiler_correlation_id_t correlation_id
Correlation ID for these records are always zero.
Definition buffer_tracing.h:544
rocprofiler_timestamp_t end_timestamp
End timestamp as reported by KFD.
Definition buffer_tracing.h:475
rocprofiler_runtime_initialization_operation_t operation
Indicates which runtime was initialized/loaded.
Definition buffer_tracing.h:543
rocprofiler_kernel_dispatch_operation_t operation
Kernel dispatch buffer records only report the ROCPROFILER_KERNEL_DISPATCH_COMPLETE operation because...
Definition buffer_tracing.h:328
rocprofiler_scratch_memory_operation_t operation
specification of the kind
Definition buffer_tracing.h:504
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:100
rocprofiler_memory_copy_operation_t operation
Specification of the memory copy direction (.
Definition buffer_tracing.h:280
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_ROCDECODE_API_EXT
Definition buffer_tracing.h:237
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:154
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_HIP_RUNTIME_API or ROCPROFILER_CALLBACK_TRACING_HIP_COMPILER_API
Definition buffer_tracing.h:74
rocprofiler_timestamp_t timestamp
Timestamp of the event as reported by KFD.
Definition buffer_tracing.h:379
rocprofiler_address_t start_address
Start address of the memory range being migrated.
Definition buffer_tracing.h:351
rocprofiler_rocdecode_api_id_t operation
Specification of the API function (.
Definition buffer_tracing.h:238
rocprofiler_address_t end_address
End address of the memory range being migrated.
Definition buffer_tracing.h:452
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:176
rocprofiler_agent_id_t dst_agent
Destination agent to which pages were migrated.
Definition buffer_tracing.h:354
rocprofiler_timestamp_t end_timestamp
End timestamp as reported by KFD.
Definition buffer_tracing.h:492
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:508
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:219
rocprofiler_agent_id_t agent_id
Agent ID on which this event occurred.
Definition buffer_tracing.h:494
rocprofiler_agent_id_t src_agent
Source agent from which pages were migrated.
Definition buffer_tracing.h:353
rocprofiler_tracing_operation_t operation
Specification of the API function (.
Definition buffer_tracing.h:260
rocprofiler_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:505
rocprofiler_kfd_queue_operation_t operation
Definition buffer_tracing.h:490
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_MEMORY_COPY
Definition buffer_tracing.h:279
rocprofiler_async_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:329
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_BUFFER_TRACING_OMPT
Definition buffer_tracing.h:149
rocprofiler_timestamp_t timestamp
Timestamp of the event as reported by KFD.
Definition buffer_tracing.h:409
rocprofiler_thread_id_t thread_id
id for thread generating this record
Definition buffer_tracing.h:264
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:75
rocprofiler_agent_id_t dst_agent
Destination agent to which pages were migrated.
Definition buffer_tracing.h:454
rocprofiler_kfd_event_queue_operation_t operation
Definition buffer_tracing.h:395
rocprofiler_agent_id_t agent_id
Agent ID on which this event occurred.
Definition buffer_tracing.h:398
rocprofiler_buffer_tracing_kind_t kind
ROCPROFILER_CALLBACK_TRACING_HIP_RUNTIME_API or ROCPROFILER_CALLBACK_TRACING_HIP_COMPILER_API
Definition buffer_tracing.h:95
uint64_t internal_correlation_id
Only internal correlation ID is provided.
Definition buffer_tracing.h:523
rocprofiler_async_correlation_id_t correlation_id
correlation ids for record
Definition buffer_tracing.h:281
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:580
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:709
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:572
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:519
ROCProfiler Buffer HIP API Tracer Record.
Definition buffer_tracing.h:93
ROCProfiler Buffer HIP API Tracer Record.
Definition buffer_tracing.h:72
ROCProfiler Buffer HSA API Tracer Record.
Definition buffer_tracing.h:48
ROCProfiler Buffer Kernel Dispatch Tracer Record.
Definition buffer_tracing.h:325
ROCProfiler Buffer Dropped events event record, for when KFD reports that it has dropped some events.
Definition buffer_tracing.h:426
ROCProfiler Buffer Page Fault event record from KFD.
Definition buffer_tracing.h:375
ROCProfiler Buffer Page Migration event record from KFD.
Definition buffer_tracing.h:345
ROCProfiler Buffer Queue event record from KFD.
Definition buffer_tracing.h:392
ROCProfiler Buffer Unmap of memory from GPU event record from KFD.
Definition buffer_tracing.h:405
ROCProfiler Buffer Page Fault (paired) record from KFD.
Definition buffer_tracing.h:470
ROCProfiler Buffer Page Migration (paired) record from KFD.
Definition buffer_tracing.h:444
ROCProfiler Buffer Queue suspend (paired) record from KFD.
Definition buffer_tracing.h:487
ROCProfiler Buffer Marker Tracer Record.
Definition buffer_tracing.h:173
ROCProfiler Buffer Memory Allocation Tracer Record.
Definition buffer_tracing.h:302
ROCProfiler Buffer Memory Copy Tracer Record.
Definition buffer_tracing.h:277
ROCProfiler Buffer OMPT Tracer Record.
Definition buffer_tracing.h:147
Additional trace data for OpenMP target routines.
Definition buffer_tracing.h:117
ROCProfiler Buffer RCCL API Record.
Definition buffer_tracing.h:196
An extended ROCProfiler rocDecode API Tracer Record which includes function arguments....
Definition buffer_tracing.h:235
ROCProfiler Buffer rocDecode API Record.
Definition buffer_tracing.h:215
ROCProfiler Buffer rocJPEG API Record.
Definition buffer_tracing.h:257
ROCProfiler Buffer Runtime Initialization Tracer Record.
Definition buffer_tracing.h:540
ROCProfiler Buffer Scratch Memory Tracer Record.
Definition buffer_tracing.h:501
Generated by