Crate rocm_smi_lib

Crate rocm_smi_lib 

Source

Re-exports§

pub use error::IntoRocmErr;
pub use error::RocmErr;
pub use queries::performance::RsmiClkType;
pub use queries::error::EccData;
pub use queries::memory::Memory;
pub use queries::performance::Frequency;
pub use queries::performance::FrequencyVoltageCurv;
pub use queries::performance::OverdriveLevels;
pub use queries::performance::PerformanceCounters;
pub use queries::physical::Fans;
pub use queries::common_structures::*;
pub use device::*;

Modules§

device
error
functions
queries

Structs§

DeleteStatus
RocmSmi
__fsid_t
__kernel_fd_set
__kernel_fsid_t
kfd_event_data
kfd_hsa_hw_exception_data
kfd_hsa_memory_exception_data
kfd_ioctl_acquire_vm_args
kfd_ioctl_alloc_memory_of_gpu_args
kfd_ioctl_alloc_queue_gws_args
kfd_ioctl_create_event_args
kfd_ioctl_create_queue_args
kfd_ioctl_cross_memory_copy_args
kfd_ioctl_dbg_address_watch_args
kfd_ioctl_dbg_register_args
kfd_ioctl_dbg_trap_args
kfd_ioctl_dbg_unregister_args
kfd_ioctl_dbg_wave_control_args
kfd_ioctl_destroy_event_args
kfd_ioctl_destroy_queue_args
kfd_ioctl_free_memory_of_gpu_args
kfd_ioctl_get_available_memory_args
kfd_ioctl_get_clock_counters_args
kfd_ioctl_get_dmabuf_info_args
kfd_ioctl_get_process_apertures_args
kfd_ioctl_get_process_apertures_new_args
kfd_ioctl_get_queue_wave_state_args
kfd_ioctl_get_tile_config_args
kfd_ioctl_get_version_args
kfd_ioctl_import_dmabuf_args
kfd_ioctl_ipc_export_handle_args
kfd_ioctl_ipc_import_handle_args
kfd_ioctl_map_memory_to_gpu_args
kfd_ioctl_reset_event_args
kfd_ioctl_set_cu_mask_args
kfd_ioctl_set_event_args
kfd_ioctl_set_memory_policy_args
kfd_ioctl_set_scratch_backing_va_args
kfd_ioctl_set_trap_handler_args
kfd_ioctl_smi_events_args
kfd_ioctl_unmap_memory_from_gpu_args
kfd_ioctl_update_queue_args
kfd_ioctl_wait_events_args
kfd_memory_exception_failure
kfd_memory_range
kfd_process_device_apertures
kfd_queue_snapshot_entry
max_align_t
metrics_table_header_t
@brief Size and version information of metrics data
rsmi_activity_metric_counter_t
@brief This structure holds information about the possible activity averages. Specifically, the utilization counters.
rsmi_counter_value_t
Counter value
rsmi_error_count_t
@brief This structure holds error counts.
rsmi_evt_notification_data_t
Event notification data returned from event notification API
rsmi_freq_volt_region_t
@brief This structure holds 2 ::rsmi_range_t’s, one for frequency and one for voltage. These 2 ranges indicate the range of possible values for the corresponding ::rsmi_od_vddc_point_t.
rsmi_frequencies_t
@brief This structure holds information about clock frequencies.
rsmi_func_id_iter_handle
rsmi_gpu_metrics_t
rsmi_od_vddc_point_t
@brief This structure represents a point on the frequency-voltage plane.
rsmi_od_volt_curve_t
::RSMI_NUM_VOLTAGE_CURVE_POINTS number of ::rsmi_od_vddc_point_t’s
rsmi_od_volt_freq_data_t
@brief This structure holds the frequency-voltage values for a device.
rsmi_pcie_bandwidth_t
@brief This structure holds information about the possible PCIe bandwidths. Specifically, the possible transfer rates and their associated numbers of lanes are stored here.
rsmi_power_profile_status_t
@brief This structure contains information about which power profiles are supported by the system for a given device, and which power profile is currently active.
rsmi_process_info_t
@brief This structure contains information specific to a process.
rsmi_range_t
\endcond **
rsmi_retired_page_record_t
@brief Reserved Memory Page Record
rsmi_utilization_counter_t
@brief The utilization counter data
rsmi_version_t
@brief This structure holds version information.

Constants§

