Metric Functions

Metric Functions#

ROCmSMI: Metric Functions
Metric Functions

Typedefs

typedef uint16_t GPUMetricTempHbm_t[RSMI_NUM_HBM_INSTANCES]
 
typedef uint16_t GPUMetricVcnActivity_t[RSMI_MAX_NUM_VCN]
 
typedef uint64_t GPUMetricXgmiReadDataAcc_t[RSMI_MAX_NUM_XGMI_LINKS]
 
typedef uint64_t GPUMetricXgmiWriteDataAcc_t[RSMI_MAX_NUM_XGMI_LINKS]
 
typedef uint16_t GPUMetricCurrGfxClk_t[RSMI_MAX_NUM_GFX_CLKS]
 
typedef uint16_t GPUMetricCurrSocClk_t[RSMI_MAX_NUM_CLKS]
 
typedef uint16_t GPUMetricCurrVClk0_t[RSMI_MAX_NUM_CLKS]
 
typedef uint16_t GPUMetricCurrDClk0_t[RSMI_MAX_NUM_CLKS]
 

Functions

rsmi_status_t rsmi_dev_metrics_temp_hotspot_get (uint32_t dv_ind, uint16_t *hotspot_value)
 Get the 'temp_hotspot' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_temp_mem_get (uint32_t dv_ind, uint16_t *mem_value)
 Get the 'temp_mem' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_temp_vrsoc_get (uint32_t dv_ind, uint16_t *vrsoc_value)
 Get the 'temp_vrsoc' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_curr_socket_power_get (uint32_t dv_ind, uint16_t *socket_power_value)
 Get the 'curr_socket_power' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_avg_gfx_activity_get (uint32_t dv_ind, uint16_t *gfx_activity_value)
 Get the 'avg_gfx_activity' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_avg_umc_activity_get (uint32_t dv_ind, uint16_t *umc_activity_value)
 Get the 'avg_umc_activity' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_energy_acc_get (uint32_t dv_ind, uint64_t *energy_acc_value)
 Get the 'energy_acc' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_system_clock_counter_get (uint32_t dv_ind, uint64_t *system_clock_counter_value)
 Get the 'system_clock_counter' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_firmware_timestamp_get (uint32_t dv_ind, uint64_t *firmware_timestamp_value)
 Get the 'firmware_timestamp' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_throttle_status_get (uint32_t dv_ind, uint32_t *throttle_status_value)
 Get the 'throttle_status' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_pcie_link_width_get (uint32_t dv_ind, uint16_t *pcie_link_width_value)
 Get the 'pcie_link_width' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_pcie_link_speed_get (uint32_t dv_ind, uint16_t *pcie_link_speed_value)
 Get the 'pcie_link_speed' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_xgmi_link_width_get (uint32_t dv_ind, uint16_t *xgmi_link_width_value)
 Get the 'xgmi_link_width' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_xgmi_link_speed_get (uint32_t dv_ind, uint16_t *xgmi_link_speed_value)
 Get the 'xgmi_link_speed' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_gfxclk_lock_status_get (uint32_t dv_ind, uint32_t *gfxclk_lock_status_value)
 Get the 'gfxclk_lock_status' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_gfx_activity_acc_get (uint32_t dv_ind, uint32_t *gfx_activity_acc_value)
 Get the 'gfx_activity_acc' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_mem_activity_acc_get (uint32_t dv_ind, uint32_t *mem_activity_acc_value)
 Get the 'mem_activity_acc' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_pcie_bandwidth_acc_get (uint32_t dv_ind, uint64_t *pcie_bandwidth_acc_value)
 Get the 'pcie_bandwidth_acc' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_pcie_bandwidth_inst_get (uint32_t dv_ind, uint64_t *pcie_bandwidth_inst_value)
 Get the 'pcie_bandwidth_inst' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_pcie_l0_recov_count_acc_get (uint32_t dv_ind, uint64_t *pcie_count_acc_value)
 Get the 'pcie_l0_recov_count_acc' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_pcie_replay_count_acc_get (uint32_t dv_ind, uint64_t *pcie_count_acc_value)
 Get the 'pcie_replay_count_acc' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_pcie_replay_rover_count_acc_get (uint32_t dv_ind, uint64_t *pcie_count_acc_value)
 Get the 'pcie_replay_rover_count_acc' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_curr_uclk_get (uint32_t dv_ind, uint16_t *uclk_value)
 Get the 'curr_uclk' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_temp_hbm_get (uint32_t dv_ind, GPUMetricTempHbm_t *temp_hbm_value)
 Get the 'temp_hbm' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_vcn_activity_get (uint32_t dv_ind, GPUMetricVcnActivity_t *vcn_activity_value)
 Get the 'vcn_activity' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_xgmi_read_data_get (uint32_t dv_ind, GPUMetricXgmiReadDataAcc_t *xgmi_read_data_acc_value)
 Get the 'xgmi_read_data' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_xgmi_write_data_get (uint32_t dv_ind, GPUMetricXgmiWriteDataAcc_t *xgmi_write_data_acc_value)
 Get the 'xgmi_write_data' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_curr_gfxclk_get (uint32_t dv_ind, GPUMetricCurrGfxClk_t *current_gfxclk_value)
 Get the 'curr_gfxclk' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_curr_socclk_get (uint32_t dv_ind, GPUMetricCurrSocClk_t *current_socclk_value)
 Get the 'curr_socclk' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_curr_vclk0_get (uint32_t dv_ind, GPUMetricCurrVClk0_t *current_vclk_value)
 Get the 'curr_vclk0' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_curr_dclk0_get (uint32_t dv_ind, GPUMetricCurrDClk0_t *current_dclk_value)
 Get the 'curr_dclk0' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_temp_edge_get (uint32_t dv_ind, uint16_t *edge_value)
 Get the 'temp_edge' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_temp_vrgfx_get (uint32_t dv_ind, uint16_t *vrgfx_value)
 Get the 'temp_vrgfx' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_temp_vrmem_get (uint32_t dv_ind, uint16_t *vrmem_value)
 Get the 'temp_vrmem' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_avg_mm_activity_get (uint32_t dv_ind, uint16_t *mm_activity_value)
 Get the 'avg_mm_activity' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_curr_vclk1_get (uint32_t dv_ind, uint16_t *current_vclk_value)
 Get the 'curr_vclk1' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_curr_dclk1_get (uint32_t dv_ind, uint16_t *current_dclk_value)
 Get the 'curr_dclk1' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_indep_throttle_status_get (uint32_t dv_ind, uint64_t *throttle_status_value)
 Get the 'indep_throttle_status' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_avg_socket_power_get (uint32_t dv_ind, uint16_t *socket_power_value)
 Get the 'avg_socket_power' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_curr_fan_speed_get (uint32_t dv_ind, uint16_t *fan_speed_value)
 Get the 'curr_fan_speed' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_avg_gfx_clock_frequency_get (uint32_t dv_ind, uint16_t *clock_frequency_value)
 Get the 'avg_gfx_clock_frequency' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_avg_soc_clock_frequency_get (uint32_t dv_ind, uint16_t *clock_frequency_value)
 Get the 'avg_soc_clock_frequency' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_avg_uclock_frequency_get (uint32_t dv_ind, uint16_t *clock_frequency_value)
 Get the 'avg_uclock_frequency' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_avg_vclock0_frequency_get (uint32_t dv_ind, uint16_t *clock_frequency_value)
 Get the 'avg_vclock0_frequency' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_avg_dclock0_frequency_get (uint32_t dv_ind, uint16_t *clock_frequency_value)
 Get the 'avg_dclock0_frequency' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_avg_vclock1_frequency_get (uint32_t dv_ind, uint16_t *clock_frequency_value)
 Get the 'avg_vclock1_frequency' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_avg_dclock1_frequency_get (uint32_t dv_ind, uint16_t *clock_frequency_value)
 Get the 'avg_dclock1_frequency' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_volt_soc_get (uint32_t dv_ind, uint16_t *voltage_value)
 Get the 'volt_soc' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_volt_gfx_get (uint32_t dv_ind, uint16_t *voltage_value)
 Get the 'volt_gfx' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_volt_mem_get (uint32_t dv_ind, uint16_t *voltage_value)
 Get the 'volt_mem' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_header_info_get (uint32_t dv_ind, metrics_table_header_t *header_value)
 Get the 'metrics_header_info' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_xcd_counter_get (uint32_t dv_ind, uint16_t *xcd_counter_value)
 Get the 'xcd_counter' from the GPU metrics associated with the device. More...
 
