The profiling records are asynchronously logged to the pool and can be associated with the respective GPU kernels.
More...
|
uint64_t | rocprofiler_session_id_t::handle |
| Session Identifier to get the session or to be used to call any API that needs to deal with a specific session. More...
|
|
uint64_t | rocprofiler_timestamp_t::value |
|
rocprofiler_timestamp_t | rocprofiler_record_header_timestamp_t::begin |
|
rocprofiler_timestamp_t | rocprofiler_record_header_timestamp_t::end |
|
uint64_t | rocprofiler_record_id_t::handle |
| Record ID handle. More...
|
|
rocprofiler_record_kind_t | rocprofiler_record_header_t::kind |
| Represents the kind of the record using rocprofiler_record_kind_t. More...
|
|
rocprofiler_record_id_t | rocprofiler_record_header_t::id |
| Represents the id of the record. More...
|
|
uint64_t | rocprofiler_agent_id_t::handle |
| a unique id to represent every agent on the system, this handle should be unique across all nodes in multi-node system More...
|
|
uint64_t | rocprofiler_queue_id_t::handle |
| Unique Id for every queue for one agent for one system. More...
|
|
uint64_t | rocprofiler_kernel_id_t::handle |
| Kernel object identifier. More...
|
|
uint32_t | rocprofiler_thread_id_t::value |
| Thread ID. More...
|
|
const char * | rocprofiler_counter_info_t::name |
|
const char * | rocprofiler_counter_info_t::description |
|
const char * | rocprofiler_counter_info_t::expression |
|
uint32_t | rocprofiler_counter_info_t::instances_count |
|
const char * | rocprofiler_counter_info_t::block_name |
|
uint32_t | rocprofiler_counter_info_t::block_counters |
|
uint64_t | rocprofiler_counter_id_t::handle |
| A unique id generated for every counter requested by the user. More...
|
|
uint64_t | rocprofiler_queue_index_t::value |
| queue index value More...
|
|
double | rocprofiler_record_counter_value_t::value |
| Counter value. More...
|
|
rocprofiler_counter_id_t | rocprofiler_record_counter_instance_t::counter_handler |
| Counter Instance Identifier. More...
|
|
rocprofiler_record_counter_value_t | rocprofiler_record_counter_instance_t::value |
| Counter Instance Value. More...
|
|
uint64_t | rocprofiler_record_counters_instances_count_t::value |
| Counters Instances Count for every record. More...
|
|
uint64_t | rocprofiler_kernel_properties_t::grid_size |
| Grid Size. More...
|
|
uint64_t | rocprofiler_kernel_properties_t::workgroup_size |
| workgroup size More...
|
|
uint64_t | rocprofiler_kernel_properties_t::lds_size |
| lds_size More...
|
|
uint64_t | rocprofiler_kernel_properties_t::scratch_size |
| scratch_size More...
|
|
uint64_t | rocprofiler_kernel_properties_t::arch_vgpr_count |
| arch vgpr count More...
|
|
uint64_t | rocprofiler_kernel_properties_t::accum_vgpr_count |
| accum vgpr count More...
|
|
uint64_t | rocprofiler_kernel_properties_t::sgpr_count |
| sgpr_count More...
|
|
uint64_t | rocprofiler_kernel_properties_t::wave_size |
| wave size More...
|
|
uint64_t | rocprofiler_kernel_properties_t::signal_handle |
| Dispatch completion signal handle. More...
|
|
uint64_t | rocprofiler_correlation_id_t::value |
|
rocprofiler_record_header_t | rocprofiler_record_profiler_t::header |
| ROCProfiler General Record base header to identify the id and kind of every record. More...
|
|
rocprofiler_kernel_id_t | rocprofiler_record_profiler_t::kernel_id |
| Kernel Identifier to be used by the user to get the kernel info using rocprofiler_query_kernel_info. More...
|
|
rocprofiler_agent_id_t | rocprofiler_record_profiler_t::gpu_id |
| Agent Identifier to be used by the user to get the Agent Information using rocprofiler_query_agent_info. More...
|
|
rocprofiler_queue_id_t | rocprofiler_record_profiler_t::queue_id |
| Queue Identifier to be used by the user to get the Queue Information using rocprofiler_query_agent_info. More...
|
|
rocprofiler_record_header_timestamp_t | rocprofiler_record_profiler_t::timestamps |
| Timestamps, start and end timestamps of the record data (ex. More...
|
|
const rocprofiler_record_counter_instance_t * | rocprofiler_record_profiler_t::counters |
| Counters, including identifiers to get counter information and Counters values. More...
|
|
rocprofiler_record_counters_instances_count_t | rocprofiler_record_profiler_t::counters_count |
| The count of the counters that were collected by the profiler. More...
|
|
uint32_t | rocprofiler_record_profiler_t::xcc_index |
| The index of the xcc from which these counters were collected. More...
|
|
rocprofiler_kernel_properties_t | rocprofiler_record_profiler_t::kernel_properties |
| kernel properties, including the grid size, work group size, registers count, wave size and completion signal More...
|
|
rocprofiler_thread_id_t | rocprofiler_record_profiler_t::thread_id |
| Thread id. More...
|
|
rocprofiler_queue_index_t | rocprofiler_record_profiler_t::queue_idx |
| Queue Index - packet index in the queue. More...
|
|
rocprofiler_correlation_id_t | rocprofiler_record_profiler_t::correlation_id |
| Correlation id. More...
|
|
uint32_t | rocprofiler_event_id_t::value |
|
uint16_t | rocprofiler_record_spm_counters_instances_count_t::value |
|
rocprofiler_record_spm_counters_instances_count_t | rocprofiler_record_se_spm_data_t::counters_data [32] |
|
rocprofiler_record_header_t | rocprofiler_record_spm_t::header |
| ROCProfiler General Record base header to identify the id and kind of every record. More...
|
|
rocprofiler_record_header_timestamp_t | rocprofiler_record_spm_t::timestamps |
| Timestamps at which the counters were sampled. More...
|
|
rocprofiler_record_se_spm_data_t | rocprofiler_record_spm_t::shader_engine_data [4] |
| Counter values per shader engine. More...
|
|
void * | rocprofiler_record_se_att_data_t::buffer_ptr |
|
uint32_t | rocprofiler_record_se_att_data_t::buffer_size |
|
const char * | rocprofiler_intercepted_codeobj_t::filepath |
| File path (file://, memory://) of the code object. More...
|
|
uint64_t | rocprofiler_intercepted_codeobj_t::base_address |
| Addr where codeobj is loaded. More...
|
|
uint64_t | rocprofiler_intercepted_codeobj_t::mem_size |
| Maximum offset from base address. More...
|
|
const char * | rocprofiler_intercepted_codeobj_t::data |
| If a copy of the codeobj is made, contains the data. More...
|
|
uint64_t | rocprofiler_intercepted_codeobj_t::data_size |
| If a copy of the codeobj is made, contains the size of the data. More...
|
|
rocprofiler_timestamp_t | rocprofiler_intercepted_codeobj_t::clock_start |
| Timestamp for the time point this codeobj was loaded. More...
|
|
rocprofiler_timestamp_t | rocprofiler_intercepted_codeobj_t::clock_end |
| Timestamp for the time point this codeobj was unloaded. More...
|
|
uint32_t | rocprofiler_intercepted_codeobj_t::att_marker_id |
| Identifier for code object loading. More...
|
|
const rocprofiler_intercepted_codeobj_t * | rocprofiler_codeobj_symbols_t::symbols |
| List of symbols. More...
|
|
uint64_t | rocprofiler_codeobj_symbols_t::count |
| Number of symbols. More...
|
|
uint64_t | rocprofiler_codeobj_symbols_t::userdata |
| Userdata space for custom capture. More...
|
|
rocprofiler_record_header_t | rocprofiler_record_att_tracer_t::header |
| ROCProfiler General Record base header to identify the id and kind of every record. More...
|
|
rocprofiler_kernel_id_t | rocprofiler_record_att_tracer_t::kernel_id |
| Kernel Identifier to be used by the user to get the kernel info using rocprofiler_query_kernel_info. More...
|
|
rocprofiler_agent_id_t | rocprofiler_record_att_tracer_t::gpu_id |
| Agent Identifier to be used by the user to get the Agent Information using rocprofiler_query_agent_info. More...
|
|
rocprofiler_queue_id_t | rocprofiler_record_att_tracer_t::queue_id |
| Queue Identifier to be used by the user to get the Queue Information using rocprofiler_query_agent_info. More...
|
|
rocprofiler_kernel_properties_t | rocprofiler_record_att_tracer_t::kernel_properties |
| kernel properties, including the grid size, work group size, registers count, wave size and completion signal More...
|
|
rocprofiler_thread_id_t | rocprofiler_record_att_tracer_t::thread_id |
| Thread id. More...
|
|
rocprofiler_queue_index_t | rocprofiler_record_att_tracer_t::queue_idx |
| Queue Index - packet index in the queue. More...
|
|
uint64_t | rocprofiler_record_att_tracer_t::writer_id |
| Writer ID for counting how many kernels. More...
|
|
rocprofiler_record_se_att_data_t * | rocprofiler_record_att_tracer_t::shader_engine_data |
| ATT data output from each shader engine. More...
|
|
uint64_t | rocprofiler_record_att_tracer_t::shader_engine_data_count |
| The count of the shader engine ATT data. More...
|
|
rocprofiler_codeobj_symbols_t | rocprofiler_record_att_tracer_t::intercept_list |
| Filepaths for the intercepted code objects at the time of kernel dispatch. More...
|
|
uint32_t | rocprofiler_tracer_operation_id_t::id |
|
uint64_t | rocprofiler_tracer_activity_correlation_id_t::value |
| Correlation ID Value. More...
|
|
const struct hip_api_data_s * rocprofiler_tracer_api_data_t::hip |
|
const struct hsa_api_data_s * rocprofiler_tracer_api_data_t::hsa |
|
const struct roctx_api_data_s * rocprofiler_tracer_api_data_t::roctx |
|
union { |
const struct hip_api_data_s * rocprofiler_tracer_api_data_t::hip |
|
const struct hsa_api_data_s * rocprofiler_tracer_api_data_t::hsa |
|
const struct roctx_api_data_s * rocprofiler_tracer_api_data_t::roctx |
|
}; | |
|
uint64_t | rocprofiler_tracer_external_id_t::id |
|
rocprofiler_record_header_t | rocprofiler_record_tracer_t::header |
| ROCProfiler General Record base header to identify the id and kind of every record. More...
|
|
rocprofiler_tracer_external_id_t | rocprofiler_record_tracer_t::external_id |
| Tracing external ID, and ROCTX ID if domain is ACTIVITY_DOMAIN_ROCTX. More...
|
|
rocprofiler_tracer_activity_domain_t | rocprofiler_record_tracer_t::domain |
| Activity domain id, represents the type of the APIs that are being traced. More...
|
|
rocprofiler_tracer_operation_id_t | rocprofiler_record_tracer_t::operation_id |
| Tracing Operation ID for HIP/HSA. More...
|
|
rocprofiler_tracer_api_data_t | rocprofiler_record_tracer_t::api_data |
| API Data. More...
|
|
rocprofiler_tracer_activity_correlation_id_t | rocprofiler_record_tracer_t::correlation_id |
| Activity correlation ID. More...
|
|
rocprofiler_record_header_timestamp_t | rocprofiler_record_tracer_t::timestamps |
| Timestamps. More...
|
|
rocprofiler_agent_id_t | rocprofiler_record_tracer_t::agent_id |
| Agent identifier that can be used as a handler in rocprofiler_query_agent_info. More...
|
|
rocprofiler_queue_id_t | rocprofiler_record_tracer_t::queue_id |
| Queue identifier that can be used as a handler in rocprofiler_query_queue_info. More...
|
|
rocprofiler_thread_id_t | rocprofiler_record_tracer_t::thread_id |
| Thread id. More...
|
|
rocprofiler_api_tracing_phase_t | rocprofiler_record_tracer_t::phase |
| API Tracing phase (Enter/Exit/None(Activity Records/Asynchronous Output Records)) More...
|
|
const char * | rocprofiler_record_tracer_t::name |
| Kernel Name for HIP API calls that launches kernels or ROCTx message for ROCTx api calls. More...
|
|
uint64_t | rocprofiler_kernel_dispatch_id_t::value |
|
rocprofiler_kernel_dispatch_id_t | rocprofiler_pc_sample_t::dispatch_id |
| Kernel dispatch ID. More...
|
|
rocprofiler_timestamp_t rocprofiler_pc_sample_t::timestamp |
| Host timestamp. More...
|
|
uint64_t rocprofiler_pc_sample_t::cycle |
| GPU clock counter (not currently used) More...
|
|
union { |
rocprofiler_timestamp_t rocprofiler_pc_sample_t::timestamp |
| Host timestamp. More...
|
|
uint64_t rocprofiler_pc_sample_t::cycle |
| GPU clock counter (not currently used) More...
|
|
}; | |
|
uint64_t | rocprofiler_pc_sample_t::pc |
| Sampled program counter. More...
|
|
uint32_t | rocprofiler_pc_sample_t::se |
| Sampled shader element. More...
|
|
rocprofiler_agent_id_t | rocprofiler_pc_sample_t::gpu_id |
| Sampled GPU agent. More...
|
|
rocprofiler_record_header_t | rocprofiler_record_pc_sample_t::header |
| ROCProfiler General Record base header to identify the id and kind of every record. More...
|
|
rocprofiler_pc_sample_t | rocprofiler_record_pc_sample_t::pc_sample |
| PC sample data. More...
|
|
rocprofiler_buffer_property_kind_t | rocprofiler_buffer_property_t::kind |
|
uint64_t | rocprofiler_buffer_property_t::value |
|
uint64_t | rocprofiler_buffer_id_t::value |
|
uint64_t | rocprofiler_filter_id_t::value |
|
rocprofiler_att_parameter_name_t | rocprofiler_att_parameter_t::parameter_name |
|
uint32_t rocprofiler_att_parameter_t::value |
|
const char * rocprofiler_att_parameter_t::counter_name |
|
union { |
uint32_t rocprofiler_att_parameter_t::value |
|
const char * rocprofiler_att_parameter_t::counter_name |
|
}; | |
|
rocprofiler_filter_property_kind_t | rocprofiler_filter_property_t::kind |
| Filter Property kind. More...
|
|
const char ** rocprofiler_filter_property_t::name_regex |
|
rocprofiler_hip_function_name_t * rocprofiler_filter_property_t::hip_functions_names |
|
rocprofiler_hsa_function_name_t * rocprofiler_filter_property_t::hsa_functions_names |
|
uint32_t rocprofiler_filter_property_t::range [2] |
|
uint64_t rocprofiler_filter_property_t::start |
|
uint64_t rocprofiler_filter_property_t::end |
|
struct { |
uint64_t rocprofiler_filter_property_t::start |
|
uint64_t rocprofiler_filter_property_t::end |
|
} rocprofiler_filter_property_t::dispatch_ids |
|
union { |
const char ** rocprofiler_filter_property_t::name_regex |
|
rocprofiler_hip_function_name_t * rocprofiler_filter_property_t::hip_functions_names |
|
rocprofiler_hsa_function_name_t * rocprofiler_filter_property_t::hsa_functions_names |
|
uint32_t rocprofiler_filter_property_t::range [2] |
|
struct { |
uint64_t rocprofiler_filter_property_t::start |
|
uint64_t rocprofiler_filter_property_t::end |
|
} rocprofiler_filter_property_t::dispatch_ids |
|
}; | |
| Array of data required for the filter type chosen. More...
|
|
uint64_t | rocprofiler_filter_property_t::data_count |
| Data array count. More...
|
|
const char ** | rocprofiler_spm_parameter_t::counters_names |
| Counters to profile. More...
|
|
int | rocprofiler_spm_parameter_t::counters_count |
| Counters count. More...
|
|
uint32_t | rocprofiler_spm_parameter_t::sampling_rate |
| Sampling rate. More...
|
|
rocprofiler_agent_id_t * | rocprofiler_spm_parameter_t::gpu_agent_id |
| Preferred agents to collect SPM on. More...
|
|
char * | rocprofiler_counters_sampler_counter_input_t::name |
|
rocprofiler_counters_sampler_counter_type_t | rocprofiler_counters_sampler_counter_input_t::type |
|
rocprofiler_counters_sampler_counter_type_t | rocprofiler_counters_sampler_counter_output_t::type |
|
rocprofiler_record_counter_value_t | rocprofiler_counters_sampler_counter_output_t::value |
|
rocprofiler_counters_sampler_counter_input_t * | rocprofiler_counters_sampler_parameters_t::counters |
| Counters to profile. More...
|
|
int | rocprofiler_counters_sampler_parameters_t::counters_num |
| Counters count. More...
|
|
uint32_t | rocprofiler_counters_sampler_parameters_t::sampling_rate |
| Sampling rate (ms) More...
|
|
uint32_t | rocprofiler_counters_sampler_parameters_t::sampling_duration |
| Total sampling duration (ms); time between sampling start/stop. More...
|
|
uint32_t | rocprofiler_counters_sampler_parameters_t::initial_delay |
| Initial delay (ms) More...
|
|
int | rocprofiler_counters_sampler_parameters_t::gpu_agent_index |
| Preferred agents to collect counters from. More...
|
|
rocprofiler_record_header_t | rocprofiler_record_counters_sampler_t::header |
| ROCProfiler General Record base header to identify the id and kind of every record. More...
|
|
rocprofiler_agent_id_t | rocprofiler_record_counters_sampler_t::gpu_id |
| Agent Identifier to be used by the user to get the Agent Information using rocprofiler_query_agent_info. More...
|
|
rocprofiler_counters_sampler_counter_output_t * | rocprofiler_record_counters_sampler_t::counters |
| Counters, including identifiers to get counter information and Counters values. More...
|
|
uint32_t | rocprofiler_record_counters_sampler_t::num_counters |
| Number of counter values. More...
|
|
rocprofiler_tracer_activity_domain_t * | rocprofiler_filter_data_t::trace_apis |
| APIs to trace. More...
|
|
const char ** | rocprofiler_filter_data_t::counters_names |
| Counters to profile. More...
|
|
rocprofiler_att_parameter_t * | rocprofiler_filter_data_t::att_parameters |
| att parameters More...
|
|
rocprofiler_spm_parameter_t * | rocprofiler_filter_data_t::spm_parameters |
| spm counters parameters More...
|
|
rocprofiler_counters_sampler_parameters_t | rocprofiler_filter_data_t::counters_sampler_parameters |
| sampled counters parameters More...
|
|
double | rocprofiler_counter_value_t::value |
|
char | rocprofiler_device_profile_metric_t::metric_name [64] |
|
rocprofiler_counter_value_t | rocprofiler_device_profile_metric_t::value |
|
The profiling records are asynchronously logged to the pool and can be associated with the respective GPU kernels.
Profiling API can be used to enable collecting of the records with or without timestamping data for the GPU Application in continuous mode or kernel mode.