AMDKFD_COMMAND_END
AMDKFD_COMMAND_START
AMDKFD_IOCTL_BASE
CENTRIGRADE_TO_MILLI_CENTIGRADE
CPU_NODE_INDEX
INT8_MAX
INT8_MIN
INT16_MAX
INT16_MIN
INT32_MAX
INT32_MIN
INTPTR_MAX
INTPTR_MIN
INT_FAST8_MAX
INT_FAST8_MIN
INT_FAST16_MAX
INT_FAST16_MIN
INT_FAST32_MAX
INT_FAST32_MIN
INT_LEAST8_MAX
INT_LEAST8_MIN
INT_LEAST16_MAX
INT_LEAST16_MIN
INT_LEAST32_MAX
INT_LEAST32_MIN
IOCSIZE_MASK
IOCSIZE_SHIFT
IOC_IN
IOC_INOUT
IOC_OUT
KFD_CROSS_MEMORY_RW_BIT
KFD_DBG_EV_FLAG_CLEAR_STATUS
KFD_DBG_EV_STATUS_NEW_QUEUE
KFD_DBG_EV_STATUS_SUSPENDED
KFD_DBG_EV_STATUS_TRAP
KFD_DBG_EV_STATUS_VMFAULT
KFD_HW_EXCEPTION_ECC
KFD_HW_EXCEPTION_GPU_HANG
KFD_HW_EXCEPTION_PER_ENGINE_RESET
KFD_HW_EXCEPTION_WHOLE_GPU_RESET
KFD_INVALID_QUEUEID
KFD_IOCTL_DBG_MAJOR_VERSION
KFD_IOCTL_DBG_MINOR_VERSION
KFD_IOCTL_MAJOR_VERSION
KFD_IOCTL_MINOR_VERSION
KFD_IOC_ALLOC_MEM_FLAGS_AQL_QUEUE_MEM
KFD_IOC_ALLOC_MEM_FLAGS_COHERENT
KFD_IOC_ALLOC_MEM_FLAGS_DOORBELL
KFD_IOC_ALLOC_MEM_FLAGS_EXECUTABLE
KFD_IOC_ALLOC_MEM_FLAGS_GTT
KFD_IOC_ALLOC_MEM_FLAGS_MMIO_REMAP
KFD_IOC_ALLOC_MEM_FLAGS_NO_SUBSTITUTE
KFD_IOC_ALLOC_MEM_FLAGS_PUBLIC
KFD_IOC_ALLOC_MEM_FLAGS_USERPTR
KFD_IOC_ALLOC_MEM_FLAGS_VRAM
KFD_IOC_ALLOC_MEM_FLAGS_WRITABLE
KFD_IOC_CACHE_POLICY_COHERENT
KFD_IOC_CACHE_POLICY_NONCOHERENT
KFD_IOC_DBG_TRAP_ENABLE
KFD_IOC_DBG_TRAP_GET_QUEUE_SNAPSHOT
KFD_IOC_DBG_TRAP_GET_VERSION
KFD_IOC_DBG_TRAP_NODE_RESUME
KFD_IOC_DBG_TRAP_NODE_SUSPEND
KFD_IOC_DBG_TRAP_QUERY_DEBUG_EVENT
KFD_IOC_DBG_TRAP_SET_WAVE_LAUNCH_MODE
KFD_IOC_DBG_TRAP_SET_WAVE_LAUNCH_OVERRIDE
KFD_IOC_EVENT_DEBUG_EVENT
KFD_IOC_EVENT_DEVICESTATECHANGE
KFD_IOC_EVENT_HW_EXCEPTION
KFD_IOC_EVENT_MEMORY
KFD_IOC_EVENT_NODECHANGE
KFD_IOC_EVENT_PROFILE_EVENT
KFD_IOC_EVENT_QUEUE_EVENT
KFD_IOC_EVENT_SIGNAL
KFD_IOC_EVENT_SYSTEM_EVENT
KFD_IOC_QUEUE_TYPE_COMPUTE
KFD_IOC_QUEUE_TYPE_COMPUTE_AQL
KFD_IOC_QUEUE_TYPE_SDMA
KFD_IOC_QUEUE_TYPE_SDMA_XGMI
KFD_IOC_WAIT_RESULT_COMPLETE
KFD_IOC_WAIT_RESULT_FAIL
KFD_IOC_WAIT_RESULT_TIMEOUT
KFD_MAX_QUEUE_PERCENTAGE
KFD_MAX_QUEUE_PRIORITY
KFD_MEM_ERR_GPU_HANG
KFD_MEM_ERR_NO_RAS
KFD_MEM_ERR_POISON_CONSUMED
KFD_MEM_ERR_SRAM_ECC
KFD_SIGNAL_EVENT_LIMIT
MAX_ALLOWED_AW_BUFF_SIZE
MAX_ALLOWED_NUM_POINTS
MAX_ALLOWED_WAC_BUFF_SIZE
MAX_EVENT_NOTIFICATION_MSG_SIZE
NUM_OF_SUPPORTED_GPUS
PTRDIFF_MAX
PTRDIFF_MIN
RSMI_DEFAULT_VARIANT
RSMI_MAX_FAN_SPEED
RSMI_MAX_NUM_CLKS
RSMI_MAX_NUM_FREQUENCIES
RSMI_MAX_NUM_GFX_CLKS
RSMI_MAX_NUM_JPEG_ENGS
RSMI_MAX_NUM_VCNS
RSMI_MAX_NUM_XGMI_LINKS
RSMI_NUM_HBM_INSTANCES
RSMI_NUM_VOLTAGE_CURVE_POINTS
RSMI_POWER_TYPE_RSMI_AVERAGE_POWER
!< Average Power
RSMI_POWER_TYPE_RSMI_CURRENT_POWER
!< Current / Instant Power
RSMI_POWER_TYPE_RSMI_INVALID_POWER
!< Invalid / Undetected Power
RSMI_UTILIZATION_COUNTER_TYPE_RSMI_COARSE_GRAIN_GFX_ACTIVITY
RSMI_UTILIZATION_COUNTER_TYPE_RSMI_COARSE_GRAIN_MEM_ACTIVITY
!< Memory Activity
RSMI_UTILIZATION_COUNTER_TYPE_RSMI_UTILIZATION_COUNTER_FIRST
RSMI_UTILIZATION_COUNTER_TYPE_RSMI_UTILIZATION_COUNTER_LAST
SIG_ATOMIC_MAX
SIG_ATOMIC_MIN
SIZE_MAX
UINT8_MAX
UINT16_MAX
UINT32_MAX
UINTPTR_MAX
UINT_FAST8_MAX
UINT_FAST16_MAX
UINT_FAST32_MAX
UINT_LEAST8_MAX
UINT_LEAST16_MAX
UINT_LEAST32_MAX
WINT_MAX
WINT_MIN
_ATFILE_SOURCE
_BITS_STDINT_INTN_H
_BITS_STDINT_LEAST_H
_BITS_STDINT_UINTN_H
_BITS_TIME64_H
_BITS_TYPESIZES_H
_BITS_TYPES_H
_BITS_WCHAR_H
_DEFAULT_SOURCE
_FEATURES_H
_IOC_DIRBITS
_IOC_DIRMASK
_IOC_DIRSHIFT
_IOC_NONE
_IOC_NRBITS
_IOC_NRMASK
_IOC_NRSHIFT
_IOC_READ
_IOC_SIZEBITS
_IOC_SIZEMASK
_IOC_SIZESHIFT
_IOC_TYPEBITS
_IOC_TYPEMASK
_IOC_TYPESHIFT
_IOC_WRITE
_POSIX_C_SOURCE
_POSIX_SOURCE
_RSMI_IO_LINK_TYPE_RSMI_IOLINK_TYPE_NUMIOLINKTYPES
!< Number of IO Link types
_RSMI_IO_LINK_TYPE_RSMI_IOLINK_TYPE_PCIEXPRESS
!< PCI Express
_RSMI_IO_LINK_TYPE_RSMI_IOLINK_TYPE_SIZE
!< Max of IO Link types
_RSMI_IO_LINK_TYPE_RSMI_IOLINK_TYPE_UNDEFINED
!< unknown type.
_RSMI_IO_LINK_TYPE_RSMI_IOLINK_TYPE_XGMI
!< XGMI
_STDC_PREDEF_H
_STDINT_H
_SYS_CDEFS_H
__BITS_PER_LONG
__BITS_PER_LONG_LONG
__FD_SETSIZE
__GLIBC_MINOR__
__GLIBC_USE_C2X_STRTOL
__GLIBC_USE_DEPRECATED_GETS
__GLIBC_USE_DEPRECATED_SCANF
__GLIBC_USE_IEC_60559_BFP_EXT
__GLIBC_USE_IEC_60559_BFP_EXT_C2X
__GLIBC_USE_IEC_60559_EXT
__GLIBC_USE_IEC_60559_FUNCS_EXT
__GLIBC_USE_IEC_60559_FUNCS_EXT_C2X
__GLIBC_USE_IEC_60559_TYPES_EXT
__GLIBC_USE_ISOC2X
__GLIBC_USE_LIB_EXT2
__GLIBC__
__GNU_LIBRARY__
__HAVE_GENERIC_SELECTION
__INO_T_MATCHES_INO64_T
__KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64
__LDOUBLE_REDIRECTS_TO_FLOAT128_ABI
__OFF_T_MATCHES_OFF64_T
__RLIM_T_MATCHES_RLIM64_T
__STATFS_MATCHES_STATFS64
__STDC_IEC_559_COMPLEX__
__STDC_IEC_559__
__STDC_IEC_60559_BFP__
__STDC_IEC_60559_COMPLEX__
__STDC_ISO_10646__
__SYSCALL_WORDSIZE
__TIMESIZE
__USE_ATFILE
__USE_FORTIFY_LEVEL
__USE_ISOC11
__USE_ISOC95
__USE_ISOC99
__USE_MISC
__USE_POSIX
__USE_POSIX2
__USE_POSIX199309
__USE_POSIX199506
__USE_POSIX_IMPLICITLY
__USE_TIME_BITS64
__USE_XOPEN2K
__USE_XOPEN2K8
__WORDSIZE
__WORDSIZE_TIME64_COMPAT32
__bool_true_false_are_defined
__glibc_c99_flexarr_available
false_
kfd_mmio_remap_KFD_MMIO_REMAP_HDP_MEM_FLUSH_CNTL
kfd_mmio_remap_KFD_MMIO_REMAP_HDP_REG_FLUSH_CNTL
kfd_smi_event_KFD_SMI_EVENT_GPU_POST_RESET
kfd_smi_event_KFD_SMI_EVENT_GPU_PRE_RESET
kfd_smi_event_KFD_SMI_EVENT_NONE
kfd_smi_event_KFD_SMI_EVENT_THERMAL_THROTTLE
kfd_smi_event_KFD_SMI_EVENT_VMFAULT
rsmi_activity_metric_t_RSMI_ACTIVITY_GFX
rsmi_activity_metric_t_RSMI_ACTIVITY_MM
!< UVD or VCN
rsmi_activity_metric_t_RSMI_ACTIVITY_UMC
!< memory controller
rsmi_clk_type_t_RSMI_CLK_INVALID
rsmi_clk_type_t_RSMI_CLK_TYPE_DCEF
!< Display Controller Engine clock
rsmi_clk_type_t_RSMI_CLK_TYPE_DF
!< Data Fabric clock (for ASICs !< running on a separate clock)
rsmi_clk_type_t_RSMI_CLK_TYPE_FIRST
rsmi_clk_type_t_RSMI_CLK_TYPE_LAST
rsmi_clk_type_t_RSMI_CLK_TYPE_MEM
!< Memory clock
rsmi_clk_type_t_RSMI_CLK_TYPE_PCIE
!< PCIE clock
rsmi_clk_type_t_RSMI_CLK_TYPE_SOC
!< SOC clock
rsmi_clk_type_t_RSMI_CLK_TYPE_SYS
!< System clock
rsmi_compute_partition_type_t_RSMI_COMPUTE_PARTITION_CPX
!< Core mode (CPX)- Per-chip XCC with !< shared memory
rsmi_compute_partition_type_t_RSMI_COMPUTE_PARTITION_DPX
!< Dual GPU mode (DPX)- Half XCCs work !< together with shared memory
rsmi_compute_partition_type_t_RSMI_COMPUTE_PARTITION_INVALID
rsmi_compute_partition_type_t_RSMI_COMPUTE_PARTITION_QPX
!< Quad GPU mode (QPX)- Quarter XCCs !< work together with shared memory
rsmi_compute_partition_type_t_RSMI_COMPUTE_PARTITION_SPX
!< Single GPU mode (SPX)- All XCCs work !< together with shared memory
rsmi_compute_partition_type_t_RSMI_COMPUTE_PARTITION_TPX
!< Triple GPU mode (TPX)- One-third XCCs !< work together with shared memory
rsmi_counter_command_t_RSMI_CNTR_CMD_START
!< Start the counter
rsmi_counter_command_t_RSMI_CNTR_CMD_STOP
!< Stop the counter; note that this should not !< be used before reading.
rsmi_dev_perf_level_t_RSMI_DEV_PERF_LEVEL_AUTO
!< Performance level is “auto”
rsmi_dev_perf_level_t_RSMI_DEV_PERF_LEVEL_DETERMINISM
!< Performance determinism state
rsmi_dev_perf_level_t_RSMI_DEV_PERF_LEVEL_FIRST
rsmi_dev_perf_level_t_RSMI_DEV_PERF_LEVEL_HIGH
!< Keep PowerPlay levels “high”, !< regardless of workload
rsmi_dev_perf_level_t_RSMI_DEV_PERF_LEVEL_LAST
rsmi_dev_perf_level_t_RSMI_DEV_PERF_LEVEL_LOW
!< Keep PowerPlay levels “low”, !< regardless of workload
rsmi_dev_perf_level_t_RSMI_DEV_PERF_LEVEL_MANUAL
!< Only use values defined by manually !< setting the RSMI_CLK_TYPE_SYS speed
rsmi_dev_perf_level_t_RSMI_DEV_PERF_LEVEL_STABLE_MIN_MCLK
!< Stable power state with minimum !< memory clock
rsmi_dev_perf_level_t_RSMI_DEV_PERF_LEVEL_STABLE_MIN_SCLK
!< Stable power state with minimum !< system clock
rsmi_dev_perf_level_t_RSMI_DEV_PERF_LEVEL_STABLE_PEAK
!< Stable power state with peak clocks
rsmi_dev_perf_level_t_RSMI_DEV_PERF_LEVEL_STABLE_STD
!< Stable power state with profiling !< clocks
rsmi_dev_perf_level_t_RSMI_DEV_PERF_LEVEL_UNKNOWN
!< Unknown performance level
rsmi_event_group_t_RSMI_EVNT_GRP_INVALID
rsmi_event_group_t_RSMI_EVNT_GRP_XGMI
!< Data Fabric (XGMI) related events
rsmi_event_group_t_RSMI_EVNT_GRP_XGMI_DATA_OUT
!< XGMI Outbound data
rsmi_event_type_t_RSMI_EVNT_FIRST
rsmi_event_type_t_RSMI_EVNT_LAST
rsmi_event_type_t_RSMI_EVNT_XGMI_0_BEATS_TX
@brief
rsmi_event_type_t_RSMI_EVNT_XGMI_0_NOP_TX
!< NOPs sent to neighbor 0
rsmi_event_type_t_RSMI_EVNT_XGMI_0_REQUEST_TX
!< Outgoing requests to !< neighbor 0
rsmi_event_type_t_RSMI_EVNT_XGMI_0_RESPONSE_TX
!< Outgoing responses to !< neighbor 0
rsmi_event_type_t_RSMI_EVNT_XGMI_1_BEATS_TX
!< Data beats sent to !< neighbor 1; Each beat !< represents 32 bytes
rsmi_event_type_t_RSMI_EVNT_XGMI_1_NOP_TX
!< NOPs sent to neighbor 1
rsmi_event_type_t_RSMI_EVNT_XGMI_1_REQUEST_TX
!< Outgoing requests to !< neighbor 1
rsmi_event_type_t_RSMI_EVNT_XGMI_1_RESPONSE_TX
!< Outgoing responses to !< neighbor 1
rsmi_event_type_t_RSMI_EVNT_XGMI_DATA_OUT_0
rsmi_event_type_t_RSMI_EVNT_XGMI_DATA_OUT_1
!< Outbound beats to neighbor 1
rsmi_event_type_t_RSMI_EVNT_XGMI_DATA_OUT_2
!< Outbound beats to neighbor 2
rsmi_event_type_t_RSMI_EVNT_XGMI_DATA_OUT_3
!< Outbound beats to neighbor 3
rsmi_event_type_t_RSMI_EVNT_XGMI_DATA_OUT_4
!< Outbound beats to neighbor 4
rsmi_event_type_t_RSMI_EVNT_XGMI_DATA_OUT_5
!< Outbound beats to neighbor 5
rsmi_event_type_t_RSMI_EVNT_XGMI_DATA_OUT_FIRST
rsmi_event_type_t_RSMI_EVNT_XGMI_DATA_OUT_LAST
rsmi_event_type_t_RSMI_EVNT_XGMI_FIRST
rsmi_event_type_t_RSMI_EVNT_XGMI_LAST
rsmi_evt_notification_type_t_RSMI_EVT_NOTIF_FIRST
rsmi_evt_notification_type_t_RSMI_EVT_NOTIF_GPU_POST_RESET
rsmi_evt_notification_type_t_RSMI_EVT_NOTIF_GPU_PRE_RESET
rsmi_evt_notification_type_t_RSMI_EVT_NOTIF_LAST
rsmi_evt_notification_type_t_RSMI_EVT_NOTIF_THERMAL_THROTTLE
rsmi_evt_notification_type_t_RSMI_EVT_NOTIF_VMFAULT
!< VM page fault
rsmi_freq_ind_t_RSMI_FREQ_IND_INVALID
!< An invalid frequency index
rsmi_freq_ind_t_RSMI_FREQ_IND_MAX
!< Index used for the maximum frequency value
rsmi_freq_ind_t_RSMI_FREQ_IND_MIN
!< Index used for the minimum frequency value
rsmi_fw_block_t_RSMI_FW_BLOCK_ASD
rsmi_fw_block_t_RSMI_FW_BLOCK_CE
rsmi_fw_block_t_RSMI_FW_BLOCK_DMCU
rsmi_fw_block_t_RSMI_FW_BLOCK_FIRST
rsmi_fw_block_t_RSMI_FW_BLOCK_LAST
rsmi_fw_block_t_RSMI_FW_BLOCK_MC
rsmi_fw_block_t_RSMI_FW_BLOCK_ME
rsmi_fw_block_t_RSMI_FW_BLOCK_MEC
rsmi_fw_block_t_RSMI_FW_BLOCK_MEC2
rsmi_fw_block_t_RSMI_FW_BLOCK_MES
rsmi_fw_block_t_RSMI_FW_BLOCK_MES_KIQ
rsmi_fw_block_t_RSMI_FW_BLOCK_PFP
rsmi_fw_block_t_RSMI_FW_BLOCK_RLC
rsmi_fw_block_t_RSMI_FW_BLOCK_RLC_SRLC
rsmi_fw_block_t_RSMI_FW_BLOCK_RLC_SRLG
rsmi_fw_block_t_RSMI_FW_BLOCK_RLC_SRLS
rsmi_fw_block_t_RSMI_FW_BLOCK_SDMA
rsmi_fw_block_t_RSMI_FW_BLOCK_SDMA2
rsmi_fw_block_t_RSMI_FW_BLOCK_SMC
rsmi_fw_block_t_RSMI_FW_BLOCK_SOS
rsmi_fw_block_t_RSMI_FW_BLOCK_TA_RAS
rsmi_fw_block_t_RSMI_FW_BLOCK_TA_XGMI
rsmi_fw_block_t_RSMI_FW_BLOCK_UVD
rsmi_fw_block_t_RSMI_FW_BLOCK_VCE
rsmi_fw_block_t_RSMI_FW_BLOCK_VCN
rsmi_gpu_block_t_RSMI_GPU_BLOCK_ATHUB
!< ATHUB block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_DF
!< DF block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_FIRST
rsmi_gpu_block_t_RSMI_GPU_BLOCK_FUSE
!< Fuse block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_GFX
!< GFX block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_HDP
!< HDP block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_INVALID
!< Used to indicate an !< invalid block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_LAST
!< The highest bit position !< for supported blocks
rsmi_gpu_block_t_RSMI_GPU_BLOCK_MMHUB
!< MMHUB block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_MP0
!< MP0 block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_MP1
!< MP1 block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_PCIE_BIF
!< PCIE_BIF block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_RESERVED
rsmi_gpu_block_t_RSMI_GPU_BLOCK_SDMA
!< SDMA block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_SEM
!< SEM block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_SMN
!< SMN block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_UMC
!< UMC block
rsmi_gpu_block_t_RSMI_GPU_BLOCK_XGMI_WAFL
!< XGMI block
rsmi_init_flags_t_RSMI_INIT_FLAG_ALL_GPUS
!< Attempt to add all GPUs found !< (including non-AMD) to the list !< of devices from which SMI !< information can be retrieved. By !< default, only AMD devices are !< enumerated by RSMI.
rsmi_init_flags_t_RSMI_INIT_FLAG_RESRV_TEST1
!< Reserved for test
rsmi_memory_page_status_t_RSMI_MEM_PAGE_STATUS_PENDING
!< Pending. This gpu page is marked !< as bad and will be marked reserved !< at the next window.
rsmi_memory_page_status_t_RSMI_MEM_PAGE_STATUS_RESERVED
!< Reserved. This gpu page is reserved !< and not available for use
rsmi_memory_page_status_t_RSMI_MEM_PAGE_STATUS_UNRESERVABLE
!< Unable to reserve this page
rsmi_memory_partition_type_t_RSMI_MEMORY_PARTITION_NPS1
!< NPS1 - All CCD & XCD data is interleaved !< accross all 8 HBM stacks (all stacks/1).
rsmi_memory_partition_type_t_RSMI_MEMORY_PARTITION_NPS2
!< NPS2 - 2 sets of CCDs or 4 XCD interleaved !< accross the 4 HBM stacks per AID pair !< (8 stacks/2).
rsmi_memory_partition_type_t_RSMI_MEMORY_PARTITION_NPS4
!< NPS4 - Each XCD data is interleaved accross !< accross 2 (or single) HBM stacks !< (8 stacks/8 or 8 stacks/4).
rsmi_memory_partition_type_t_RSMI_MEMORY_PARTITION_NPS8
!< NPS8 - Each XCD uses a single HBM stack !< (8 stacks/8). Or each XCD uses a single !< HBM stack & CCDs share 2 non-interleaved !< HBM stacks on its AID !< (AID[1,2,3] = 6 stacks/6).
rsmi_memory_partition_type_t_RSMI_MEMORY_PARTITION_UNKNOWN
rsmi_memory_type_t_RSMI_MEM_TYPE_FIRST
rsmi_memory_type_t_RSMI_MEM_TYPE_GTT
!< GTT memory
rsmi_memory_type_t_RSMI_MEM_TYPE_LAST
rsmi_memory_type_t_RSMI_MEM_TYPE_VIS_VRAM
!< VRAM memory that is visible
rsmi_memory_type_t_RSMI_MEM_TYPE_VRAM
!< VRAM memory
rsmi_power_profile_preset_masks_t_RSMI_PWR_PROF_PRST_3D_FULL_SCR_MASK
rsmi_power_profile_preset_masks_t_RSMI_PWR_PROF_PRST_BOOTUP_DEFAULT
!< Default Boot Up Profile
rsmi_power_profile_preset_masks_t_RSMI_PWR_PROF_PRST_COMPUTE_MASK
!< Compute Saving Profile
rsmi_power_profile_preset_masks_t_RSMI_PWR_PROF_PRST_CUSTOM_MASK
!< Custom Power Profile
rsmi_power_profile_preset_masks_t_RSMI_PWR_PROF_PRST_INVALID
rsmi_power_profile_preset_masks_t_RSMI_PWR_PROF_PRST_LAST
rsmi_power_profile_preset_masks_t_RSMI_PWR_PROF_PRST_POWER_SAVING_MASK
!< Power Saving Profile
rsmi_power_profile_preset_masks_t_RSMI_PWR_PROF_PRST_VIDEO_MASK
!< Video Power Profile
rsmi_power_profile_preset_masks_t_RSMI_PWR_PROF_PRST_VR_MASK
!< VR Power Profile
rsmi_ras_err_state_t_RSMI_RAS_ERR_STATE_DISABLED
!< ECC is disabled
rsmi_ras_err_state_t_RSMI_RAS_ERR_STATE_ENABLED
!< ECC is enabled
rsmi_ras_err_state_t_RSMI_RAS_ERR_STATE_INVALID
rsmi_ras_err_state_t_RSMI_RAS_ERR_STATE_LAST
rsmi_ras_err_state_t_RSMI_RAS_ERR_STATE_MULT_UC
!< Multiple uncorrectable errors
rsmi_ras_err_state_t_RSMI_RAS_ERR_STATE_NONE
!< No current errors
rsmi_ras_err_state_t_RSMI_RAS_ERR_STATE_PARITY
!< ECC errors present, but type unknown
rsmi_ras_err_state_t_RSMI_RAS_ERR_STATE_POISON
!< Firmware detected error and isolated !< page. Treat as uncorrectable.
rsmi_ras_err_state_t_RSMI_RAS_ERR_STATE_SING_C
!< Single correctable error
rsmi_status_t_RSMI_INITIALIZATION_ERROR
rsmi_status_t_RSMI_STATUS_AMDGPU_RESTART_ERR
!< Could not successfully restart !< the amdgpu driver
rsmi_status_t_RSMI_STATUS_BUSY
!< A resource or mutex could not be !< acquired because it is already !< being used
rsmi_status_t_RSMI_STATUS_FILE_ERROR
!< Problem accessing a file. This !< may because the operation is not !< supported by the Linux kernel !< version running on the executing !< machine
rsmi_status_t_RSMI_STATUS_INIT_ERROR
!< An error occurred when rsmi !< initializing internal data !< structures
rsmi_status_t_RSMI_STATUS_INPUT_OUT_OF_BOUNDS
!< The provided input is out of !< allowable or safe range
rsmi_status_t_RSMI_STATUS_INSUFFICIENT_SIZE
!< Not enough resources were !< available for the operation
rsmi_status_t_RSMI_STATUS_INTERNAL_EXCEPTION
!< An internal exception was caught
rsmi_status_t_RSMI_STATUS_INTERRUPT
!< An interrupt occurred during !< execution of function
rsmi_status_t_RSMI_STATUS_INVALID_ARGS
!< Passed in arguments are not valid
rsmi_status_t_RSMI_STATUS_NOT_FOUND
!< An item was searched for but not !< found
rsmi_status_t_RSMI_STATUS_NOT_SUPPORTED
!< The requested information or !< action is not available for the !< given input, on the given system
rsmi_status_t_RSMI_STATUS_NOT_YET_IMPLEMENTED
!< The requested function has not !< yet been implemented in the !< current system for the current !< devices
rsmi_status_t_RSMI_STATUS_NO_DATA
!< No data was found for a given !< input
rsmi_status_t_RSMI_STATUS_OUT_OF_RESOURCES
!< Unable to acquire memory or other !< resource
rsmi_status_t_RSMI_STATUS_PERMISSION
!< Permission denied/EACCESS file !< error. Many functions require !< root access to run.
rsmi_status_t_RSMI_STATUS_REFCOUNT_OVERFLOW
!< An internal reference counter !< exceeded INT32_MAX
rsmi_status_t_RSMI_STATUS_SETTING_UNAVAILABLE
!< Requested setting is unavailable !< for the current device
rsmi_status_t_RSMI_STATUS_SUCCESS
!< Operation was successful
rsmi_status_t_RSMI_STATUS_UNEXPECTED_DATA
!< The data read or provided to !< function is not what was expected
rsmi_status_t_RSMI_STATUS_UNEXPECTED_SIZE
!< An unexpected amount of data !< was read
rsmi_status_t_RSMI_STATUS_UNKNOWN_ERROR
!< An unknown error occurred
rsmi_sw_component_t_RSMI_SW_COMP_DRIVER
!< Driver
rsmi_sw_component_t_RSMI_SW_COMP_FIRST
rsmi_sw_component_t_RSMI_SW_COMP_LAST
rsmi_temperature_metric_t_RSMI_TEMP_CRITICAL
!< Temperature critical max value, typically !< greater than corresponding temp_max values.
rsmi_temperature_metric_t_RSMI_TEMP_CRITICAL_HYST
!< Temperature hysteresis value for critical !< limit. (This is an absolute temperature, !< not a delta).
rsmi_temperature_metric_t_RSMI_TEMP_CRIT_MIN
!< Temperature critical min value, typically !< lower than corresponding temperature !< minimum values.
rsmi_temperature_metric_t_RSMI_TEMP_CRIT_MIN_HYST
!< Temperature hysteresis value for critical !< minimum limit. (This is an absolute !< temperature, not a delta).
rsmi_temperature_metric_t_RSMI_TEMP_CURRENT
!< Temperature current value.
rsmi_temperature_metric_t_RSMI_TEMP_EMERGENCY
!< Temperature emergency max value, for chips !< supporting more than two upper temperature !< limits. Must be equal or greater than !< corresponding temp_crit values.
rsmi_temperature_metric_t_RSMI_TEMP_EMERGENCY_HYST
!< Temperature hysteresis value for emergency !< limit. (This is an absolute temperature, !< not a delta).
rsmi_temperature_metric_t_RSMI_TEMP_FIRST
rsmi_temperature_metric_t_RSMI_TEMP_HIGHEST
!< Historical maximum temperature.
rsmi_temperature_metric_t_RSMI_TEMP_LAST
rsmi_temperature_metric_t_RSMI_TEMP_LOWEST
!< Historical minimum temperature.
rsmi_temperature_metric_t_RSMI_TEMP_MAX
!< Temperature max value.
rsmi_temperature_metric_t_RSMI_TEMP_MAX_HYST
!< Temperature hysteresis value for max limit. !< (This is an absolute temperature, not a !< delta).
rsmi_temperature_metric_t_RSMI_TEMP_MIN
!< Temperature min value.
rsmi_temperature_metric_t_RSMI_TEMP_MIN_HYST
!< Temperature hysteresis value for min limit. !< (This is an absolute temperature, !< not a delta).
rsmi_temperature_metric_t_RSMI_TEMP_OFFSET
!< Temperature offset which is added to the
rsmi_temperature_type_t_RSMI_TEMP_TYPE_EDGE
!< Edge GPU temperature
rsmi_temperature_type_t_RSMI_TEMP_TYPE_FIRST
rsmi_temperature_type_t_RSMI_TEMP_TYPE_HBM_0
!< HBM temperature instance 0
rsmi_temperature_type_t_RSMI_TEMP_TYPE_HBM_1
!< HBM temperature instance 1
rsmi_temperature_type_t_RSMI_TEMP_TYPE_HBM_2
!< HBM temperature instance 2
rsmi_temperature_type_t_RSMI_TEMP_TYPE_HBM_3
!< HBM temperature instance 3
rsmi_temperature_type_t_RSMI_TEMP_TYPE_INVALID
!< Invalid type
rsmi_temperature_type_t_RSMI_TEMP_TYPE_JUNCTION
!< Junction/hotspot !< temperature
rsmi_temperature_type_t_RSMI_TEMP_TYPE_LAST
rsmi_temperature_type_t_RSMI_TEMP_TYPE_MEMORY
!< VRAM temperature
rsmi_voltage_metric_t_RSMI_VOLT_AVERAGE
!< Average voltage.
rsmi_voltage_metric_t_RSMI_VOLT_CURRENT
!< Voltage current value.
rsmi_voltage_metric_t_RSMI_VOLT_FIRST
rsmi_voltage_metric_t_RSMI_VOLT_HIGHEST
!< Historical maximum voltage.
rsmi_voltage_metric_t_RSMI_VOLT_LAST
rsmi_voltage_metric_t_RSMI_VOLT_LOWEST
!< Historical minimum voltage.
rsmi_voltage_metric_t_RSMI_VOLT_MAX
!< Voltage max value.
rsmi_voltage_metric_t_RSMI_VOLT_MAX_CRIT
!< Voltage critical max value.
rsmi_voltage_metric_t_RSMI_VOLT_MIN
!< Voltage min value.
rsmi_voltage_metric_t_RSMI_VOLT_MIN_CRIT
!< Voltage critical min value.
rsmi_voltage_type_t_RSMI_VOLT_TYPE_FIRST
rsmi_voltage_type_t_RSMI_VOLT_TYPE_INVALID
!< Invalid type
rsmi_voltage_type_t_RSMI_VOLT_TYPE_LAST
rsmi_voltage_type_t_RSMI_VOLT_TYPE_VDDGFX
!< Vddgfx GPU !< voltage
rsmi_xgmi_status_t_RSMI_XGMI_STATUS_ERROR
rsmi_xgmi_status_t_RSMI_XGMI_STATUS_MULTIPLE_ERRORS
rsmi_xgmi_status_t_RSMI_XGMI_STATUS_NO_ERRORS
true_