rsmi_status_t rsmi_dev_metrics_log_get (uint32_t dv_ind)
 Get the log from the GPU metrics associated with the device. More...
 

Variables

uint64_t rsmi_counter_value_t::value
 Counter value.
 
uint64_t rsmi_counter_value_t::time_enabled
 
uint64_t rsmi_counter_value_t::time_running
 
uint32_t rsmi_evt_notification_data_t::dv_ind
 Index of device that corresponds to the event.
 
rsmi_evt_notification_type_t rsmi_evt_notification_data_t::event
 Event type.
 
char rsmi_evt_notification_data_t::message [MAX_EVENT_NOTIFICATION_MSG_SIZE]
 Event message.
 
RSMI_UTILIZATION_COUNTER_TYPE rsmi_utilization_counter_t::type
 Utilization counter type.
 
uint64_t rsmi_utilization_counter_t::value
 Utilization counter value.
 
uint64_t rsmi_retired_page_record_t::page_address
 Start address of page.
 
uint64_t rsmi_retired_page_record_t::page_size
 Page size.
 
rsmi_memory_page_status_t rsmi_retired_page_record_t::status
 Page "reserved" status.
 
rsmi_bit_field_t rsmi_power_profile_status_t::available_profiles
 
rsmi_power_profile_preset_masks_t rsmi_power_profile_status_t::current
 
uint32_t rsmi_power_profile_status_t::num_profiles
 
bool rsmi_frequencies_t::has_deep_sleep
 
uint32_t rsmi_frequencies_t::num_supported
 
uint32_t rsmi_frequencies_t::current
 
uint64_t rsmi_frequencies_t::frequency [RSMI_MAX_NUM_FREQUENCIES]
 
rsmi_frequencies_t rsmi_pcie_bandwidth_t::transfer_rate
 
uint32_t rsmi_pcie_bandwidth_t::lanes [RSMI_MAX_NUM_FREQUENCIES]
 
uint16_t rsmi_activity_metric_counter_t::average_gfx_activity
 
uint16_t rsmi_activity_metric_counter_t::average_umc_activity
 memory controller
 
uint16_t rsmi_activity_metric_counter_t::average_mm_activity
 UVD or VCN.
 
uint32_t rsmi_version_t::major
 Major version.
 
uint32_t rsmi_version_t::minor
 Minor version.
 
uint32_t rsmi_version_t::patch
 Patch, build or stepping version.
 
const char * rsmi_version_t::build
 Build string.
 
uint64_t rsmi_range_t::lower_bound
 Lower bound of range.
 
uint64_t rsmi_range_t::upper_bound
 Upper bound of range.
 
uint64_t rsmi_od_vddc_point_t::frequency
 Frequency coordinate (in Hz)
 
uint64_t rsmi_od_vddc_point_t::voltage
 Voltage coordinate (in mV)
 
rsmi_range_t rsmi_freq_volt_region_t::freq_range
 The frequency range for this VDDC Curve point.
 
rsmi_range_t rsmi_freq_volt_region_t::volt_range
 The voltage range for this VDDC Curve point.
 
rsmi_od_vddc_point_t rsmi_od_volt_curve_t::vc_points [RSMI_NUM_VOLTAGE_CURVE_POINTS]
 
rsmi_range_t rsmi_od_volt_freq_data_t::curr_sclk_range
 The current SCLK frequency range.
 
rsmi_range_t rsmi_od_volt_freq_data_t::curr_mclk_range
 
rsmi_range_t rsmi_od_volt_freq_data_t::sclk_freq_limits
 The range possible of SCLK values.
 
rsmi_range_t rsmi_od_volt_freq_data_t::mclk_freq_limits
 The range possible of MCLK values.
 
rsmi_od_volt_curve_t rsmi_od_volt_freq_data_t::curve
 The current voltage curve.
 
uint32_t rsmi_od_volt_freq_data_t::num_regions
 The number of voltage curve regions.
 
uint64_t rsmi_error_count_t::correctable_err
 Accumulated correctable errors.
 
uint64_t rsmi_error_count_t::uncorrectable_err
 Accumulated uncorrectable errors.
 
uint32_t rsmi_process_info_t::process_id
 Process ID.
 
uint32_t rsmi_process_info_t::pasid
 PASID.
 
uint64_t rsmi_process_info_t::vram_usage
 VRAM usage.
 
uint64_t rsmi_process_info_t::sdma_usage
 SDMA usage in microseconds.
 
uint32_t rsmi_process_info_t::cu_occupancy
 Compute Unit usage in percent.
 
uint64_t id::id
 uint64_t representation of value
 
const char * id::name
 name string (applicable to functions only)
 
rsmi_memory_type_t   id::memory_type
 < Used for rsmi_memory_type_t variants More...
 
rsmi_temperature_metric_t   id::temp_metric
 Used for rsmi_event_type_t variants.
 
rsmi_event_type_t   id::evnt_type
 Used for rsmi_event_group_t variants.
 
rsmi_event_group_t   id::evnt_group
 Used for rsmi_clk_type_t variants.
 
rsmi_clk_type_t   id::clk_type
 Used for rsmi_fw_block_t variants.
 
rsmi_fw_block_t   id::fw_block
 Used for rsmi_gpu_block_t variants.
 
rsmi_gpu_block_t   id::gpu_block_type
 
union {
   rsmi_memory_type_t   id::memory_type
 < Used for rsmi_memory_type_t variants More...
 
   rsmi_temperature_metric_t   id::temp_metric
 Used for rsmi_event_type_t variants.
 
   rsmi_event_type_t   id::evnt_type
 Used for rsmi_event_group_t variants.
 
   rsmi_event_group_t   id::evnt_group
 Used for rsmi_clk_type_t variants.
 
   rsmi_clk_type_t   id::clk_type
 Used for rsmi_fw_block_t variants.
 