Functions§

rsmi_compute_process_gpus_get
@brief Get the device indices currently being used by a process
rsmi_compute_process_info_by_device_get
@brief Get the info of a process on a specific device.
rsmi_compute_process_info_by_pid_get
@brief Get process information about a specific process
rsmi_compute_process_info_get
@brief Get process information about processes currently using GPU
rsmi_counter_available_counters_get
@brief Get the number of currently available counters
rsmi_counter_control
@brief Issue performance counter control commands
rsmi_counter_read
@brief Read the current value of a performance counter
rsmi_dev_activity_avg_mm_get
@brief Get activity metric bandwidth average utilization counter of the specified device
rsmi_dev_activity_metric_get
@brief Get activity metric average utilization counter of the specified device
rsmi_dev_brand_get
@brief Get the brand string of a gpu device.
rsmi_dev_busy_percent_get
@brief Get percentage of time device is busy doing any processing
rsmi_dev_clk_range_set
@brief This function sets the clock range information
rsmi_dev_compute_partition_get
@brief Retrieves the current compute partitioning for a desired device
rsmi_dev_compute_partition_reset
@brief Reverts a selected device’s compute partition setting back to its boot state.
rsmi_dev_compute_partition_set
@brief Modifies a selected device’s compute partition setting.
rsmi_dev_counter_create
@brief Create a performance counter object
rsmi_dev_counter_destroy
@brief Deallocate a performance counter object
rsmi_dev_counter_group_supported
@brief Tell if an event group is supported by a given device
rsmi_dev_current_socket_power_get
@brief Get the current socket power (also known as instant power) of the device index provided.
rsmi_dev_drm_render_minor_get
@brief Get the drm minor number associated with this device
rsmi_dev_ecc_count_get
@brief Retrieve the error counts for a GPU block
rsmi_dev_ecc_enabled_get
@brief Retrieve the enabled ECC bit-mask
rsmi_dev_ecc_status_get
@brief Retrieve the ECC status for a GPU block
rsmi_dev_energy_count_get
@brief Get the energy accumulator counter of the device with provided device index.
rsmi_dev_fan_reset
/ /** @defgroup PhysCont Physical State Control These functions provide control over the physical state of a device. @{ / /** @brief Reset the fan to automatic driver control
rsmi_dev_fan_rpms_get
@defgroup PhysQuer Physical State Queries These functions provide information about the physical characteristics of the device. @{ / /** @brief Get the fan speed in RPMs of the device with the specified device index and 0-based sensor index.
rsmi_dev_fan_speed_get
@brief Get the fan speed for the specified device as a value relative to ::RSMI_MAX_FAN_SPEED
rsmi_dev_fan_speed_max_get
@brief Get the max. fan speed of the device with provided device index.
rsmi_dev_fan_speed_set
@brief Set the fan speed for the specified device with the provided speed, in RPMs.
rsmi_dev_firmware_version_get
@brief Get the firmware versions for a device
rsmi_dev_gpu_clk_freq_get
@brief Get the list of possible system clock speeds of device for a specified clock type.
rsmi_dev_gpu_clk_freq_set
@brief Control the set of allowed frequencies that can be used for the specified clock.
rsmi_dev_gpu_metrics_info_get
@brief This function retrieves the gpu metrics information
rsmi_dev_gpu_reset
@brief Reset the gpu associated with the device with provided device index
rsmi_dev_id_get
@brief Get the device id associated with the device with provided device index.
rsmi_dev_mem_overdrive_level_get
@brief Get the memory clock overdrive percent associated with the device with provided device index.
rsmi_dev_memory_busy_percent_get
@brief Get percentage of time any device memory is being used
rsmi_dev_memory_partition_get
@brief Retrieves the current memory partition for a desired device
rsmi_dev_memory_partition_reset
@brief Reverts a selected device’s memory partition setting back to its boot state.
rsmi_dev_memory_partition_set
@brief Modifies a selected device’s current memory partition setting.
rsmi_dev_memory_reserved_pages_get
@brief Get information about reserved (“retired”) memory pages
rsmi_dev_memory_total_get
@brief Get the total amount of memory that exists
rsmi_dev_memory_usage_get
@brief Get the current memory usage
rsmi_dev_metrics_avg_dclock0_frequency_get
@brief Get the ‘avg_dclock0_frequency’ from the GPU metrics associated with the device
rsmi_dev_metrics_avg_dclock1_frequency_get
@brief Get the ‘avg_dclock1_frequency’ from the GPU metrics associated with the device
rsmi_dev_metrics_avg_gfx_activity_get
@brief Get the ‘avg_gfx_activity’ from the GPU metrics associated with the device
rsmi_dev_metrics_avg_gfx_clock_frequency_get
@brief Get the ‘avg_gfx_clock_frequency’ from the GPU metrics associated with the device
rsmi_dev_metrics_avg_mm_activity_get
@brief Get the ‘avg_mm_activity’ from the GPU metrics associated with the device
rsmi_dev_metrics_avg_soc_clock_frequency_get
@brief Get the ‘avg_soc_clock_frequency’ from the GPU metrics associated with the device
rsmi_dev_metrics_avg_socket_power_get
@brief Get the ‘avg_socket_power’ from the GPU metrics associated with the device
rsmi_dev_metrics_avg_uclock_frequency_get
@brief Get the ‘avg_uclock_frequency’ from the GPU metrics associated with the device
rsmi_dev_metrics_avg_umc_activity_get
@brief Get the ‘avg_umc_activity’ from the GPU metrics associated with the device
rsmi_dev_metrics_avg_vclock0_frequency_get
@brief Get the ‘avg_vclock0_frequency’ from the GPU metrics associated with the device
rsmi_dev_metrics_avg_vclock1_frequency_get
@brief Get the ‘avg_vclock1_frequency’ from the GPU metrics associated with the device
rsmi_dev_metrics_curr_dclk0_get
@brief Get the ‘curr_dclk0’ from the GPU metrics associated with the device
rsmi_dev_metrics_curr_dclk1_get
@brief Get the ‘curr_dclk1’ from the GPU metrics associated with the device
rsmi_dev_metrics_curr_fan_speed_get
@brief Get the ‘curr_fan_speed’ from the GPU metrics associated with the device
rsmi_dev_metrics_curr_gfxclk_get
@brief Get the ‘curr_gfxclk’ from the GPU metrics associated with the device
rsmi_dev_metrics_curr_socclk_get
@brief Get the ‘curr_socclk’ from the GPU metrics associated with the device
rsmi_dev_metrics_curr_socket_power_get
@brief Get the ‘curr_socket_power’ from the GPU metrics associated with the device
rsmi_dev_metrics_curr_uclk_get
@brief Get the ‘curr_uclk’ from the GPU metrics associated with the device
rsmi_dev_metrics_curr_vclk0_get
@brief Get the ‘curr_vclk0’ from the GPU metrics associated with the device
rsmi_dev_metrics_curr_vclk1_get
@brief Get the ‘curr_vclk1’ from the GPU metrics associated with the device
rsmi_dev_metrics_energy_acc_get
@brief Get the ‘energy_acc’ from the GPU metrics associated with the device
rsmi_dev_metrics_firmware_timestamp_get
@brief Get the ‘firmware_timestamp’ from the GPU metrics associated with the device
rsmi_dev_metrics_gfx_activity_acc_get
@brief Get the ‘gfx_activity_acc’ from the GPU metrics associated with the device
rsmi_dev_metrics_gfxclk_lock_status_get
@brief Get the ‘gfxclk_lock_status’ from the GPU metrics associated with the device
rsmi_dev_metrics_header_info_get
@brief Get the ‘metrics_header_info’ from the GPU metrics associated with the device
rsmi_dev_metrics_indep_throttle_status_get
@brief Get the ‘indep_throttle_status’ from the GPU metrics associated with the device
rsmi_dev_metrics_jpeg_activity_get
@brief Get the ‘jpeg_activity’ from the GPU metrics associated with the device
rsmi_dev_metrics_log_get
@brief Get the log from the GPU metrics associated with the device
rsmi_dev_metrics_mem_activity_acc_get
@brief Get the ‘mem_activity_acc’ from the GPU metrics associated with the device
rsmi_dev_metrics_pcie_bandwidth_acc_get
@brief Get the ‘pcie_bandwidth_acc’ from the GPU metrics associated with the device
rsmi_dev_metrics_pcie_bandwidth_inst_get
@brief Get the ‘pcie_bandwidth_inst’ from the GPU metrics associated with the device
rsmi_dev_metrics_pcie_l0_recov_count_acc_get
@brief Get the ‘pcie_l0_recov_count_acc’ from the GPU metrics associated with the device
rsmi_dev_metrics_pcie_link_speed_get
@brief Get the ‘pcie_link_speed’ from the GPU metrics associated with the device
rsmi_dev_metrics_pcie_link_width_get
@brief Get the ‘pcie_link_width’ from the GPU metrics associated with the device
rsmi_dev_metrics_pcie_nak_rcvd_count_acc_get
@brief Get the ‘pcie_nak_rcvd_count_acc’ from the GPU metrics associated with the device
rsmi_dev_metrics_pcie_nak_sent_count_acc_get
@brief Get the ‘pcie_nak_sent_count_acc’ from the GPU metrics associated with the device
rsmi_dev_metrics_pcie_replay_count_acc_get
@brief Get the ‘pcie_replay_count_acc’ from the GPU metrics associated with the device
rsmi_dev_metrics_pcie_replay_rover_count_acc_get
@brief Get the ‘pcie_replay_rover_count_acc’ from the GPU metrics associated with the device
rsmi_dev_metrics_system_clock_counter_get
@brief Get the ‘system_clock_counter’ from the GPU metrics associated with the device
rsmi_dev_metrics_temp_edge_get
@brief Get the ‘temp_edge’ from the GPU metrics associated with the device
rsmi_dev_metrics_temp_hbm_get
@brief Get the ‘temp_hbm’ from the GPU metrics associated with the device
rsmi_dev_metrics_temp_hotspot_get
@brief Get the ‘temp_hotspot’ from the GPU metrics associated with the device
rsmi_dev_metrics_temp_mem_get
@brief Get the ‘temp_mem’ from the GPU metrics associated with the device
rsmi_dev_metrics_temp_vrgfx_get
@brief Get the ‘temp_vrgfx’ from the GPU metrics associated with the device
rsmi_dev_metrics_temp_vrmem_get
@brief Get the ‘temp_vrmem’ from the GPU metrics associated with the device
rsmi_dev_metrics_temp_vrsoc_get
@brief Get the ‘temp_vrsoc’ from the GPU metrics associated with the device
rsmi_dev_metrics_throttle_status_get
@brief Get the ‘throttle_status’ from the GPU metrics associated with the device
rsmi_dev_metrics_vcn_activity_get
@brief Get the ‘vcn_activity’ from the GPU metrics associated with the device
rsmi_dev_metrics_volt_gfx_get
@brief Get the ‘volt_gfx’ from the GPU metrics associated with the device
rsmi_dev_metrics_volt_mem_get
@brief Get the ‘volt_mem’ from the GPU metrics associated with the device
rsmi_dev_metrics_volt_soc_get
@brief Get the ‘volt_soc’ from the GPU metrics associated with the device
rsmi_dev_metrics_xcd_counter_get
@brief Get the ‘xcd_counter’ from the GPU metrics associated with the device
rsmi_dev_metrics_xgmi_link_speed_get
@brief Get the ‘xgmi_link_speed’ from the GPU metrics associated with the device
rsmi_dev_metrics_xgmi_link_width_get
@brief Get the ‘xgmi_link_width’ from the GPU metrics associated with the device
rsmi_dev_metrics_xgmi_read_data_get
@brief Get the ‘xgmi_read_data’ from the GPU metrics associated with the device
rsmi_dev_metrics_xgmi_write_data_get
@brief Get the ‘xgmi_write_data’ from the GPU metrics associated with the device
rsmi_dev_name_get
@brief Get the name string of a gpu device.
rsmi_dev_od_clk_info_set
@brief This function sets the clock frequency information
rsmi_dev_od_volt_curve_regions_get
@brief This function will retrieve the current valid regions in the frequency/voltage space.
rsmi_dev_od_volt_info_get
@brief This function retrieves the voltage/frequency curve information
rsmi_dev_od_volt_info_set
@brief This function sets 1 of the 3 voltage curve points.
rsmi_dev_overdrive_level_get
@brief Get the overdrive percent associated with the device with provided device index.
rsmi_dev_overdrive_level_set
@brief Set the overdrive percent associated with the device with provided device index with the provided value. See details for WARNING.
rsmi_dev_overdrive_level_set_v1
@brief Set the overdrive percent associated with the device with provided device index with the provided value. See details for WARNING.
rsmi_dev_pci_bandwidth_get
/ /** @defgroup PCIeQuer PCIe Queries These functions provide information about PCIe. @{ / /** @brief Get the list of possible PCIe bandwidths that are available.
rsmi_dev_pci_bandwidth_set
@brief Control the set of allowed PCIe bandwidths that can be used.
rsmi_dev_pci_id_get
@brief Get the unique PCI device identifier associated for a device
rsmi_dev_pci_replay_counter_get
@brief Get PCIe replay counter
rsmi_dev_pci_throughput_get
@brief Get PCIe traffic information
rsmi_dev_perf_level_get
@brief Get the performance level of the device with provided device index.
rsmi_dev_perf_level_set
@defgroup PerfCont Clock, Power and Performance Control These functions provide control over clock frequencies, power and performance. @{ / /** @brief Set the PowerPlay performance level associated with the device with provided device index with the provided value.
rsmi_dev_perf_level_set_v1
@brief Set the PowerPlay performance level associated with the device with provided device index with the provided value.
rsmi_dev_power_ave_get
/ /** @defgroup PowerQuer Power Queries These functions provide information about power usage. @{ / /** @brief Get the average power consumption of the device with provided device index.
rsmi_dev_power_cap_default_get
@brief Get the default power cap for the device specified by @p dv_ind.
rsmi_dev_power_cap_get
@brief Get the cap on power which, when reached, causes the system to take action to reduce power.
rsmi_dev_power_cap_range_get
@brief Get the range of valid values for the power cap
rsmi_dev_power_cap_set
/ /** @defgroup PowerCont Power Control These functions provide ways to control power usage. @{ / /** @brief Set the power cap value
rsmi_dev_power_get
@brief A generic get which attempts to retieve current socket power (also known as instant power) of the device index provided, if not supported tries to get average power consumed by device. Current socket power is typically supported by newer devices, whereas average power is generally reported on older devices. This function aims to provide backwards compatability depending on device support.
rsmi_dev_power_profile_presets_get
@brief Get the list of available preset power profiles and an indication of which profile is currently active.
rsmi_dev_power_profile_set
@brief Set the power profile
rsmi_dev_revision_get
@brief Get the device revision associated with the device
rsmi_dev_serial_number_get
@brief Get the serial number string for a device
rsmi_dev_sku_get
@brief Get the SKU for a desired device associated with the device with provided device index.
rsmi_dev_subsystem_id_get
@brief Get the subsystem device id associated with the device with provided device index.
rsmi_dev_subsystem_name_get
@brief Get the name string for the device subsytem
rsmi_dev_subsystem_vendor_id_get
@brief Get the device subsystem vendor id associated with the device with provided device index.
rsmi_dev_supported_func_iterator_close
@brief Close a variant iterator handle
rsmi_dev_supported_func_iterator_open
@brief Get a function name iterator of supported RSMI functions for a device
rsmi_dev_supported_variant_iterator_open
@brief Get a variant iterator for a given handle
rsmi_dev_temp_metric_get
@brief Get the temperature metric value for the specified metric, from the specified temperature sensor on the specified device.
rsmi_dev_unique_id_get
@brief Get Unique ID
rsmi_dev_vbios_version_get
@brief Get the VBIOS identifer string
rsmi_dev_vendor_id_get
@brief Get the device vendor id associated with the device with provided device index.
rsmi_dev_vendor_name_get
@brief Get the name string for a give vendor ID
rsmi_dev_volt_metric_get
@brief Get the voltage metric value for the specified metric, from the specified voltage sensor on the specified device.
rsmi_dev_vram_vendor_get
@brief Get the vram vendor string of a gpu device.
rsmi_dev_xgmi_error_reset
@brief Reset the XGMI error status for a device
rsmi_dev_xgmi_error_status
@brief Retrieve the XGMI error status for a device
rsmi_dev_xgmi_hive_id_get
@brief Retrieve the XGMI hive id for a device
rsmi_dev_xgmi_physical_id_get
@brief Get the XGMI physical id associated with the device
rsmi_event_notification_get
@brief Collect event notifications, waiting a specified amount of time
rsmi_event_notification_init
@brief Prepare to collect event notifications for a GPU
rsmi_event_notification_mask_set
@brief Specify which events to collect for a device
rsmi_event_notification_stop
@brief Close any file handles and free any resources used by event notification for a GPU
rsmi_func_iter_next
@brief Advance a function identifer iterator
rsmi_func_iter_value_get
@brief Get the value associated with a function/variant iterator
rsmi_init
/ /** @defgroup InitShutAdmin Initialization and Shutdown These functions are used for initialization of ROCm SMI and clean up when done. @{ / /** @brief Initialize ROCm SMI.
rsmi_is_P2P_accessible
@brief Return P2P availability status between 2 GPUs
rsmi_minmax_bandwidth_get
@brief Retreive minimal and maximal io link bandwidth between 2 GPUs
rsmi_num_monitor_devices
/ /** @defgroup IDQuer Identifier Queries These functions provide identification information. @{ / /** @brief Get the number of devices that have monitor information.
rsmi_perf_determinism_mode_set
@brief Enter performance determinism mode with provided device index.
rsmi_shut_down
@brief Shutdown ROCm SMI.
rsmi_status_string
@brief Get a description of a provided RSMI error status
rsmi_topo_get_link_type
@brief Retrieve the hops and the connection type between GPU to GPU/CPU
rsmi_topo_get_link_weight
@brief Retrieve the weight for a connection between 2 GPUs
rsmi_topo_get_numa_node_number
@brief Retrieve the NUMA CPU node number for a device
rsmi_topo_numa_affinity_get
@brief Get the NUMA node associated with a device
rsmi_utilization_count_get
@brief Get coarse grain utilization counter of the specified device
rsmi_version_get
@brief Get the build version information for the currently running build of RSMI.
rsmi_version_str_get
@brief Get the driver version string for the current system.

Type Aliases§

GPUMetricCurrDClk0_t
GPUMetricCurrGfxClk_t
GPUMetricCurrSocClk_t
GPUMetricCurrVClk0_t
GPUMetricJpegActivity_t
GPUMetricTempHbm_t
Metric multi-valued counter types
GPUMetricVcnActivity_t
GPUMetricXgmiReadDataAcc_t
GPUMetricXgmiWriteDataAcc_t
RSMI_IO_LINK_TYPE
@brief Types for IO Link
RSMI_POWER_TYPE
@brief Power types
RSMI_UTILIZATION_COUNTER_TYPE
@brief The utilization counter type
_RSMI_IO_LINK_TYPE
@brief Types for IO Link
__be16
__be32
__be64
__blkcnt64_t
__blkcnt_t
__blksize_t
__caddr_t
__clock_t
__clockid_t
__daddr_t
__dev_t
__fsblkcnt64_t
__fsblkcnt_t
__fsfilcnt64_t
__fsfilcnt_t
__fsword_t
__gid_t
__id_t
__ino64_t
__ino_t
__int8_t
__int16_t
__int32_t
__int64_t
__int_least8_t
__int_least16_t
__int_least32_t
__int_least64_t
__intmax_t
__intptr_t
__kernel_caddr_t
__kernel_clock_t
__kernel_clockid_t
__kernel_daddr_t
__kernel_gid16_t
__kernel_gid32_t
__kernel_gid_t
__kernel_ino_t
__kernel_ipc_pid_t
__kernel_key_t
__kernel_loff_t
__kernel_long_t
__kernel_mode_t
__kernel_mqd_t
__kernel_off_t
__kernel_old_dev_t
__kernel_old_gid_t
__kernel_old_time_t
__kernel_old_uid_t
__kernel_pid_t
__kernel_ptrdiff_t
__kernel_sighandler_t
__kernel_size_t
__kernel_ssize_t
__kernel_suseconds_t
__kernel_time64_t
__kernel_time_t
__kernel_timer_t
__kernel_uid16_t
__kernel_uid32_t
__kernel_uid_t
__kernel_ulong_t
__key_t
__le16
__le32
__le64
__loff_t
__mode_t
__nlink_t
__off64_t
__off_t
__pid_t
__poll_t
__quad_t
__rlim64_t
__rlim_t
__s8
__s16
__s32
__s64
__s128
__sig_atomic_t
__socklen_t
__ssize_t
__sum16
__suseconds64_t
__suseconds_t
__syscall_slong_t
__syscall_ulong_t
__time_t
__timer_t
__u8
__u16
__u32
__u64
__u128
__u_char
__u_int
__u_long
__u_quad_t
__u_short
__uid_t
__uint8_t
__uint16_t
__uint32_t
__uint64_t
__uint_least8_t
__uint_least16_t
__uint_least32_t
__uint_least64_t
__uintmax_t
__useconds_t
__wsum
int_fast8_t
int_fast16_t
int_fast32_t
int_fast64_t
int_least8_t
int_least16_t
int_least32_t
int_least64_t
intmax_t
kfd_mmio_remap
kfd_smi_event
rsmi_activity_metric_t
@brief Activity (Utilization) Metrics. This enum is used to identify various activity metrics.
rsmi_bit_field
\cond Ignore in docs.
rsmi_bit_field_t
@brief Bitfield used in various RSMI calls
rsmi_clk_type
Clock types
rsmi_clk_type_t
Clock types
rsmi_compute_partition_type
@brief Compute Partition. This enum is used to identify various compute partitioning settings.
rsmi_compute_partition_type_t
@brief Compute Partition. This enum is used to identify various compute partitioning settings.
rsmi_counter_command_t
Event counter commands
rsmi_dev_perf_level
@brief PowerPlay performance levels
rsmi_dev_perf_level_t
@brief PowerPlay performance levels
rsmi_event_group_t
Event Groups
rsmi_event_handle_t
@brief Handle to performance event counter
rsmi_event_type_t
Event types @brief Event type enum. Events belonging to a particular event group ::rsmi_event_group_t should begin enumerating at the ::rsmi_event_group_t value for that group.
rsmi_evt_notification_type_t
Event notification event types
rsmi_freq_ind
@brief The values of this enum are used as frequency identifiers.
rsmi_freq_ind_t
@brief The values of this enum are used as frequency identifiers.
rsmi_freq_volt_region
\cond Ignore in docs.
rsmi_frequencies
\cond Ignore in docs.
rsmi_func_id_iter_handle_t
@brief Opaque handle to function-support object
rsmi_func_id_value_t
@brief This union holds the value of an ::rsmi_func_id_iter_handle_t. The value may be a function name, or an ennumerated variant value of types such as ::rsmi_memory_type_t, ::rsmi_temperature_metric_t, etc.
rsmi_fw_block_t
@brief The values of this enum are used to identify the various firmware blocks.
rsmi_gpu_block
@brief This enum is used to identify different GPU blocks.
rsmi_gpu_block_t
@brief This enum is used to identify different GPU blocks.
rsmi_init_flags_t
@brief Initialization flags
rsmi_memory_page_status_t
@brief Reserved Memory Page States
rsmi_memory_partition_type
@brief Memory Partitions. This enum is used to identify various memory partition types.
rsmi_memory_partition_type_t
@brief Memory Partitions. This enum is used to identify various memory partition types.
rsmi_memory_type_t
@brief Types of memory
rsmi_od_vddc_point
\cond Ignore in docs.
rsmi_od_volt_curve
\cond Ignore in docs.
rsmi_od_volt_freq_data
\cond Ignore in docs.
rsmi_pcie_bandwidth
\cond Ignore in docs.
rsmi_power_profile_preset_masks
@brief Pre-set Profile Selections. These bitmasks can be AND’d with the ::rsmi_power_profile_status_t.available_profiles returned from ::rsmi_dev_power_profile_presets_get to determine which power profiles are supported by the system.
rsmi_power_profile_preset_masks_t
@brief Pre-set Profile Selections. These bitmasks can be AND’d with the ::rsmi_power_profile_status_t.available_profiles returned from ::rsmi_dev_power_profile_presets_get to determine which power profiles are supported by the system.
rsmi_power_profile_status
\cond Ignore in docs.
rsmi_range
\cond Ignore in docs.
rsmi_ras_err_state_t
@brief The current ECC state
rsmi_status_t
@brief Error codes retured by rocm_smi_lib functions
rsmi_sw_component_t
@brief Software components
rsmi_temperature_metric
@brief Temperature Metrics. This enum is used to identify various temperature metrics. Corresponding values will be in millidegress Celcius.
rsmi_temperature_metric_t
@brief Temperature Metrics. This enum is used to identify various temperature metrics. Corresponding values will be in millidegress Celcius.
rsmi_temperature_type_t
@brief This enumeration is used to indicate from which part of the device a temperature reading should be obtained.
rsmi_version
\cond Ignore in docs.
rsmi_voltage_metric_t
@brief Voltage Metrics. This enum is used to identify various Volatge metrics. Corresponding values will be in millivolt.
rsmi_voltage_type_t
@brief This ennumeration is used to indicate which type of voltage reading should be obtained.
rsmi_xgmi_status_t
@brief XGMI Status
uint_fast8_t
uint_fast16_t
uint_fast32_t
uint_fast64_t
uint_least8_t
uint_least16_t
uint_least32_t
uint_least64_t
uintmax_t
wchar_t

Unions§

id
@brief This union holds the value of an ::rsmi_func_id_iter_handle_t. The value may be a function name, or an ennumerated variant value of types such as ::rsmi_memory_type_t, ::rsmi_temperature_metric_t, etc.
id__bindgen_ty_1
kfd_event_data__bindgen_ty_1