   rsmi_fw_block_t   id::fw_block
 Used for rsmi_gpu_block_t variants.
 
   rsmi_gpu_block_t   gpu_block_type
 
}; 
 

Detailed Description

These functions are used to get granular information about all counters available in GPU Metrics.

Typedef Documentation

◆ GPUMetricTempHbm_t

typedef uint16_t GPUMetricTempHbm_t[RSMI_NUM_HBM_INSTANCES]

Metric multi-valued counter types

Function Documentation

◆ rsmi_dev_metrics_temp_hotspot_get()

rsmi_status_t rsmi_dev_metrics_temp_hotspot_get ( uint32_t  dv_ind,
uint16_t *  hotspot_value 
)

Get the 'temp_hotspot' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'temp_hotspot' will stored

Parameters
[in]dv_inda device index
[in,out]hotspot_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_temp_mem_get()

rsmi_status_t rsmi_dev_metrics_temp_mem_get ( uint32_t  dv_ind,
uint16_t *  mem_value 
)

Get the 'temp_mem' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'temp_mem' will stored

Parameters
[in]dv_inda device index
[in,out]mem_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_temp_vrsoc_get()

rsmi_status_t rsmi_dev_metrics_temp_vrsoc_get ( uint32_t  dv_ind,
uint16_t *  vrsoc_value 
)

Get the 'temp_vrsoc' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'temp_vrsoc' will stored

Parameters
[in]dv_inda device index
[in,out]vrsoc_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_curr_socket_power_get()

rsmi_status_t rsmi_dev_metrics_curr_socket_power_get ( uint32_t  dv_ind,
uint16_t *  socket_power_value 
)

Get the 'curr_socket_power' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'socket_power' will stored

Parameters
[in]dv_inda device index
[in,out]socket_power_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_avg_gfx_activity_get()

rsmi_status_t rsmi_dev_metrics_avg_gfx_activity_get ( uint32_t  dv_ind,
uint16_t *  gfx_activity_value 
)

Get the 'avg_gfx_activity' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'gfx_activity' will stored

Parameters
[in]dv_inda device index
[in,out]gfx_activity_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_avg_umc_activity_get()

rsmi_status_t rsmi_dev_metrics_avg_umc_activity_get ( uint32_t  dv_ind,
uint16_t *  umc_activity_value 
)

Get the 'avg_umc_activity' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'umc_activity' will stored

Parameters
[in]dv_inda device index
[in,out]umc_activity_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_energy_acc_get()

rsmi_status_t rsmi_dev_metrics_energy_acc_get ( uint32_t  dv_ind,
uint64_t *  energy_acc_value 
)

Get the 'energy_acc' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint64_t in which the 'energy_acc' will stored

Parameters
[in]dv_inda device index
[in,out]energy_acc_valuea pointer to uint64_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_system_clock_counter_get()

rsmi_status_t rsmi_dev_metrics_system_clock_counter_get ( uint32_t  dv_ind,
uint64_t *  system_clock_counter_value 
)

Get the 'system_clock_counter' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint64_t in which the 'system_clock_counter' will stored

Parameters
[in]dv_inda device index
[in,out]system_clock_counter_valuea pointer to uint64_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_firmware_timestamp_get()

rsmi_status_t rsmi_dev_metrics_firmware_timestamp_get ( uint32_t  dv_ind,
uint64_t *  firmware_timestamp_value 
)

Get the 'firmware_timestamp' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint64_t in which the 'firmware_timestamp' will stored

Parameters
[in]dv_inda device index
[in,out]firmware_timestamp_valuea pointer to uint64_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_throttle_status_get()

rsmi_status_t rsmi_dev_metrics_throttle_status_get ( uint32_t  dv_ind,
uint32_t *  throttle_status_value 
)

Get the 'throttle_status' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint32_t in which the 'throttle_status' will stored

Parameters
[in]dv_inda device index
[in,out]throttle_status_valuea pointer to uint32_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_pcie_link_width_get()

rsmi_status_t rsmi_dev_metrics_pcie_link_width_get ( uint32_t  dv_ind,
uint16_t *  pcie_link_width_value 
)

Get the 'pcie_link_width' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'pcie_link_width' will stored

Parameters
[in]dv_inda device index
[in,out]pcie_link_width_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_pcie_link_speed_get()

rsmi_status_t rsmi_dev_metrics_pcie_link_speed_get ( uint32_t  dv_ind,
uint16_t *  pcie_link_speed_value 
)

Get the 'pcie_link_speed' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'pcie_link_speed' will stored

Parameters
[in]dv_inda device index
[in,out]pcie_link_speed_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_xgmi_link_width_get()

rsmi_status_t rsmi_dev_metrics_xgmi_link_width_get ( uint32_t  dv_ind,
uint16_t *  xgmi_link_width_value 
)

Get the 'xgmi_link_width' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'xgmi_link_width' will stored

Parameters
[in]dv_inda device index
[in,out]xgmi_link_width_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_xgmi_link_speed_get()

rsmi_status_t rsmi_dev_metrics_xgmi_link_speed_get ( uint32_t  dv_ind,
uint16_t *  xgmi_link_speed_value 
)

Get the 'xgmi_link_speed' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'xgmi_link_speed' will stored

Parameters
[in]dv_inda device index
[in,out]xgmi_link_speed_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_gfxclk_lock_status_get()

rsmi_status_t rsmi_dev_metrics_gfxclk_lock_status_get ( uint32_t  dv_ind,
uint32_t *  gfxclk_lock_status_value 
)

Get the 'gfxclk_lock_status' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint32_t in which the 'gfxclk_lock_status' will stored

Parameters
[in]dv_inda device index
[in,out]gfxclk_lock_status_valuea pointer to uint32_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_gfx_activity_acc_get()

rsmi_status_t rsmi_dev_metrics_gfx_activity_acc_get ( uint32_t  dv_ind,
uint32_t *  gfx_activity_acc_value 
)

Get the 'gfx_activity_acc' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint32_t in which the 'gfx_activity_acc' will stored

Parameters
[in]dv_inda device index
[in,out]gfx_activity_acc_valuea pointer to uint32_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_mem_activity_acc_get()

rsmi_status_t rsmi_dev_metrics_mem_activity_acc_get ( uint32_t  dv_ind,
uint32_t *  mem_activity_acc_value 
)

Get the 'mem_activity_acc' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint32_t in which the 'mem_activity_acc' will stored

Parameters
[in]dv_inda device index
[in,out]mem_activity_acc_valuea pointer to uint32_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_pcie_bandwidth_acc_get()

rsmi_status_t rsmi_dev_metrics_pcie_bandwidth_acc_get ( uint32_t  dv_ind,
uint64_t *  pcie_bandwidth_acc_value 
)

Get the 'pcie_bandwidth_acc' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint64_t in which the 'pcie_bandwidth_acc' will stored

Parameters
[in]dv_inda device index
[in,out]pcie_bandwidth_acc_valuea pointer to uint64_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_pcie_bandwidth_inst_get()

rsmi_status_t rsmi_dev_metrics_pcie_bandwidth_inst_get ( uint32_t  dv_ind,
uint64_t *  pcie_bandwidth_inst_value 
)

Get the 'pcie_bandwidth_inst' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint64_t in which the 'pcie_bandwidth_inst' will stored

Parameters
[in]dv_inda device index
[in,out]pcie_bandwidth_inst_valuea pointer to uint64_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_pcie_l0_recov_count_acc_get()

rsmi_status_t rsmi_dev_metrics_pcie_l0_recov_count_acc_get ( uint32_t  dv_ind,
uint64_t *  pcie_count_acc_value 
)

Get the 'pcie_l0_recov_count_acc' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint64_t in which the 'pcie_l0_recov_count_acc' will stored

Parameters
[in]dv_inda device index
[in,out]pcie_count_acc_valuea pointer to uint64_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_pcie_replay_count_acc_get()

rsmi_status_t rsmi_dev_metrics_pcie_replay_count_acc_get ( uint32_t  dv_ind,
uint64_t *  pcie_count_acc_value 
)

Get the 'pcie_replay_count_acc' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint64_t in which the 'pcie_replay_count_acc' will stored

Parameters
[in]dv_inda device index
[in,out]pcie_count_acc_valuea pointer to uint64_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_pcie_replay_rover_count_acc_get()

rsmi_status_t rsmi_dev_metrics_pcie_replay_rover_count_acc_get ( uint32_t  dv_ind,
uint64_t *  pcie_count_acc_value 
)

Get the 'pcie_replay_rover_count_acc' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint64_t in which the 'pcie_replay_rover_count_acc' will stored

Parameters
[in]dv_inda device index
[in,out]pcie_count_acc_valuea pointer to uint64_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_curr_uclk_get()

rsmi_status_t rsmi_dev_metrics_curr_uclk_get ( uint32_t  dv_ind,
uint16_t *  uclk_value 
)

Get the 'curr_uclk' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'curr_uclk' will stored

Parameters
[in]dv_inda device index
[in,out]uclk_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_temp_hbm_get()

rsmi_status_t rsmi_dev_metrics_temp_hbm_get ( uint32_t  dv_ind,
GPUMetricTempHbm_t temp_hbm_value 
)

Get the 'temp_hbm' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'temp_hbm' will stored

Parameters
[in]dv_inda device index
[in,out]temp_hbm_valuea pointer to uint16_t to which the device gpu metric unit will be stored
  • This is a multi-valued counter holding a 4 (RSMI_NUM_HBM_INSTANCES) element array (GPUMetricTempHbm_t)
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_vcn_activity_get()

rsmi_status_t rsmi_dev_metrics_vcn_activity_get ( uint32_t  dv_ind,
GPUMetricVcnActivity_t *  vcn_activity_value 
)

Get the 'vcn_activity' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'vcn_activity' will stored

Parameters
[in]dv_inda device index
[in,out]vcn_activity_valuea pointer to uint16_t to which the device gpu metric unit will be stored
  • This is a multi-valued counter holding a 4 (RSMI_MAX_NUM_VCN) element array (GPUMetricVcnActivity_t)
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_xgmi_read_data_get()

rsmi_status_t rsmi_dev_metrics_xgmi_read_data_get ( uint32_t  dv_ind,
GPUMetricXgmiReadDataAcc_t *  xgmi_read_data_acc_value 
)

Get the 'xgmi_read_data' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint64_t in which the 'xgmi_read_data' will stored

Parameters
[in]dv_inda device index
[in,out]xgmi_read_data_acc_valuea pointer to uint64_t to which the device gpu metric unit will be stored
  • This is a multi-valued counter holding an 8 (RSMI_MAX_NUM_XGMI_LINKS) element array (GPUMetricXgmiReadDataAcc_t)
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_xgmi_write_data_get()

rsmi_status_t rsmi_dev_metrics_xgmi_write_data_get ( uint32_t  dv_ind,
GPUMetricXgmiWriteDataAcc_t *  xgmi_write_data_acc_value 
)

Get the 'xgmi_write_data' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint64_t in which the 'xgmi_write_data' will stored

Parameters
[in]dv_inda device index
[in,out]xgmi_write_data_acc_valuea pointer to uint64_t to which the device gpu metric unit will be stored
  • This is a multi-valued counter holding an 8 (RSMI_MAX_NUM_XGMI_LINKS) element array (GPUMetricXgmiWriteDataAcc_t)
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_curr_gfxclk_get()

rsmi_status_t rsmi_dev_metrics_curr_gfxclk_get ( uint32_t  dv_ind,
GPUMetricCurrGfxClk_t *  current_gfxclk_value 
)

Get the 'curr_gfxclk' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint64_t in which the 'curr_gfxclk' will stored

Parameters
[in]dv_inda device index
[in,out]current_gfxclk_valuea pointer to uint16_t to which the device gpu metric unit will be stored
  • This is a multi-valued counter holding an 8 (RSMI_MAX_NUM_GFX_CLKS) element array (GPUMetricCurrGfxClk_t)
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_curr_socclk_get()

rsmi_status_t rsmi_dev_metrics_curr_socclk_get ( uint32_t  dv_ind,
GPUMetricCurrSocClk_t *  current_socclk_value 
)

Get the 'curr_socclk' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'curr_socclk' will stored

Parameters
[in]dv_inda device index
[in,out]current_socclk_valuea pointer to uint16_t to which the device gpu metric unit will be stored
  • This is a multi-valued counter holding a 4 (RSMI_MAX_NUM_CLKS) element array (GPUMetricCurrSocClk_t)
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_curr_vclk0_get()

rsmi_status_t rsmi_dev_metrics_curr_vclk0_get ( uint32_t  dv_ind,
GPUMetricCurrVClk0_t *  current_vclk_value 
)

Get the 'curr_vclk0' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'curr_vclk0' will stored

Parameters
[in]dv_inda device index
[in,out]current_vclk_valuea pointer to uint16_t to which the device gpu metric unit will be stored
  • This is a multi-valued counter holding a 4 (RSMI_MAX_NUM_CLKS) element array (GPUMetricCurrVClk0_t)
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_curr_dclk0_get()

rsmi_status_t rsmi_dev_metrics_curr_dclk0_get ( uint32_t  dv_ind,
GPUMetricCurrDClk0_t *  current_dclk_value 
)

Get the 'curr_dclk0' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'curr_dclk0' will stored

Parameters
[in]dv_inda device index
[in,out]current_dclk_valuea pointer to uint16_t to which the device gpu metric unit will be stored
  • This is a multi-valued counter holding a 4 (RSMI_MAX_NUM_CLKS) element array (GPUMetricCurrDClk0_t)
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_temp_edge_get()

rsmi_status_t rsmi_dev_metrics_temp_edge_get ( uint32_t  dv_ind,
uint16_t *  edge_value 
)

Get the 'temp_edge' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'temp_edge' will stored

Parameters
[in]dv_inda device index
[in,out]edge_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_temp_vrgfx_get()

rsmi_status_t rsmi_dev_metrics_temp_vrgfx_get ( uint32_t  dv_ind,
uint16_t *  vrgfx_value 
)

Get the 'temp_vrgfx' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'temp_vrgfx' will stored

Parameters
[in]dv_inda device index
[in,out]vrgfx_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_temp_vrmem_get()

rsmi_status_t rsmi_dev_metrics_temp_vrmem_get ( uint32_t  dv_ind,
uint16_t *  vrmem_value 
)

Get the 'temp_vrmem' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'temp_vrmem' will stored

Parameters
[in]dv_inda device index
[in,out]vrmem_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_avg_mm_activity_get()

rsmi_status_t rsmi_dev_metrics_avg_mm_activity_get ( uint32_t  dv_ind,
uint16_t *  mm_activity_value 
)

Get the 'avg_mm_activity' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'avg_mm_activity' will stored

Parameters
[in]dv_inda device index
[in,out]mm_activity_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_curr_vclk1_get()

rsmi_status_t rsmi_dev_metrics_curr_vclk1_get ( uint32_t  dv_ind,
uint16_t *  current_vclk_value 
)

Get the 'curr_vclk1' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'curr_vclk1' will stored

Parameters
[in]dv_inda device index
[in,out]current_vclk_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_curr_dclk1_get()

rsmi_status_t rsmi_dev_metrics_curr_dclk1_get ( uint32_t  dv_ind,
uint16_t *  current_dclk_value 
)

Get the 'curr_dclk1' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'curr_dclk1' will stored

Parameters
[in]dv_inda device index
[in,out]current_dclk_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_indep_throttle_status_get()

rsmi_status_t rsmi_dev_metrics_indep_throttle_status_get ( uint32_t  dv_ind,
uint64_t *  throttle_status_value 
)

Get the 'indep_throttle_status' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint64_t in which the 'indep_throttle_status' will stored

Parameters
[in]dv_inda device index
[in,out]throttle_status_valuea pointer to uint64_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_avg_socket_power_get()

rsmi_status_t rsmi_dev_metrics_avg_socket_power_get ( uint32_t  dv_ind,
uint16_t *  socket_power_value 
)

Get the 'avg_socket_power' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'avg_socket_power' will stored

Parameters
[in]dv_inda device index
[in,out]socket_power_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_curr_fan_speed_get()

rsmi_status_t rsmi_dev_metrics_curr_fan_speed_get ( uint32_t  dv_ind,
uint16_t *  fan_speed_value 
)

Get the 'curr_fan_speed' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'curr_fan_speed' will stored

Parameters
[in]dv_inda device index
[in,out]fan_speed_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_avg_gfx_clock_frequency_get()

rsmi_status_t rsmi_dev_metrics_avg_gfx_clock_frequency_get ( uint32_t  dv_ind,
uint16_t *  clock_frequency_value 
)

Get the 'avg_gfx_clock_frequency' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'avg_gfx_clock_frequency' will stored

Parameters
[in]dv_inda device index
[in,out]clock_frequency_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_avg_soc_clock_frequency_get()

rsmi_status_t rsmi_dev_metrics_avg_soc_clock_frequency_get ( uint32_t  dv_ind,
uint16_t *  clock_frequency_value 
)

Get the 'avg_soc_clock_frequency' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'avg_soc_clock_frequency' will stored

Parameters
[in]dv_inda device index
[in,out]clock_frequency_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_avg_uclock_frequency_get()

rsmi_status_t rsmi_dev_metrics_avg_uclock_frequency_get ( uint32_t  dv_ind,
uint16_t *  clock_frequency_value 
)

Get the 'avg_uclock_frequency' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'avg_uclock_frequency' will stored

Parameters
[in]dv_inda device index
[in,out]clock_frequency_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_avg_vclock0_frequency_get()

rsmi_status_t rsmi_dev_metrics_avg_vclock0_frequency_get ( uint32_t  dv_ind,
uint16_t *  clock_frequency_value 
)

Get the 'avg_vclock0_frequency' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'avg_vclock0_frequency' will stored

Parameters
[in]dv_inda device index
[in,out]clock_frequency_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_avg_dclock0_frequency_get()

rsmi_status_t rsmi_dev_metrics_avg_dclock0_frequency_get ( uint32_t  dv_ind,
uint16_t *  clock_frequency_value 
)

Get the 'avg_dclock0_frequency' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'avg_dclock0_frequency' will stored

Parameters
[in]dv_inda device index
[in,out]clock_frequency_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_avg_vclock1_frequency_get()

rsmi_status_t rsmi_dev_metrics_avg_vclock1_frequency_get ( uint32_t  dv_ind,
uint16_t *  clock_frequency_value 
)

Get the 'avg_vclock1_frequency' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'avg_vclock1_frequency' will stored

Parameters
[in]dv_inda device index
[in,out]clock_frequency_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_avg_dclock1_frequency_get()

rsmi_status_t rsmi_dev_metrics_avg_dclock1_frequency_get ( uint32_t  dv_ind,
uint16_t *  clock_frequency_value 
)

Get the 'avg_dclock1_frequency' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'avg_dclock1_frequency' will stored

Parameters
[in]dv_inda device index
[in,out]clock_frequency_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_volt_soc_get()

rsmi_status_t rsmi_dev_metrics_volt_soc_get ( uint32_t  dv_ind,
uint16_t *  voltage_value 
)

Get the 'volt_soc' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'volt_soc' will stored

Parameters
[in]dv_inda device index
[in,out]voltage_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_volt_gfx_get()

rsmi_status_t rsmi_dev_metrics_volt_gfx_get ( uint32_t  dv_ind,
uint16_t *  voltage_value 
)

Get the 'volt_gfx' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'volt_gfx' will stored

Parameters
[in]dv_inda device index
[in,out]voltage_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_volt_mem_get()

rsmi_status_t rsmi_dev_metrics_volt_mem_get ( uint32_t  dv_ind,
uint16_t *  voltage_value 
)

Get the 'volt_mem' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'volt_mem' will stored

Parameters
[in]dv_inda device index
[in,out]voltage_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_header_info_get()

rsmi_status_t rsmi_dev_metrics_header_info_get ( uint32_t  dv_ind,
metrics_table_header_t header_value 
)

Get the 'metrics_header_info' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a metrics_table_header_t in which the 'metrics_header_info' will stored

Parameters
[in]dv_inda device index
[in,out]header_valuea pointer to metrics_table_header_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_xcd_counter_get()

rsmi_status_t rsmi_dev_metrics_xcd_counter_get ( uint32_t  dv_ind,
uint16_t *  xcd_counter_value 
)

Get the 'xcd_counter' from the GPU metrics associated with the device.

Given a device index dv_ind and a pointer to a uint16_t in which the 'xcd_counter' will stored

Parameters
[in]dv_inda device index
[in,out]xcd_counter_valuea pointer to uint16_t to which the device gpu metric unit will be stored
Return values
RSMI_STATUS_SUCCESSis returned upon successful call. RSMI_STATUS_NOT_SUPPORTED is returned in case the metric unit does not exist for the given device

◆ rsmi_dev_metrics_log_get()

rsmi_status_t rsmi_dev_metrics_log_get ( uint32_t  dv_ind)

Get the log from the GPU metrics associated with the device.

Given a device index dv_ind it will log all the gpu metric info related to the device. The 'logging' feature must be on.

Parameters
[in]dv_inda device index
Return values
RSMI_STATUS_SUCCESSis returned upon successful call.

Variable Documentation

◆ time_enabled

uint64_t rsmi_counter_value_t::time_enabled

Time that the counter was enabled (in nanoseconds)

◆ time_running

uint64_t rsmi_counter_value_t::time_running

Time that the counter was running (in nanoseconds)

◆ available_profiles

rsmi_bit_field_t rsmi_power_profile_status_t::available_profiles

Which profiles are supported by this system

◆ current [1/2]

rsmi_power_profile_preset_masks_t rsmi_power_profile_status_t::current

Which power profile is currently active

◆ num_profiles

uint32_t rsmi_power_profile_status_t::num_profiles

How many power profiles are available

◆ has_deep_sleep

bool rsmi_frequencies_t::has_deep_sleep

Deep Sleep frequency is only supported by some GPUs

◆ num_supported

uint32_t rsmi_frequencies_t::num_supported

The number of supported frequencies

◆ current [2/2]

uint32_t rsmi_frequencies_t::current

The current frequency index

◆ frequency

uint64_t rsmi_frequencies_t::frequency[RSMI_MAX_NUM_FREQUENCIES]

List of frequencies. Only the first num_supported frequencies are valid.

◆ transfer_rate

rsmi_frequencies_t rsmi_pcie_bandwidth_t::transfer_rate

Transfer rates (T/s) that are possible

◆ lanes

uint32_t rsmi_pcie_bandwidth_t::lanes[RSMI_MAX_NUM_FREQUENCIES]

List of lanes for corresponding transfer rate. Only the first num_supported bandwidths are valid.

◆ vc_points

rsmi_od_vddc_point_t rsmi_od_volt_curve_t::vc_points[RSMI_NUM_VOLTAGE_CURVE_POINTS]

Array of RSMI_NUM_VOLTAGE_CURVE_POINTS rsmi_od_vddc_point_t's that make up the voltage frequency curve points.

◆ curr_mclk_range

rsmi_range_t rsmi_od_volt_freq_data_t::curr_mclk_range

The current MCLK frequency range; (upper bound only)

◆ memory_type [1/2]

rsmi_memory_type_t id::memory_type

< Used for rsmi_memory_type_t variants

Used for rsmi_temperature_metric_t variants

◆  [2/2]

rsmi_memory_type_t { ... } ::memory_type

< Used for rsmi_memory_type_t variants

Used for rsmi_temperature_metric_t variants