Merge pull request #1139 from NVIDIA/dependabot/go_modules/main/github.com/NVIDIA/go-nvml-0.12.9-0

Bump github.com/NVIDIA/go-nvml from 0.12.4-1 to 0.12.9-0
This commit is contained in:
Evan Lezar 2025-06-11 14:57:18 +02:00 committed by GitHub
commit 8339fb1ec3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
20 changed files with 9151 additions and 1850 deletions

2
go.mod
View File

@ -4,7 +4,7 @@ go 1.23.0
require (
github.com/NVIDIA/go-nvlib v0.7.2
github.com/NVIDIA/go-nvml v0.12.4-1
github.com/NVIDIA/go-nvml v0.12.9-0
github.com/cyphar/filepath-securejoin v0.4.1
github.com/moby/sys/reexec v0.1.0
github.com/moby/sys/symlink v0.3.0

4
go.sum
View File

@ -1,7 +1,7 @@
github.com/NVIDIA/go-nvlib v0.7.2 h1:7sy/NVUa4sM9FLKwH6CjBfHSWrJUmv8emVyxLTzjfOA=
github.com/NVIDIA/go-nvlib v0.7.2/go.mod h1:2Kh2kYSP5IJ8EKf0/SYDzHiQKb9EJkwOf2LQzu6pXzY=
github.com/NVIDIA/go-nvml v0.12.4-1 h1:WKUvqshhWSNTfm47ETRhv0A0zJyr1ncCuHiXwoTrBEc=
github.com/NVIDIA/go-nvml v0.12.4-1/go.mod h1:8Llmj+1Rr+9VGGwZuRer5N/aCjxGuR5nPb/9ebBiIEQ=
github.com/NVIDIA/go-nvml v0.12.9-0 h1:e344UK8ZkeMeeLkdQtRhmXRxNf+u532LDZPGMtkdus0=
github.com/NVIDIA/go-nvml v0.12.9-0/go.mod h1:+KNA7c7gIBH7SKSJ1ntlwkfN80zdx8ovl4hrK3LmPt4=
github.com/blang/semver/v4 v4.0.0 h1:1PFHFE6yCCTv8C1TeyNNarDzntLi7wMI5i/pzqYIsAM=
github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ=
github.com/cpuguy83/go-md2man/v2 v2.0.5 h1:ZtcqGrnekaHpVLArFSe4HK5DoKx1T0rq2DwVB0alcyc=

View File

@ -52,6 +52,10 @@ const (
MAX_PHYSICAL_BRIDGE = 128
// MAX_THERMAL_SENSORS_PER_GPU as defined in nvml/nvml.h
MAX_THERMAL_SENSORS_PER_GPU = 3
// DEVICE_UUID_ASCII_LEN as defined in nvml/nvml.h
DEVICE_UUID_ASCII_LEN = 41
// DEVICE_UUID_BINARY_LEN as defined in nvml/nvml.h
DEVICE_UUID_BINARY_LEN = 16
// FlagDefault as defined in nvml/nvml.h
FlagDefault = 0
// FlagForce as defined in nvml/nvml.h
@ -62,54 +66,8 @@ const (
DOUBLE_BIT_ECC = 0
// MAX_GPU_PERF_PSTATES as defined in nvml/nvml.h
MAX_GPU_PERF_PSTATES = 16
// GRID_LICENSE_EXPIRY_NOT_AVAILABLE as defined in nvml/nvml.h
GRID_LICENSE_EXPIRY_NOT_AVAILABLE = 0
// GRID_LICENSE_EXPIRY_INVALID as defined in nvml/nvml.h
GRID_LICENSE_EXPIRY_INVALID = 1
// GRID_LICENSE_EXPIRY_VALID as defined in nvml/nvml.h
GRID_LICENSE_EXPIRY_VALID = 2
// GRID_LICENSE_EXPIRY_NOT_APPLICABLE as defined in nvml/nvml.h
GRID_LICENSE_EXPIRY_NOT_APPLICABLE = 3
// GRID_LICENSE_EXPIRY_PERMANENT as defined in nvml/nvml.h
GRID_LICENSE_EXPIRY_PERMANENT = 4
// GRID_LICENSE_BUFFER_SIZE as defined in nvml/nvml.h
GRID_LICENSE_BUFFER_SIZE = 128
// VGPU_NAME_BUFFER_SIZE as defined in nvml/nvml.h
VGPU_NAME_BUFFER_SIZE = 64
// GRID_LICENSE_FEATURE_MAX_COUNT as defined in nvml/nvml.h
GRID_LICENSE_FEATURE_MAX_COUNT = 3
// INVALID_VGPU_PLACEMENT_ID as defined in nvml/nvml.h
INVALID_VGPU_PLACEMENT_ID = 65535
// VGPU_SCHEDULER_POLICY_UNKNOWN as defined in nvml/nvml.h
VGPU_SCHEDULER_POLICY_UNKNOWN = 0
// VGPU_SCHEDULER_POLICY_BEST_EFFORT as defined in nvml/nvml.h
VGPU_SCHEDULER_POLICY_BEST_EFFORT = 1
// VGPU_SCHEDULER_POLICY_EQUAL_SHARE as defined in nvml/nvml.h
VGPU_SCHEDULER_POLICY_EQUAL_SHARE = 2
// VGPU_SCHEDULER_POLICY_FIXED_SHARE as defined in nvml/nvml.h
VGPU_SCHEDULER_POLICY_FIXED_SHARE = 3
// SUPPORTED_VGPU_SCHEDULER_POLICY_COUNT as defined in nvml/nvml.h
SUPPORTED_VGPU_SCHEDULER_POLICY_COUNT = 3
// SCHEDULER_SW_MAX_LOG_ENTRIES as defined in nvml/nvml.h
SCHEDULER_SW_MAX_LOG_ENTRIES = 200
// VGPU_SCHEDULER_ARR_DEFAULT as defined in nvml/nvml.h
VGPU_SCHEDULER_ARR_DEFAULT = 0
// VGPU_SCHEDULER_ARR_DISABLE as defined in nvml/nvml.h
VGPU_SCHEDULER_ARR_DISABLE = 1
// VGPU_SCHEDULER_ARR_ENABLE as defined in nvml/nvml.h
VGPU_SCHEDULER_ARR_ENABLE = 2
// GRID_LICENSE_STATE_UNKNOWN as defined in nvml/nvml.h
GRID_LICENSE_STATE_UNKNOWN = 0
// GRID_LICENSE_STATE_UNINITIALIZED as defined in nvml/nvml.h
GRID_LICENSE_STATE_UNINITIALIZED = 1
// GRID_LICENSE_STATE_UNLICENSED_UNRESTRICTED as defined in nvml/nvml.h
GRID_LICENSE_STATE_UNLICENSED_UNRESTRICTED = 2
// GRID_LICENSE_STATE_UNLICENSED_RESTRICTED as defined in nvml/nvml.h
GRID_LICENSE_STATE_UNLICENSED_RESTRICTED = 3
// GRID_LICENSE_STATE_UNLICENSED as defined in nvml/nvml.h
GRID_LICENSE_STATE_UNLICENSED = 4
// GRID_LICENSE_STATE_LICENSED as defined in nvml/nvml.h
GRID_LICENSE_STATE_LICENSED = 5
// PERF_MODES_BUFFER_SIZE as defined in nvml/nvml.h
PERF_MODES_BUFFER_SIZE = 2048
// GSP_FIRMWARE_VERSION_BUF_SIZE as defined in nvml/nvml.h
GSP_FIRMWARE_VERSION_BUF_SIZE = 64
// DEVICE_ARCH_KEPLER as defined in nvml/nvml.h
@ -128,6 +86,10 @@ const (
DEVICE_ARCH_ADA = 8
// DEVICE_ARCH_HOPPER as defined in nvml/nvml.h
DEVICE_ARCH_HOPPER = 9
// DEVICE_ARCH_BLACKWELL as defined in nvml/nvml.h
DEVICE_ARCH_BLACKWELL = 10
// DEVICE_ARCH_T23X as defined in nvml/nvml.h
DEVICE_ARCH_T23X = 11
// DEVICE_ARCH_UNKNOWN as defined in nvml/nvml.h
DEVICE_ARCH_UNKNOWN = 4294967295
// BUS_TYPE_UNKNOWN as defined in nvml/nvml.h
@ -170,6 +132,82 @@ const (
ADAPTIVE_CLOCKING_INFO_STATUS_ENABLED = 1
// MAX_GPU_UTILIZATIONS as defined in nvml/nvml.h
MAX_GPU_UTILIZATIONS = 8
// PCIE_ATOMICS_CAP_FETCHADD32 as defined in nvml/nvml.h
PCIE_ATOMICS_CAP_FETCHADD32 = 1
// PCIE_ATOMICS_CAP_FETCHADD64 as defined in nvml/nvml.h
PCIE_ATOMICS_CAP_FETCHADD64 = 2
// PCIE_ATOMICS_CAP_SWAP32 as defined in nvml/nvml.h
PCIE_ATOMICS_CAP_SWAP32 = 4
// PCIE_ATOMICS_CAP_SWAP64 as defined in nvml/nvml.h
PCIE_ATOMICS_CAP_SWAP64 = 8
// PCIE_ATOMICS_CAP_CAS32 as defined in nvml/nvml.h
PCIE_ATOMICS_CAP_CAS32 = 16
// PCIE_ATOMICS_CAP_CAS64 as defined in nvml/nvml.h
PCIE_ATOMICS_CAP_CAS64 = 32
// PCIE_ATOMICS_CAP_CAS128 as defined in nvml/nvml.h
PCIE_ATOMICS_CAP_CAS128 = 64
// PCIE_ATOMICS_OPS_MAX as defined in nvml/nvml.h
PCIE_ATOMICS_OPS_MAX = 7
// POWER_SCOPE_GPU as defined in nvml/nvml.h
POWER_SCOPE_GPU = 0
// POWER_SCOPE_MODULE as defined in nvml/nvml.h
POWER_SCOPE_MODULE = 1
// POWER_SCOPE_MEMORY as defined in nvml/nvml.h
POWER_SCOPE_MEMORY = 2
// GRID_LICENSE_EXPIRY_NOT_AVAILABLE as defined in nvml/nvml.h
GRID_LICENSE_EXPIRY_NOT_AVAILABLE = 0
// GRID_LICENSE_EXPIRY_INVALID as defined in nvml/nvml.h
GRID_LICENSE_EXPIRY_INVALID = 1
// GRID_LICENSE_EXPIRY_VALID as defined in nvml/nvml.h
GRID_LICENSE_EXPIRY_VALID = 2
// GRID_LICENSE_EXPIRY_NOT_APPLICABLE as defined in nvml/nvml.h
GRID_LICENSE_EXPIRY_NOT_APPLICABLE = 3
// GRID_LICENSE_EXPIRY_PERMANENT as defined in nvml/nvml.h
GRID_LICENSE_EXPIRY_PERMANENT = 4
// GRID_LICENSE_BUFFER_SIZE as defined in nvml/nvml.h
GRID_LICENSE_BUFFER_SIZE = 128
// VGPU_NAME_BUFFER_SIZE as defined in nvml/nvml.h
VGPU_NAME_BUFFER_SIZE = 64
// GRID_LICENSE_FEATURE_MAX_COUNT as defined in nvml/nvml.h
GRID_LICENSE_FEATURE_MAX_COUNT = 3
// INVALID_VGPU_PLACEMENT_ID as defined in nvml/nvml.h
INVALID_VGPU_PLACEMENT_ID = 65535
// VGPU_PGPU_HETEROGENEOUS_MODE as defined in nvml/nvml.h
VGPU_PGPU_HETEROGENEOUS_MODE = 0
// VGPU_PGPU_HOMOGENEOUS_MODE as defined in nvml/nvml.h
VGPU_PGPU_HOMOGENEOUS_MODE = 1
// VGPU_SCHEDULER_POLICY_UNKNOWN as defined in nvml/nvml.h
VGPU_SCHEDULER_POLICY_UNKNOWN = 0
// VGPU_SCHEDULER_POLICY_BEST_EFFORT as defined in nvml/nvml.h
VGPU_SCHEDULER_POLICY_BEST_EFFORT = 1
// VGPU_SCHEDULER_POLICY_EQUAL_SHARE as defined in nvml/nvml.h
VGPU_SCHEDULER_POLICY_EQUAL_SHARE = 2
// VGPU_SCHEDULER_POLICY_FIXED_SHARE as defined in nvml/nvml.h
VGPU_SCHEDULER_POLICY_FIXED_SHARE = 3
// SUPPORTED_VGPU_SCHEDULER_POLICY_COUNT as defined in nvml/nvml.h
SUPPORTED_VGPU_SCHEDULER_POLICY_COUNT = 3
// SCHEDULER_SW_MAX_LOG_ENTRIES as defined in nvml/nvml.h
SCHEDULER_SW_MAX_LOG_ENTRIES = 200
// VGPU_SCHEDULER_ARR_DEFAULT as defined in nvml/nvml.h
VGPU_SCHEDULER_ARR_DEFAULT = 0
// VGPU_SCHEDULER_ARR_DISABLE as defined in nvml/nvml.h
VGPU_SCHEDULER_ARR_DISABLE = 1
// VGPU_SCHEDULER_ARR_ENABLE as defined in nvml/nvml.h
VGPU_SCHEDULER_ARR_ENABLE = 2
// VGPU_SCHEDULER_ENGINE_TYPE_GRAPHICS as defined in nvml/nvml.h
VGPU_SCHEDULER_ENGINE_TYPE_GRAPHICS = 1
// GRID_LICENSE_STATE_UNKNOWN as defined in nvml/nvml.h
GRID_LICENSE_STATE_UNKNOWN = 0
// GRID_LICENSE_STATE_UNINITIALIZED as defined in nvml/nvml.h
GRID_LICENSE_STATE_UNINITIALIZED = 1
// GRID_LICENSE_STATE_UNLICENSED_UNRESTRICTED as defined in nvml/nvml.h
GRID_LICENSE_STATE_UNLICENSED_UNRESTRICTED = 2
// GRID_LICENSE_STATE_UNLICENSED_RESTRICTED as defined in nvml/nvml.h
GRID_LICENSE_STATE_UNLICENSED_RESTRICTED = 3
// GRID_LICENSE_STATE_UNLICENSED as defined in nvml/nvml.h
GRID_LICENSE_STATE_UNLICENSED = 4
// GRID_LICENSE_STATE_LICENSED as defined in nvml/nvml.h
GRID_LICENSE_STATE_LICENSED = 5
// FI_DEV_ECC_CURRENT as defined in nvml/nvml.h
FI_DEV_ECC_CURRENT = 1
// FI_DEV_ECC_PENDING as defined in nvml/nvml.h
@ -562,10 +600,188 @@ const (
FI_DEV_TEMPERATURE_MEM_MAX_TLIMIT = 195
// FI_DEV_TEMPERATURE_GPU_MAX_TLIMIT as defined in nvml/nvml.h
FI_DEV_TEMPERATURE_GPU_MAX_TLIMIT = 196
// FI_DEV_PCIE_COUNT_TX_BYTES as defined in nvml/nvml.h
FI_DEV_PCIE_COUNT_TX_BYTES = 197
// FI_DEV_PCIE_COUNT_RX_BYTES as defined in nvml/nvml.h
FI_DEV_PCIE_COUNT_RX_BYTES = 198
// FI_DEV_IS_MIG_MODE_INDEPENDENT_MIG_QUERY_CAPABLE as defined in nvml/nvml.h
FI_DEV_IS_MIG_MODE_INDEPENDENT_MIG_QUERY_CAPABLE = 199
// FI_DEV_NVLINK_GET_POWER_THRESHOLD_MAX as defined in nvml/nvml.h
FI_DEV_NVLINK_GET_POWER_THRESHOLD_MAX = 200
// FI_DEV_NVLINK_COUNT_XMIT_PACKETS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_XMIT_PACKETS = 201
// FI_DEV_NVLINK_COUNT_XMIT_BYTES as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_XMIT_BYTES = 202
// FI_DEV_NVLINK_COUNT_RCV_PACKETS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_RCV_PACKETS = 203
// FI_DEV_NVLINK_COUNT_RCV_BYTES as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_RCV_BYTES = 204
// FI_DEV_NVLINK_COUNT_VL15_DROPPED as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_VL15_DROPPED = 205
// FI_DEV_NVLINK_COUNT_MALFORMED_PACKET_ERRORS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_MALFORMED_PACKET_ERRORS = 206
// FI_DEV_NVLINK_COUNT_BUFFER_OVERRUN_ERRORS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_BUFFER_OVERRUN_ERRORS = 207
// FI_DEV_NVLINK_COUNT_RCV_ERRORS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_RCV_ERRORS = 208
// FI_DEV_NVLINK_COUNT_RCV_REMOTE_ERRORS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_RCV_REMOTE_ERRORS = 209
// FI_DEV_NVLINK_COUNT_RCV_GENERAL_ERRORS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_RCV_GENERAL_ERRORS = 210
// FI_DEV_NVLINK_COUNT_LOCAL_LINK_INTEGRITY_ERRORS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_LOCAL_LINK_INTEGRITY_ERRORS = 211
// FI_DEV_NVLINK_COUNT_XMIT_DISCARDS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_XMIT_DISCARDS = 212
// FI_DEV_NVLINK_COUNT_LINK_RECOVERY_SUCCESSFUL_EVENTS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_LINK_RECOVERY_SUCCESSFUL_EVENTS = 213
// FI_DEV_NVLINK_COUNT_LINK_RECOVERY_FAILED_EVENTS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_LINK_RECOVERY_FAILED_EVENTS = 214
// FI_DEV_NVLINK_COUNT_LINK_RECOVERY_EVENTS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_LINK_RECOVERY_EVENTS = 215
// FI_DEV_NVLINK_COUNT_RAW_BER_LANE0 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_RAW_BER_LANE0 = 216
// FI_DEV_NVLINK_COUNT_RAW_BER_LANE1 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_RAW_BER_LANE1 = 217
// FI_DEV_NVLINK_COUNT_RAW_BER as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_RAW_BER = 218
// FI_DEV_NVLINK_COUNT_EFFECTIVE_ERRORS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_EFFECTIVE_ERRORS = 219
// FI_DEV_NVLINK_COUNT_EFFECTIVE_BER as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_EFFECTIVE_BER = 220
// FI_DEV_NVLINK_COUNT_SYMBOL_ERRORS as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_SYMBOL_ERRORS = 221
// FI_DEV_NVLINK_COUNT_SYMBOL_BER as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_SYMBOL_BER = 222
// FI_DEV_NVLINK_GET_POWER_THRESHOLD_MIN as defined in nvml/nvml.h
FI_DEV_NVLINK_GET_POWER_THRESHOLD_MIN = 223
// FI_DEV_NVLINK_GET_POWER_THRESHOLD_UNITS as defined in nvml/nvml.h
FI_DEV_NVLINK_GET_POWER_THRESHOLD_UNITS = 224
// FI_DEV_NVLINK_GET_POWER_THRESHOLD_SUPPORTED as defined in nvml/nvml.h
FI_DEV_NVLINK_GET_POWER_THRESHOLD_SUPPORTED = 225
// FI_DEV_RESET_STATUS as defined in nvml/nvml.h
FI_DEV_RESET_STATUS = 226
// FI_DEV_DRAIN_AND_RESET_STATUS as defined in nvml/nvml.h
FI_DEV_DRAIN_AND_RESET_STATUS = 227
// FI_DEV_PCIE_OUTBOUND_ATOMICS_MASK as defined in nvml/nvml.h
FI_DEV_PCIE_OUTBOUND_ATOMICS_MASK = 228
// FI_DEV_PCIE_INBOUND_ATOMICS_MASK as defined in nvml/nvml.h
FI_DEV_PCIE_INBOUND_ATOMICS_MASK = 229
// FI_DEV_GET_GPU_RECOVERY_ACTION as defined in nvml/nvml.h
FI_DEV_GET_GPU_RECOVERY_ACTION = 230
// FI_DEV_C2C_LINK_ERROR_INTR as defined in nvml/nvml.h
FI_DEV_C2C_LINK_ERROR_INTR = 231
// FI_DEV_C2C_LINK_ERROR_REPLAY as defined in nvml/nvml.h
FI_DEV_C2C_LINK_ERROR_REPLAY = 232
// FI_DEV_C2C_LINK_ERROR_REPLAY_B2B as defined in nvml/nvml.h
FI_DEV_C2C_LINK_ERROR_REPLAY_B2B = 233
// FI_DEV_C2C_LINK_POWER_STATE as defined in nvml/nvml.h
FI_DEV_C2C_LINK_POWER_STATE = 234
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_0 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_0 = 235
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_1 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_1 = 236
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_2 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_2 = 237
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_3 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_3 = 238
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_4 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_4 = 239
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_5 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_5 = 240
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_6 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_6 = 241
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_7 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_7 = 242
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_8 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_8 = 243
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_9 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_9 = 244
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_10 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_10 = 245
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_11 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_11 = 246
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_12 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_12 = 247
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_13 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_13 = 248
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_14 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_14 = 249
// FI_DEV_NVLINK_COUNT_FEC_HISTORY_15 as defined in nvml/nvml.h
FI_DEV_NVLINK_COUNT_FEC_HISTORY_15 = 250
// FI_DEV_CLOCKS_EVENT_REASON_SW_POWER_CAP as defined in nvml/nvml.h
FI_DEV_CLOCKS_EVENT_REASON_SW_POWER_CAP = 74
// FI_DEV_CLOCKS_EVENT_REASON_SYNC_BOOST as defined in nvml/nvml.h
FI_DEV_CLOCKS_EVENT_REASON_SYNC_BOOST = 76
// FI_DEV_CLOCKS_EVENT_REASON_SW_THERM_SLOWDOWN as defined in nvml/nvml.h
FI_DEV_CLOCKS_EVENT_REASON_SW_THERM_SLOWDOWN = 251
// FI_DEV_CLOCKS_EVENT_REASON_HW_THERM_SLOWDOWN as defined in nvml/nvml.h
FI_DEV_CLOCKS_EVENT_REASON_HW_THERM_SLOWDOWN = 252
// FI_DEV_CLOCKS_EVENT_REASON_HW_POWER_BRAKE_SLOWDOWN as defined in nvml/nvml.h
FI_DEV_CLOCKS_EVENT_REASON_HW_POWER_BRAKE_SLOWDOWN = 253
// FI_DEV_POWER_SYNC_BALANCING_FREQ as defined in nvml/nvml.h
FI_DEV_POWER_SYNC_BALANCING_FREQ = 254
// FI_DEV_POWER_SYNC_BALANCING_AF as defined in nvml/nvml.h
FI_DEV_POWER_SYNC_BALANCING_AF = 255
// FI_PWR_SMOOTHING_ENABLED as defined in nvml/nvml.h
FI_PWR_SMOOTHING_ENABLED = 256
// FI_PWR_SMOOTHING_PRIV_LVL as defined in nvml/nvml.h
FI_PWR_SMOOTHING_PRIV_LVL = 257
// FI_PWR_SMOOTHING_IMM_RAMP_DOWN_ENABLED as defined in nvml/nvml.h
FI_PWR_SMOOTHING_IMM_RAMP_DOWN_ENABLED = 258
// FI_PWR_SMOOTHING_APPLIED_TMP_CEIL as defined in nvml/nvml.h
FI_PWR_SMOOTHING_APPLIED_TMP_CEIL = 259
// FI_PWR_SMOOTHING_APPLIED_TMP_FLOOR as defined in nvml/nvml.h
FI_PWR_SMOOTHING_APPLIED_TMP_FLOOR = 260
// FI_PWR_SMOOTHING_MAX_PERCENT_TMP_FLOOR_SETTING as defined in nvml/nvml.h
FI_PWR_SMOOTHING_MAX_PERCENT_TMP_FLOOR_SETTING = 261
// FI_PWR_SMOOTHING_MIN_PERCENT_TMP_FLOOR_SETTING as defined in nvml/nvml.h
FI_PWR_SMOOTHING_MIN_PERCENT_TMP_FLOOR_SETTING = 262
// FI_PWR_SMOOTHING_HW_CIRCUITRY_PERCENT_LIFETIME_REMAINING as defined in nvml/nvml.h
FI_PWR_SMOOTHING_HW_CIRCUITRY_PERCENT_LIFETIME_REMAINING = 263
// FI_PWR_SMOOTHING_MAX_NUM_PRESET_PROFILES as defined in nvml/nvml.h
FI_PWR_SMOOTHING_MAX_NUM_PRESET_PROFILES = 264
// FI_PWR_SMOOTHING_PROFILE_PERCENT_TMP_FLOOR as defined in nvml/nvml.h
FI_PWR_SMOOTHING_PROFILE_PERCENT_TMP_FLOOR = 265
// FI_PWR_SMOOTHING_PROFILE_RAMP_UP_RATE as defined in nvml/nvml.h
FI_PWR_SMOOTHING_PROFILE_RAMP_UP_RATE = 266
// FI_PWR_SMOOTHING_PROFILE_RAMP_DOWN_RATE as defined in nvml/nvml.h
FI_PWR_SMOOTHING_PROFILE_RAMP_DOWN_RATE = 267
// FI_PWR_SMOOTHING_PROFILE_RAMP_DOWN_HYST_VAL as defined in nvml/nvml.h
FI_PWR_SMOOTHING_PROFILE_RAMP_DOWN_HYST_VAL = 268
// FI_PWR_SMOOTHING_ACTIVE_PRESET_PROFILE as defined in nvml/nvml.h
FI_PWR_SMOOTHING_ACTIVE_PRESET_PROFILE = 269
// FI_PWR_SMOOTHING_ADMIN_OVERRIDE_PERCENT_TMP_FLOOR as defined in nvml/nvml.h
FI_PWR_SMOOTHING_ADMIN_OVERRIDE_PERCENT_TMP_FLOOR = 270
// FI_PWR_SMOOTHING_ADMIN_OVERRIDE_RAMP_UP_RATE as defined in nvml/nvml.h
FI_PWR_SMOOTHING_ADMIN_OVERRIDE_RAMP_UP_RATE = 271
// FI_PWR_SMOOTHING_ADMIN_OVERRIDE_RAMP_DOWN_RATE as defined in nvml/nvml.h
FI_PWR_SMOOTHING_ADMIN_OVERRIDE_RAMP_DOWN_RATE = 272
// FI_PWR_SMOOTHING_ADMIN_OVERRIDE_RAMP_DOWN_HYST_VAL as defined in nvml/nvml.h
FI_PWR_SMOOTHING_ADMIN_OVERRIDE_RAMP_DOWN_HYST_VAL = 273
// FI_MAX as defined in nvml/nvml.h
FI_MAX = 200
FI_MAX = 274
// NVLINK_LOW_POWER_THRESHOLD_UNIT_100US as defined in nvml/nvml.h
NVLINK_LOW_POWER_THRESHOLD_UNIT_100US = 0
// NVLINK_LOW_POWER_THRESHOLD_UNIT_50US as defined in nvml/nvml.h
NVLINK_LOW_POWER_THRESHOLD_UNIT_50US = 1
// NVLINK_POWER_STATE_HIGH_SPEED as defined in nvml/nvml.h
NVLINK_POWER_STATE_HIGH_SPEED = 0
// NVLINK_POWER_STATE_LOW as defined in nvml/nvml.h
NVLINK_POWER_STATE_LOW = 1
// NVLINK_LOW_POWER_THRESHOLD_MIN as defined in nvml/nvml.h
NVLINK_LOW_POWER_THRESHOLD_MIN = 1
// NVLINK_LOW_POWER_THRESHOLD_MAX as defined in nvml/nvml.h
NVLINK_LOW_POWER_THRESHOLD_MAX = 8191
// NVLINK_LOW_POWER_THRESHOLD_RESET as defined in nvml/nvml.h
NVLINK_LOW_POWER_THRESHOLD_RESET = 4294967295
// NVLINK_LOW_POWER_THRESHOLD_DEFAULT as defined in nvml/nvml.h
NVLINK_LOW_POWER_THRESHOLD_DEFAULT = 4294967295
// C2C_POWER_STATE_FULL_POWER as defined in nvml/nvml.h
C2C_POWER_STATE_FULL_POWER = 0
// C2C_POWER_STATE_LOW_POWER as defined in nvml/nvml.h
C2C_POWER_STATE_LOW_POWER = 1
// EventTypeNone as defined in nvml/nvml.h
EventTypeNone = 0
// EventTypeSingleBitEccError as defined in nvml/nvml.h
EventTypeSingleBitEccError = 1
// EventTypeDoubleBitEccError as defined in nvml/nvml.h
@ -580,10 +796,28 @@ const (
EventTypePowerSourceChange = 128
// EventMigConfigChange as defined in nvml/nvml.h
EventMigConfigChange = 256
// EventTypeNone as defined in nvml/nvml.h
EventTypeNone = 0
// EventTypeSingleBitEccErrorStorm as defined in nvml/nvml.h
EventTypeSingleBitEccErrorStorm = 512
// EventTypeDramRetirementEvent as defined in nvml/nvml.h
EventTypeDramRetirementEvent = 1024
// EventTypeDramRetirementFailure as defined in nvml/nvml.h
EventTypeDramRetirementFailure = 2048
// EventTypeNonFatalPoisonError as defined in nvml/nvml.h
EventTypeNonFatalPoisonError = 4096
// EventTypeFatalPoisonError as defined in nvml/nvml.h
EventTypeFatalPoisonError = 8192
// EventTypeGpuUnavailableError as defined in nvml/nvml.h
EventTypeGpuUnavailableError = 16384
// EventTypeGpuRecoveryAction as defined in nvml/nvml.h
EventTypeGpuRecoveryAction = 32768
// EventTypeAll as defined in nvml/nvml.h
EventTypeAll = 415
EventTypeAll = 65439
// SystemEventTypeGpuDriverUnbind as defined in nvml/nvml.h
SystemEventTypeGpuDriverUnbind = 1
// SystemEventTypeGpuDriverBind as defined in nvml/nvml.h
SystemEventTypeGpuDriverBind = 2
// SystemEventTypeCount as defined in nvml/nvml.h
SystemEventTypeCount = 2
// ClocksEventReasonGpuIdle as defined in nvml/nvml.h
ClocksEventReasonGpuIdle = 1
// ClocksEventReasonApplicationsClocksSetting as defined in nvml/nvml.h
@ -640,6 +874,10 @@ const (
CC_SYSTEM_CPU_CAPS_AMD_SEV = 1
// CC_SYSTEM_CPU_CAPS_INTEL_TDX as defined in nvml/nvml.h
CC_SYSTEM_CPU_CAPS_INTEL_TDX = 2
// CC_SYSTEM_CPU_CAPS_AMD_SEV_SNP as defined in nvml/nvml.h
CC_SYSTEM_CPU_CAPS_AMD_SEV_SNP = 3
// CC_SYSTEM_CPU_CAPS_AMD_SNP_VTOM as defined in nvml/nvml.h
CC_SYSTEM_CPU_CAPS_AMD_SNP_VTOM = 4
// CC_SYSTEM_GPUS_CC_NOT_CAPABLE as defined in nvml/nvml.h
CC_SYSTEM_GPUS_CC_NOT_CAPABLE = 0
// CC_SYSTEM_GPUS_CC_CAPABLE as defined in nvml/nvml.h
@ -683,7 +921,7 @@ const (
// CC_KEY_ROTATION_THRESHOLD_ATTACKER_ADVANTAGE_MIN as defined in nvml/nvml.h
CC_KEY_ROTATION_THRESHOLD_ATTACKER_ADVANTAGE_MIN = 50
// CC_KEY_ROTATION_THRESHOLD_ATTACKER_ADVANTAGE_MAX as defined in nvml/nvml.h
CC_KEY_ROTATION_THRESHOLD_ATTACKER_ADVANTAGE_MAX = 75
CC_KEY_ROTATION_THRESHOLD_ATTACKER_ADVANTAGE_MAX = 65
// GPU_FABRIC_UUID_LEN as defined in nvml/nvml.h
GPU_FABRIC_UUID_LEN = 16
// GPU_FABRIC_STATE_NOT_SUPPORTED as defined in nvml/nvml.h
@ -703,13 +941,37 @@ const (
// GPU_FABRIC_HEALTH_MASK_SHIFT_DEGRADED_BW as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_SHIFT_DEGRADED_BW = 0
// GPU_FABRIC_HEALTH_MASK_WIDTH_DEGRADED_BW as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_WIDTH_DEGRADED_BW = 17
// POWER_SCOPE_GPU as defined in nvml/nvml.h
POWER_SCOPE_GPU = 0
// POWER_SCOPE_MODULE as defined in nvml/nvml.h
POWER_SCOPE_MODULE = 1
// POWER_SCOPE_MEMORY as defined in nvml/nvml.h
POWER_SCOPE_MEMORY = 2
GPU_FABRIC_HEALTH_MASK_WIDTH_DEGRADED_BW = 3
// GPU_FABRIC_HEALTH_MASK_ROUTE_RECOVERY_NOT_SUPPORTED as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_ROUTE_RECOVERY_NOT_SUPPORTED = 0
// GPU_FABRIC_HEALTH_MASK_ROUTE_RECOVERY_TRUE as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_ROUTE_RECOVERY_TRUE = 1
// GPU_FABRIC_HEALTH_MASK_ROUTE_RECOVERY_FALSE as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_ROUTE_RECOVERY_FALSE = 2
// GPU_FABRIC_HEALTH_MASK_SHIFT_ROUTE_RECOVERY as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_SHIFT_ROUTE_RECOVERY = 2
// GPU_FABRIC_HEALTH_MASK_WIDTH_ROUTE_RECOVERY as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_WIDTH_ROUTE_RECOVERY = 3
// GPU_FABRIC_HEALTH_MASK_ROUTE_UNHEALTHY_NOT_SUPPORTED as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_ROUTE_UNHEALTHY_NOT_SUPPORTED = 0
// GPU_FABRIC_HEALTH_MASK_ROUTE_UNHEALTHY_TRUE as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_ROUTE_UNHEALTHY_TRUE = 1
// GPU_FABRIC_HEALTH_MASK_ROUTE_UNHEALTHY_FALSE as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_ROUTE_UNHEALTHY_FALSE = 2
// GPU_FABRIC_HEALTH_MASK_SHIFT_ROUTE_UNHEALTHY as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_SHIFT_ROUTE_UNHEALTHY = 4
// GPU_FABRIC_HEALTH_MASK_WIDTH_ROUTE_UNHEALTHY as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_WIDTH_ROUTE_UNHEALTHY = 3
// GPU_FABRIC_HEALTH_MASK_ACCESS_TIMEOUT_RECOVERY_NOT_SUPPORTED as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_ACCESS_TIMEOUT_RECOVERY_NOT_SUPPORTED = 0
// GPU_FABRIC_HEALTH_MASK_ACCESS_TIMEOUT_RECOVERY_TRUE as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_ACCESS_TIMEOUT_RECOVERY_TRUE = 1
// GPU_FABRIC_HEALTH_MASK_ACCESS_TIMEOUT_RECOVERY_FALSE as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_ACCESS_TIMEOUT_RECOVERY_FALSE = 2
// GPU_FABRIC_HEALTH_MASK_SHIFT_ACCESS_TIMEOUT_RECOVERY as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_SHIFT_ACCESS_TIMEOUT_RECOVERY = 6
// GPU_FABRIC_HEALTH_MASK_WIDTH_ACCESS_TIMEOUT_RECOVERY as defined in nvml/nvml.h
GPU_FABRIC_HEALTH_MASK_WIDTH_ACCESS_TIMEOUT_RECOVERY = 3
// INIT_FLAG_NO_GPUS as defined in nvml/nvml.h
INIT_FLAG_NO_GPUS = 1
// INIT_FLAG_NO_ATTACH as defined in nvml/nvml.h
@ -738,6 +1000,22 @@ const (
AFFINITY_SCOPE_NODE = 0
// AFFINITY_SCOPE_SOCKET as defined in nvml/nvml.h
AFFINITY_SCOPE_SOCKET = 1
// NVLINK_BER_MANTISSA_SHIFT as defined in nvml/nvml.h
NVLINK_BER_MANTISSA_SHIFT = 8
// NVLINK_BER_MANTISSA_WIDTH as defined in nvml/nvml.h
NVLINK_BER_MANTISSA_WIDTH = 15
// NVLINK_BER_EXP_SHIFT as defined in nvml/nvml.h
NVLINK_BER_EXP_SHIFT = 0
// NVLINK_BER_EXP_WIDTH as defined in nvml/nvml.h
NVLINK_BER_EXP_WIDTH = 255
// NVLINK_STATE_INACTIVE as defined in nvml/nvml.h
NVLINK_STATE_INACTIVE = 0
// NVLINK_STATE_ACTIVE as defined in nvml/nvml.h
NVLINK_STATE_ACTIVE = 1
// NVLINK_STATE_SLEEP as defined in nvml/nvml.h
NVLINK_STATE_SLEEP = 2
// NVLINK_TOTAL_SUPPORTED_BW_MODES as defined in nvml/nvml.h
NVLINK_TOTAL_SUPPORTED_BW_MODES = 23
// DEVICE_MIG_DISABLE as defined in nvml/nvml.h
DEVICE_MIG_DISABLE = 0
// DEVICE_MIG_ENABLE as defined in nvml/nvml.h
@ -762,10 +1040,30 @@ const (
GPU_INSTANCE_PROFILE_2_SLICE_REV1 = 8
// GPU_INSTANCE_PROFILE_1_SLICE_REV2 as defined in nvml/nvml.h
GPU_INSTANCE_PROFILE_1_SLICE_REV2 = 9
// GPU_INSTANCE_PROFILE_1_SLICE_GFX as defined in nvml/nvml.h
GPU_INSTANCE_PROFILE_1_SLICE_GFX = 10
// GPU_INSTANCE_PROFILE_2_SLICE_GFX as defined in nvml/nvml.h
GPU_INSTANCE_PROFILE_2_SLICE_GFX = 11
// GPU_INSTANCE_PROFILE_4_SLICE_GFX as defined in nvml/nvml.h
GPU_INSTANCE_PROFILE_4_SLICE_GFX = 12
// GPU_INSTANCE_PROFILE_1_SLICE_NO_ME as defined in nvml/nvml.h
GPU_INSTANCE_PROFILE_1_SLICE_NO_ME = 13
// GPU_INSTANCE_PROFILE_2_SLICE_NO_ME as defined in nvml/nvml.h
GPU_INSTANCE_PROFILE_2_SLICE_NO_ME = 14
// GPU_INSTANCE_PROFILE_1_SLICE_ALL_ME as defined in nvml/nvml.h
GPU_INSTANCE_PROFILE_1_SLICE_ALL_ME = 15
// GPU_INSTANCE_PROFILE_2_SLICE_ALL_ME as defined in nvml/nvml.h
GPU_INSTANCE_PROFILE_2_SLICE_ALL_ME = 16
// GPU_INSTANCE_PROFILE_COUNT as defined in nvml/nvml.h
GPU_INSTANCE_PROFILE_COUNT = 10
GPU_INSTANCE_PROFILE_COUNT = 17
// GPU_INSTANCE_PROFILE_CAPS_P2P as defined in nvml/nvml.h
GPU_INSTANCE_PROFILE_CAPS_P2P = 1
// GPU_INTSTANCE_PROFILE_CAPS_P2P as defined in nvml/nvml.h
GPU_INTSTANCE_PROFILE_CAPS_P2P = 1
// GPU_INSTANCE_PROFILE_CAPS_GFX as defined in nvml/nvml.h
GPU_INSTANCE_PROFILE_CAPS_GFX = 2
// COMPUTE_INSTANCE_PROFILE_CAPS_GFX as defined in nvml/nvml.h
COMPUTE_INSTANCE_PROFILE_CAPS_GFX = 1
// COMPUTE_INSTANCE_PROFILE_1_SLICE as defined in nvml/nvml.h
COMPUTE_INSTANCE_PROFILE_1_SLICE = 0
// COMPUTE_INSTANCE_PROFILE_2_SLICE as defined in nvml/nvml.h
@ -792,16 +1090,24 @@ const (
GPM_METRICS_GET_VERSION = 1
// GPM_SUPPORT_VERSION as defined in nvml/nvml.h
GPM_SUPPORT_VERSION = 1
// NVLINK_POWER_STATE_HIGH_SPEED as defined in nvml/nvml.h
NVLINK_POWER_STATE_HIGH_SPEED = 0
// NVLINK_POWER_STATE_LOW as defined in nvml/nvml.h
NVLINK_POWER_STATE_LOW = 1
// NVLINK_LOW_POWER_THRESHOLD_MIN as defined in nvml/nvml.h
NVLINK_LOW_POWER_THRESHOLD_MIN = 1
// NVLINK_LOW_POWER_THRESHOLD_MAX as defined in nvml/nvml.h
NVLINK_LOW_POWER_THRESHOLD_MAX = 8191
// NVLINK_LOW_POWER_THRESHOLD_RESET as defined in nvml/nvml.h
NVLINK_LOW_POWER_THRESHOLD_RESET = 4294967295
// DEV_CAP_EGM as defined in nvml/nvml.h
DEV_CAP_EGM = 1
// WORKLOAD_POWER_MAX_PROFILES as defined in nvml/nvml.h
WORKLOAD_POWER_MAX_PROFILES = 255
// POWER_SMOOTHING_MAX_NUM_PROFILES as defined in nvml/nvml.h
POWER_SMOOTHING_MAX_NUM_PROFILES = 5
// POWER_SMOOTHING_NUM_PROFILE_PARAMS as defined in nvml/nvml.h
POWER_SMOOTHING_NUM_PROFILE_PARAMS = 4
// POWER_SMOOTHING_ADMIN_OVERRIDE_NOT_SET as defined in nvml/nvml.h
POWER_SMOOTHING_ADMIN_OVERRIDE_NOT_SET = 4294967295
// POWER_SMOOTHING_PROFILE_PARAM_PERCENT_TMP_FLOOR as defined in nvml/nvml.h
POWER_SMOOTHING_PROFILE_PARAM_PERCENT_TMP_FLOOR = 0
// POWER_SMOOTHING_PROFILE_PARAM_RAMP_UP_RATE as defined in nvml/nvml.h
POWER_SMOOTHING_PROFILE_PARAM_RAMP_UP_RATE = 1
// POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_RATE as defined in nvml/nvml.h
POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_RATE = 2
// POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_HYSTERESIS as defined in nvml/nvml.h
POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_HYSTERESIS = 3
)
// BridgeChipType as declared in nvml/nvml.h
@ -960,7 +1266,8 @@ const (
VALUE_TYPE_UNSIGNED_LONG_LONG ValueType = 3
VALUE_TYPE_SIGNED_LONG_LONG ValueType = 4
VALUE_TYPE_SIGNED_INT ValueType = 5
VALUE_TYPE_COUNT ValueType = 6
VALUE_TYPE_UNSIGNED_SHORT ValueType = 6
VALUE_TYPE_COUNT ValueType = 7
)
// PerfPolicyType as declared in nvml/nvml.h
@ -979,6 +1286,29 @@ const (
PERF_POLICY_COUNT PerfPolicyType = 12
)
// CoolerControl as declared in nvml/nvml.h
type CoolerControl int32
// CoolerControl enumeration from nvml/nvml.h
const (
THERMAL_COOLER_SIGNAL_NONE CoolerControl = iota
THERMAL_COOLER_SIGNAL_TOGGLE CoolerControl = 1
THERMAL_COOLER_SIGNAL_VARIABLE CoolerControl = 2
THERMAL_COOLER_SIGNAL_COUNT CoolerControl = 3
)
// CoolerTarget as declared in nvml/nvml.h
type CoolerTarget int32
// CoolerTarget enumeration from nvml/nvml.h
const (
THERMAL_COOLER_TARGET_NONE CoolerTarget = 1
THERMAL_COOLER_TARGET_GPU CoolerTarget = 2
THERMAL_COOLER_TARGET_MEMORY CoolerTarget = 4
THERMAL_COOLER_TARGET_POWER_SUPPLY CoolerTarget = 8
THERMAL_COOLER_TARGET_GPU_RELATED CoolerTarget = 14
)
// EnableState as declared in nvml/nvml.h
type EnableState int32
@ -1026,7 +1356,8 @@ const (
TEMPERATURE_THRESHOLD_ACOUSTIC_MIN TemperatureThresholds = 4
TEMPERATURE_THRESHOLD_ACOUSTIC_CURR TemperatureThresholds = 5
TEMPERATURE_THRESHOLD_ACOUSTIC_MAX TemperatureThresholds = 6
TEMPERATURE_THRESHOLD_COUNT TemperatureThresholds = 7
TEMPERATURE_THRESHOLD_GPS_CURR TemperatureThresholds = 7
TEMPERATURE_THRESHOLD_COUNT TemperatureThresholds = 8
)
// TemperatureSensors as declared in nvml/nvml.h
@ -1060,6 +1391,21 @@ const (
MEMORY_ERROR_TYPE_COUNT MemoryErrorType = 2
)
// NvlinkVersion as declared in nvml/nvml.h
type NvlinkVersion int32
// NvlinkVersion enumeration from nvml/nvml.h
const (
NVLINK_VERSION_INVALID NvlinkVersion = iota
NVLINK_VERSION_1_0 NvlinkVersion = 1
NVLINK_VERSION_2_0 NvlinkVersion = 2
NVLINK_VERSION_2_2 NvlinkVersion = 3
NVLINK_VERSION_3_0 NvlinkVersion = 4
NVLINK_VERSION_3_1 NvlinkVersion = 5
NVLINK_VERSION_4_0 NvlinkVersion = 6
NVLINK_VERSION_5_0 NvlinkVersion = 7
)
// EccCounterType as declared in nvml/nvml.h
type EccCounterType int32
@ -1101,6 +1447,7 @@ type DriverModel int32
const (
DRIVER_WDDM DriverModel = iota
DRIVER_WDM DriverModel = 1
DRIVER_MCDM DriverModel = 2
)
// Pstates as declared in nvml/nvml.h
@ -1145,7 +1492,8 @@ const (
INFOROM_OEM InforomObject = iota
INFOROM_ECC InforomObject = 1
INFOROM_POWER InforomObject = 2
INFOROM_COUNT InforomObject = 3
INFOROM_DEN InforomObject = 3
INFOROM_COUNT InforomObject = 4
)
// Return as declared in nvml/nvml.h
@ -1223,6 +1571,17 @@ const (
RESTRICTED_API_COUNT RestrictedAPI = 2
)
// GpuUtilizationDomainId as declared in nvml/nvml.h
type GpuUtilizationDomainId int32
// GpuUtilizationDomainId enumeration from nvml/nvml.h
const (
GPU_UTILIZATION_DOMAIN_GPU GpuUtilizationDomainId = iota
GPU_UTILIZATION_DOMAIN_FB GpuUtilizationDomainId = 1
GPU_UTILIZATION_DOMAIN_VID GpuUtilizationDomainId = 2
GPU_UTILIZATION_DOMAIN_BUS GpuUtilizationDomainId = 3
)
// GpuVirtualizationMode as declared in nvml/nvml.h
type GpuVirtualizationMode int32
@ -1281,7 +1640,8 @@ type VgpuDriverCapability int32
// VgpuDriverCapability enumeration from nvml/nvml.h
const (
VGPU_DRIVER_CAP_HETEROGENEOUS_MULTI_VGPU VgpuDriverCapability = iota
VGPU_DRIVER_CAP_COUNT VgpuDriverCapability = 1
VGPU_DRIVER_CAP_WARM_UPDATE VgpuDriverCapability = 1
VGPU_DRIVER_CAP_COUNT VgpuDriverCapability = 2
)
// DeviceVgpuCapability as declared in nvml/nvml.h
@ -1297,18 +1657,23 @@ const (
DEVICE_VGPU_CAP_DEVICE_STREAMING DeviceVgpuCapability = 5
DEVICE_VGPU_CAP_MINI_QUARTER_GPU DeviceVgpuCapability = 6
DEVICE_VGPU_CAP_COMPUTE_MEDIA_ENGINE_GPU DeviceVgpuCapability = 7
DEVICE_VGPU_CAP_COUNT DeviceVgpuCapability = 8
DEVICE_VGPU_CAP_WARM_UPDATE DeviceVgpuCapability = 8
DEVICE_VGPU_CAP_HOMOGENEOUS_PLACEMENTS DeviceVgpuCapability = 9
DEVICE_VGPU_CAP_MIG_TIMESLICING_SUPPORTED DeviceVgpuCapability = 10
DEVICE_VGPU_CAP_MIG_TIMESLICING_ENABLED DeviceVgpuCapability = 11
DEVICE_VGPU_CAP_COUNT DeviceVgpuCapability = 12
)
// GpuUtilizationDomainId as declared in nvml/nvml.h
type GpuUtilizationDomainId int32
// DeviceGpuRecoveryAction as declared in nvml/nvml.h
type DeviceGpuRecoveryAction int32
// GpuUtilizationDomainId enumeration from nvml/nvml.h
// DeviceGpuRecoveryAction enumeration from nvml/nvml.h
const (
GPU_UTILIZATION_DOMAIN_GPU GpuUtilizationDomainId = iota
GPU_UTILIZATION_DOMAIN_FB GpuUtilizationDomainId = 1
GPU_UTILIZATION_DOMAIN_VID GpuUtilizationDomainId = 2
GPU_UTILIZATION_DOMAIN_BUS GpuUtilizationDomainId = 3
GPU_RECOVERY_ACTION_NONE DeviceGpuRecoveryAction = iota
GPU_RECOVERY_ACTION_GPU_RESET DeviceGpuRecoveryAction = 1
GPU_RECOVERY_ACTION_NODE_REBOOT DeviceGpuRecoveryAction = 2
GPU_RECOVERY_ACTION_DRAIN_P2P DeviceGpuRecoveryAction = 3
GPU_RECOVERY_ACTION_DRAIN_AND_RESET DeviceGpuRecoveryAction = 4
)
// FanState as declared in nvml/nvml.h
@ -1447,6 +1812,16 @@ const (
THERMAL_CONTROLLER_UNKNOWN ThermalController = -1
)
// UUIDType as declared in nvml/nvml.h
type UUIDType int32
// UUIDType enumeration from nvml/nvml.h
const (
UUID_TYPE_NONE UUIDType = iota
UUID_TYPE_ASCII UUIDType = 1
UUID_TYPE_BINARY UUIDType = 2
)
// GridLicenseFeatureCode as declared in nvml/nvml.h
type GridLicenseFeatureCode int32
@ -1465,74 +1840,208 @@ type GpmMetricId int32
// GpmMetricId enumeration from nvml/nvml.h
const (
GPM_METRIC_GRAPHICS_UTIL GpmMetricId = 1
GPM_METRIC_SM_UTIL GpmMetricId = 2
GPM_METRIC_SM_OCCUPANCY GpmMetricId = 3
GPM_METRIC_INTEGER_UTIL GpmMetricId = 4
GPM_METRIC_ANY_TENSOR_UTIL GpmMetricId = 5
GPM_METRIC_DFMA_TENSOR_UTIL GpmMetricId = 6
GPM_METRIC_HMMA_TENSOR_UTIL GpmMetricId = 7
GPM_METRIC_IMMA_TENSOR_UTIL GpmMetricId = 9
GPM_METRIC_DRAM_BW_UTIL GpmMetricId = 10
GPM_METRIC_FP64_UTIL GpmMetricId = 11
GPM_METRIC_FP32_UTIL GpmMetricId = 12
GPM_METRIC_FP16_UTIL GpmMetricId = 13
GPM_METRIC_PCIE_TX_PER_SEC GpmMetricId = 20
GPM_METRIC_PCIE_RX_PER_SEC GpmMetricId = 21
GPM_METRIC_NVDEC_0_UTIL GpmMetricId = 30
GPM_METRIC_NVDEC_1_UTIL GpmMetricId = 31
GPM_METRIC_NVDEC_2_UTIL GpmMetricId = 32
GPM_METRIC_NVDEC_3_UTIL GpmMetricId = 33
GPM_METRIC_NVDEC_4_UTIL GpmMetricId = 34
GPM_METRIC_NVDEC_5_UTIL GpmMetricId = 35
GPM_METRIC_NVDEC_6_UTIL GpmMetricId = 36
GPM_METRIC_NVDEC_7_UTIL GpmMetricId = 37
GPM_METRIC_NVJPG_0_UTIL GpmMetricId = 40
GPM_METRIC_NVJPG_1_UTIL GpmMetricId = 41
GPM_METRIC_NVJPG_2_UTIL GpmMetricId = 42
GPM_METRIC_NVJPG_3_UTIL GpmMetricId = 43
GPM_METRIC_NVJPG_4_UTIL GpmMetricId = 44
GPM_METRIC_NVJPG_5_UTIL GpmMetricId = 45
GPM_METRIC_NVJPG_6_UTIL GpmMetricId = 46
GPM_METRIC_NVJPG_7_UTIL GpmMetricId = 47
GPM_METRIC_NVOFA_0_UTIL GpmMetricId = 50
GPM_METRIC_NVLINK_TOTAL_RX_PER_SEC GpmMetricId = 60
GPM_METRIC_NVLINK_TOTAL_TX_PER_SEC GpmMetricId = 61
GPM_METRIC_NVLINK_L0_RX_PER_SEC GpmMetricId = 62
GPM_METRIC_NVLINK_L0_TX_PER_SEC GpmMetricId = 63
GPM_METRIC_NVLINK_L1_RX_PER_SEC GpmMetricId = 64
GPM_METRIC_NVLINK_L1_TX_PER_SEC GpmMetricId = 65
GPM_METRIC_NVLINK_L2_RX_PER_SEC GpmMetricId = 66
GPM_METRIC_NVLINK_L2_TX_PER_SEC GpmMetricId = 67
GPM_METRIC_NVLINK_L3_RX_PER_SEC GpmMetricId = 68
GPM_METRIC_NVLINK_L3_TX_PER_SEC GpmMetricId = 69
GPM_METRIC_NVLINK_L4_RX_PER_SEC GpmMetricId = 70
GPM_METRIC_NVLINK_L4_TX_PER_SEC GpmMetricId = 71
GPM_METRIC_NVLINK_L5_RX_PER_SEC GpmMetricId = 72
GPM_METRIC_NVLINK_L5_TX_PER_SEC GpmMetricId = 73
GPM_METRIC_NVLINK_L6_RX_PER_SEC GpmMetricId = 74
GPM_METRIC_NVLINK_L6_TX_PER_SEC GpmMetricId = 75
GPM_METRIC_NVLINK_L7_RX_PER_SEC GpmMetricId = 76
GPM_METRIC_NVLINK_L7_TX_PER_SEC GpmMetricId = 77
GPM_METRIC_NVLINK_L8_RX_PER_SEC GpmMetricId = 78
GPM_METRIC_NVLINK_L8_TX_PER_SEC GpmMetricId = 79
GPM_METRIC_NVLINK_L9_RX_PER_SEC GpmMetricId = 80
GPM_METRIC_NVLINK_L9_TX_PER_SEC GpmMetricId = 81
GPM_METRIC_NVLINK_L10_RX_PER_SEC GpmMetricId = 82
GPM_METRIC_NVLINK_L10_TX_PER_SEC GpmMetricId = 83
GPM_METRIC_NVLINK_L11_RX_PER_SEC GpmMetricId = 84
GPM_METRIC_NVLINK_L11_TX_PER_SEC GpmMetricId = 85
GPM_METRIC_NVLINK_L12_RX_PER_SEC GpmMetricId = 86
GPM_METRIC_NVLINK_L12_TX_PER_SEC GpmMetricId = 87
GPM_METRIC_NVLINK_L13_RX_PER_SEC GpmMetricId = 88
GPM_METRIC_NVLINK_L13_TX_PER_SEC GpmMetricId = 89
GPM_METRIC_NVLINK_L14_RX_PER_SEC GpmMetricId = 90
GPM_METRIC_NVLINK_L14_TX_PER_SEC GpmMetricId = 91
GPM_METRIC_NVLINK_L15_RX_PER_SEC GpmMetricId = 92
GPM_METRIC_NVLINK_L15_TX_PER_SEC GpmMetricId = 93
GPM_METRIC_NVLINK_L16_RX_PER_SEC GpmMetricId = 94
GPM_METRIC_NVLINK_L16_TX_PER_SEC GpmMetricId = 95
GPM_METRIC_NVLINK_L17_RX_PER_SEC GpmMetricId = 96
GPM_METRIC_NVLINK_L17_TX_PER_SEC GpmMetricId = 97
GPM_METRIC_MAX GpmMetricId = 98
GPM_METRIC_GRAPHICS_UTIL GpmMetricId = 1
GPM_METRIC_SM_UTIL GpmMetricId = 2
GPM_METRIC_SM_OCCUPANCY GpmMetricId = 3
GPM_METRIC_INTEGER_UTIL GpmMetricId = 4
GPM_METRIC_ANY_TENSOR_UTIL GpmMetricId = 5
GPM_METRIC_DFMA_TENSOR_UTIL GpmMetricId = 6
GPM_METRIC_HMMA_TENSOR_UTIL GpmMetricId = 7
GPM_METRIC_IMMA_TENSOR_UTIL GpmMetricId = 9
GPM_METRIC_DRAM_BW_UTIL GpmMetricId = 10
GPM_METRIC_FP64_UTIL GpmMetricId = 11
GPM_METRIC_FP32_UTIL GpmMetricId = 12
GPM_METRIC_FP16_UTIL GpmMetricId = 13
GPM_METRIC_PCIE_TX_PER_SEC GpmMetricId = 20
GPM_METRIC_PCIE_RX_PER_SEC GpmMetricId = 21
GPM_METRIC_NVDEC_0_UTIL GpmMetricId = 30
GPM_METRIC_NVDEC_1_UTIL GpmMetricId = 31
GPM_METRIC_NVDEC_2_UTIL GpmMetricId = 32
GPM_METRIC_NVDEC_3_UTIL GpmMetricId = 33
GPM_METRIC_NVDEC_4_UTIL GpmMetricId = 34
GPM_METRIC_NVDEC_5_UTIL GpmMetricId = 35
GPM_METRIC_NVDEC_6_UTIL GpmMetricId = 36
GPM_METRIC_NVDEC_7_UTIL GpmMetricId = 37
GPM_METRIC_NVJPG_0_UTIL GpmMetricId = 40
GPM_METRIC_NVJPG_1_UTIL GpmMetricId = 41
GPM_METRIC_NVJPG_2_UTIL GpmMetricId = 42
GPM_METRIC_NVJPG_3_UTIL GpmMetricId = 43
GPM_METRIC_NVJPG_4_UTIL GpmMetricId = 44
GPM_METRIC_NVJPG_5_UTIL GpmMetricId = 45
GPM_METRIC_NVJPG_6_UTIL GpmMetricId = 46
GPM_METRIC_NVJPG_7_UTIL GpmMetricId = 47
GPM_METRIC_NVOFA_0_UTIL GpmMetricId = 50
GPM_METRIC_NVOFA_1_UTIL GpmMetricId = 51
GPM_METRIC_NVLINK_TOTAL_RX_PER_SEC GpmMetricId = 60
GPM_METRIC_NVLINK_TOTAL_TX_PER_SEC GpmMetricId = 61
GPM_METRIC_NVLINK_L0_RX_PER_SEC GpmMetricId = 62
GPM_METRIC_NVLINK_L0_TX_PER_SEC GpmMetricId = 63
GPM_METRIC_NVLINK_L1_RX_PER_SEC GpmMetricId = 64
GPM_METRIC_NVLINK_L1_TX_PER_SEC GpmMetricId = 65
GPM_METRIC_NVLINK_L2_RX_PER_SEC GpmMetricId = 66
GPM_METRIC_NVLINK_L2_TX_PER_SEC GpmMetricId = 67
GPM_METRIC_NVLINK_L3_RX_PER_SEC GpmMetricId = 68
GPM_METRIC_NVLINK_L3_TX_PER_SEC GpmMetricId = 69
GPM_METRIC_NVLINK_L4_RX_PER_SEC GpmMetricId = 70
GPM_METRIC_NVLINK_L4_TX_PER_SEC GpmMetricId = 71
GPM_METRIC_NVLINK_L5_RX_PER_SEC GpmMetricId = 72
GPM_METRIC_NVLINK_L5_TX_PER_SEC GpmMetricId = 73
GPM_METRIC_NVLINK_L6_RX_PER_SEC GpmMetricId = 74
GPM_METRIC_NVLINK_L6_TX_PER_SEC GpmMetricId = 75
GPM_METRIC_NVLINK_L7_RX_PER_SEC GpmMetricId = 76
GPM_METRIC_NVLINK_L7_TX_PER_SEC GpmMetricId = 77
GPM_METRIC_NVLINK_L8_RX_PER_SEC GpmMetricId = 78
GPM_METRIC_NVLINK_L8_TX_PER_SEC GpmMetricId = 79
GPM_METRIC_NVLINK_L9_RX_PER_SEC GpmMetricId = 80
GPM_METRIC_NVLINK_L9_TX_PER_SEC GpmMetricId = 81
GPM_METRIC_NVLINK_L10_RX_PER_SEC GpmMetricId = 82
GPM_METRIC_NVLINK_L10_TX_PER_SEC GpmMetricId = 83
GPM_METRIC_NVLINK_L11_RX_PER_SEC GpmMetricId = 84
GPM_METRIC_NVLINK_L11_TX_PER_SEC GpmMetricId = 85
GPM_METRIC_NVLINK_L12_RX_PER_SEC GpmMetricId = 86
GPM_METRIC_NVLINK_L12_TX_PER_SEC GpmMetricId = 87
GPM_METRIC_NVLINK_L13_RX_PER_SEC GpmMetricId = 88
GPM_METRIC_NVLINK_L13_TX_PER_SEC GpmMetricId = 89
GPM_METRIC_NVLINK_L14_RX_PER_SEC GpmMetricId = 90
GPM_METRIC_NVLINK_L14_TX_PER_SEC GpmMetricId = 91
GPM_METRIC_NVLINK_L15_RX_PER_SEC GpmMetricId = 92
GPM_METRIC_NVLINK_L15_TX_PER_SEC GpmMetricId = 93
GPM_METRIC_NVLINK_L16_RX_PER_SEC GpmMetricId = 94
GPM_METRIC_NVLINK_L16_TX_PER_SEC GpmMetricId = 95
GPM_METRIC_NVLINK_L17_RX_PER_SEC GpmMetricId = 96
GPM_METRIC_NVLINK_L17_TX_PER_SEC GpmMetricId = 97
GPM_METRIC_C2C_TOTAL_TX_PER_SEC GpmMetricId = 100
GPM_METRIC_C2C_TOTAL_RX_PER_SEC GpmMetricId = 101
GPM_METRIC_C2C_DATA_TX_PER_SEC GpmMetricId = 102
GPM_METRIC_C2C_DATA_RX_PER_SEC GpmMetricId = 103
GPM_METRIC_C2C_LINK0_TOTAL_TX_PER_SEC GpmMetricId = 104
GPM_METRIC_C2C_LINK0_TOTAL_RX_PER_SEC GpmMetricId = 105
GPM_METRIC_C2C_LINK0_DATA_TX_PER_SEC GpmMetricId = 106
GPM_METRIC_C2C_LINK0_DATA_RX_PER_SEC GpmMetricId = 107
GPM_METRIC_C2C_LINK1_TOTAL_TX_PER_SEC GpmMetricId = 108
GPM_METRIC_C2C_LINK1_TOTAL_RX_PER_SEC GpmMetricId = 109
GPM_METRIC_C2C_LINK1_DATA_TX_PER_SEC GpmMetricId = 110
GPM_METRIC_C2C_LINK1_DATA_RX_PER_SEC GpmMetricId = 111
GPM_METRIC_C2C_LINK2_TOTAL_TX_PER_SEC GpmMetricId = 112
GPM_METRIC_C2C_LINK2_TOTAL_RX_PER_SEC GpmMetricId = 113
GPM_METRIC_C2C_LINK2_DATA_TX_PER_SEC GpmMetricId = 114
GPM_METRIC_C2C_LINK2_DATA_RX_PER_SEC GpmMetricId = 115
GPM_METRIC_C2C_LINK3_TOTAL_TX_PER_SEC GpmMetricId = 116
GPM_METRIC_C2C_LINK3_TOTAL_RX_PER_SEC GpmMetricId = 117
GPM_METRIC_C2C_LINK3_DATA_TX_PER_SEC GpmMetricId = 118
GPM_METRIC_C2C_LINK3_DATA_RX_PER_SEC GpmMetricId = 119
GPM_METRIC_C2C_LINK4_TOTAL_TX_PER_SEC GpmMetricId = 120
GPM_METRIC_C2C_LINK4_TOTAL_RX_PER_SEC GpmMetricId = 121
GPM_METRIC_C2C_LINK4_DATA_TX_PER_SEC GpmMetricId = 122
GPM_METRIC_C2C_LINK4_DATA_RX_PER_SEC GpmMetricId = 123
GPM_METRIC_C2C_LINK5_TOTAL_TX_PER_SEC GpmMetricId = 124
GPM_METRIC_C2C_LINK5_TOTAL_RX_PER_SEC GpmMetricId = 125
GPM_METRIC_C2C_LINK5_DATA_TX_PER_SEC GpmMetricId = 126
GPM_METRIC_C2C_LINK5_DATA_RX_PER_SEC GpmMetricId = 127
GPM_METRIC_C2C_LINK6_TOTAL_TX_PER_SEC GpmMetricId = 128
GPM_METRIC_C2C_LINK6_TOTAL_RX_PER_SEC GpmMetricId = 129
GPM_METRIC_C2C_LINK6_DATA_TX_PER_SEC GpmMetricId = 130
GPM_METRIC_C2C_LINK6_DATA_RX_PER_SEC GpmMetricId = 131
GPM_METRIC_C2C_LINK7_TOTAL_TX_PER_SEC GpmMetricId = 132
GPM_METRIC_C2C_LINK7_TOTAL_RX_PER_SEC GpmMetricId = 133
GPM_METRIC_C2C_LINK7_DATA_TX_PER_SEC GpmMetricId = 134
GPM_METRIC_C2C_LINK7_DATA_RX_PER_SEC GpmMetricId = 135
GPM_METRIC_C2C_LINK8_TOTAL_TX_PER_SEC GpmMetricId = 136
GPM_METRIC_C2C_LINK8_TOTAL_RX_PER_SEC GpmMetricId = 137
GPM_METRIC_C2C_LINK8_DATA_TX_PER_SEC GpmMetricId = 138
GPM_METRIC_C2C_LINK8_DATA_RX_PER_SEC GpmMetricId = 139
GPM_METRIC_C2C_LINK9_TOTAL_TX_PER_SEC GpmMetricId = 140
GPM_METRIC_C2C_LINK9_TOTAL_RX_PER_SEC GpmMetricId = 141
GPM_METRIC_C2C_LINK9_DATA_TX_PER_SEC GpmMetricId = 142
GPM_METRIC_C2C_LINK9_DATA_RX_PER_SEC GpmMetricId = 143
GPM_METRIC_C2C_LINK10_TOTAL_TX_PER_SEC GpmMetricId = 144
GPM_METRIC_C2C_LINK10_TOTAL_RX_PER_SEC GpmMetricId = 145
GPM_METRIC_C2C_LINK10_DATA_TX_PER_SEC GpmMetricId = 146
GPM_METRIC_C2C_LINK10_DATA_RX_PER_SEC GpmMetricId = 147
GPM_METRIC_C2C_LINK11_TOTAL_TX_PER_SEC GpmMetricId = 148
GPM_METRIC_C2C_LINK11_TOTAL_RX_PER_SEC GpmMetricId = 149
GPM_METRIC_C2C_LINK11_DATA_TX_PER_SEC GpmMetricId = 150
GPM_METRIC_C2C_LINK11_DATA_RX_PER_SEC GpmMetricId = 151
GPM_METRIC_C2C_LINK12_TOTAL_TX_PER_SEC GpmMetricId = 152
GPM_METRIC_C2C_LINK12_TOTAL_RX_PER_SEC GpmMetricId = 153
GPM_METRIC_C2C_LINK12_DATA_TX_PER_SEC GpmMetricId = 154
GPM_METRIC_C2C_LINK12_DATA_RX_PER_SEC GpmMetricId = 155
GPM_METRIC_C2C_LINK13_TOTAL_TX_PER_SEC GpmMetricId = 156
GPM_METRIC_C2C_LINK13_TOTAL_RX_PER_SEC GpmMetricId = 157
GPM_METRIC_C2C_LINK13_DATA_TX_PER_SEC GpmMetricId = 158
GPM_METRIC_C2C_LINK13_DATA_RX_PER_SEC GpmMetricId = 159
GPM_METRIC_HOSTMEM_CACHE_HIT GpmMetricId = 160
GPM_METRIC_HOSTMEM_CACHE_MISS GpmMetricId = 161
GPM_METRIC_PEERMEM_CACHE_HIT GpmMetricId = 162
GPM_METRIC_PEERMEM_CACHE_MISS GpmMetricId = 163
GPM_METRIC_DRAM_CACHE_HIT GpmMetricId = 164
GPM_METRIC_DRAM_CACHE_MISS GpmMetricId = 165
GPM_METRIC_NVENC_0_UTIL GpmMetricId = 166
GPM_METRIC_NVENC_1_UTIL GpmMetricId = 167
GPM_METRIC_NVENC_2_UTIL GpmMetricId = 168
GPM_METRIC_NVENC_3_UTIL GpmMetricId = 169
GPM_METRIC_GR0_CTXSW_CYCLES_ELAPSED GpmMetricId = 170
GPM_METRIC_GR0_CTXSW_CYCLES_ACTIVE GpmMetricId = 171
GPM_METRIC_GR0_CTXSW_REQUESTS GpmMetricId = 172
GPM_METRIC_GR0_CTXSW_CYCLES_PER_REQ GpmMetricId = 173
GPM_METRIC_GR0_CTXSW_ACTIVE_PCT GpmMetricId = 174
GPM_METRIC_GR1_CTXSW_CYCLES_ELAPSED GpmMetricId = 175
GPM_METRIC_GR1_CTXSW_CYCLES_ACTIVE GpmMetricId = 176
GPM_METRIC_GR1_CTXSW_REQUESTS GpmMetricId = 177
GPM_METRIC_GR1_CTXSW_CYCLES_PER_REQ GpmMetricId = 178
GPM_METRIC_GR1_CTXSW_ACTIVE_PCT GpmMetricId = 179
GPM_METRIC_GR2_CTXSW_CYCLES_ELAPSED GpmMetricId = 180
GPM_METRIC_GR2_CTXSW_CYCLES_ACTIVE GpmMetricId = 181
GPM_METRIC_GR2_CTXSW_REQUESTS GpmMetricId = 182
GPM_METRIC_GR2_CTXSW_CYCLES_PER_REQ GpmMetricId = 183
GPM_METRIC_GR2_CTXSW_ACTIVE_PCT GpmMetricId = 184
GPM_METRIC_GR3_CTXSW_CYCLES_ELAPSED GpmMetricId = 185
GPM_METRIC_GR3_CTXSW_CYCLES_ACTIVE GpmMetricId = 186
GPM_METRIC_GR3_CTXSW_REQUESTS GpmMetricId = 187
GPM_METRIC_GR3_CTXSW_CYCLES_PER_REQ GpmMetricId = 188
GPM_METRIC_GR3_CTXSW_ACTIVE_PCT GpmMetricId = 189
GPM_METRIC_GR4_CTXSW_CYCLES_ELAPSED GpmMetricId = 190
GPM_METRIC_GR4_CTXSW_CYCLES_ACTIVE GpmMetricId = 191
GPM_METRIC_GR4_CTXSW_REQUESTS GpmMetricId = 192
GPM_METRIC_GR4_CTXSW_CYCLES_PER_REQ GpmMetricId = 193
GPM_METRIC_GR4_CTXSW_ACTIVE_PCT GpmMetricId = 194
GPM_METRIC_GR5_CTXSW_CYCLES_ELAPSED GpmMetricId = 195
GPM_METRIC_GR5_CTXSW_CYCLES_ACTIVE GpmMetricId = 196
GPM_METRIC_GR5_CTXSW_REQUESTS GpmMetricId = 197
GPM_METRIC_GR5_CTXSW_CYCLES_PER_REQ GpmMetricId = 198
GPM_METRIC_GR5_CTXSW_ACTIVE_PCT GpmMetricId = 199
GPM_METRIC_GR6_CTXSW_CYCLES_ELAPSED GpmMetricId = 200
GPM_METRIC_GR6_CTXSW_CYCLES_ACTIVE GpmMetricId = 201
GPM_METRIC_GR6_CTXSW_REQUESTS GpmMetricId = 202
GPM_METRIC_GR6_CTXSW_CYCLES_PER_REQ GpmMetricId = 203
GPM_METRIC_GR6_CTXSW_ACTIVE_PCT GpmMetricId = 204
GPM_METRIC_GR7_CTXSW_CYCLES_ELAPSED GpmMetricId = 205
GPM_METRIC_GR7_CTXSW_CYCLES_ACTIVE GpmMetricId = 206
GPM_METRIC_GR7_CTXSW_REQUESTS GpmMetricId = 207
GPM_METRIC_GR7_CTXSW_CYCLES_PER_REQ GpmMetricId = 208
GPM_METRIC_GR7_CTXSW_ACTIVE_PCT GpmMetricId = 209
GPM_METRIC_MAX GpmMetricId = 210
)
// PowerProfileType as declared in nvml/nvml.h
type PowerProfileType int32
// PowerProfileType enumeration from nvml/nvml.h
const (
POWER_PROFILE_MAX_P PowerProfileType = iota
POWER_PROFILE_MAX_Q PowerProfileType = 1
POWER_PROFILE_COMPUTE PowerProfileType = 2
POWER_PROFILE_MEMORY_BOUND PowerProfileType = 3
POWER_PROFILE_NETWORK PowerProfileType = 4
POWER_PROFILE_BALANCED PowerProfileType = 5
POWER_PROFILE_LLM_INFERENCE PowerProfileType = 6
POWER_PROFILE_LLM_TRAINING PowerProfileType = 7
POWER_PROFILE_RBM PowerProfileType = 8
POWER_PROFILE_DCPCIE PowerProfileType = 9
POWER_PROFILE_HMMA_SPARSE PowerProfileType = 10
POWER_PROFILE_HMMA_DENSE PowerProfileType = 11
POWER_PROFILE_SYNC_BALANCED PowerProfileType = 12
POWER_PROFILE_HPC PowerProfileType = 13
POWER_PROFILE_MIG PowerProfileType = 14
POWER_PROFILE_MAX PowerProfileType = 15
)

View File

@ -68,16 +68,6 @@ type GpuInstanceInfo struct {
Placement GpuInstancePlacement
}
func (g GpuInstanceInfo) convert() nvmlGpuInstanceInfo {
out := nvmlGpuInstanceInfo{
Device: g.Device.(nvmlDevice),
Id: g.Id,
ProfileId: g.ProfileId,
Placement: g.Placement,
}
return out
}
func (g nvmlGpuInstanceInfo) convert() GpuInstanceInfo {
out := GpuInstanceInfo{
Device: g.Device,
@ -97,17 +87,6 @@ type ComputeInstanceInfo struct {
Placement ComputeInstancePlacement
}
func (c ComputeInstanceInfo) convert() nvmlComputeInstanceInfo {
out := nvmlComputeInstanceInfo{
Device: c.Device.(nvmlDevice),
GpuInstance: c.GpuInstance.(nvmlGpuInstance),
Id: c.Id,
ProfileId: c.ProfileId,
Placement: c.Placement,
}
return out
}
func (c nvmlComputeInstanceInfo) convert() ComputeInstanceInfo {
out := ComputeInstanceInfo{
Device: c.Device,
@ -147,6 +126,13 @@ func (l *library) DeviceGetHandleByUUID(uuid string) (Device, Return) {
return device, ret
}
// nvml.DeviceGetHandleByUUIDV()
func (l *library) DeviceGetHandleByUUIDV(uuid *UUID) (Device, Return) {
var device nvmlDevice
ret := nvmlDeviceGetHandleByUUIDV(uuid, &device)
return device, ret
}
// nvml.DeviceGetHandleByPciBusId()
func (l *library) DeviceGetHandleByPciBusId(pciBusId string) (Device, Return) {
var device nvmlDevice
@ -2101,6 +2087,13 @@ func (handler GpuInstanceProfileInfoHandler) V2() (GpuInstanceProfileInfo_v2, Re
return info, ret
}
func (handler GpuInstanceProfileInfoHandler) V3() (GpuInstanceProfileInfo_v3, Return) {
var info GpuInstanceProfileInfo_v3
info.Version = STRUCT_VERSION(info, 3)
ret := nvmlDeviceGetGpuInstanceProfileInfoV(handler.device, uint32(handler.profile), (*GpuInstanceProfileInfo_v2)(unsafe.Pointer(&info)))
return info, ret
}
func (l *library) DeviceGetGpuInstanceProfileInfoV(device Device, profile int) GpuInstanceProfileInfoHandler {
return device.GetGpuInstanceProfileInfoV(profile)
}
@ -2191,7 +2184,7 @@ func (device nvmlDevice) GetGpuInstances(info *GpuInstanceProfileInfo) ([]GpuIns
if info == nil {
return nil, ERROR_INVALID_ARGUMENT
}
var count uint32 = info.InstanceCount
var count = info.InstanceCount
gpuInstances := make([]nvmlGpuInstance, count)
ret := nvmlDeviceGetGpuInstances(device, info.Id, &gpuInstances[0], &count)
return convertSlice[nvmlGpuInstance, GpuInstance](gpuInstances[:count]), ret
@ -2248,6 +2241,13 @@ func (handler ComputeInstanceProfileInfoHandler) V2() (ComputeInstanceProfileInf
return info, ret
}
func (handler ComputeInstanceProfileInfoHandler) V3() (ComputeInstanceProfileInfo_v3, Return) {
var info ComputeInstanceProfileInfo_v3
info.Version = STRUCT_VERSION(info, 3)
ret := nvmlGpuInstanceGetComputeInstanceProfileInfoV(handler.gpuInstance, uint32(handler.profile), uint32(handler.engProfile), (*ComputeInstanceProfileInfo_v2)(unsafe.Pointer(&info)))
return info, ret
}
func (l *library) GpuInstanceGetComputeInstanceProfileInfoV(gpuInstance GpuInstance, profile int, engProfile int) ComputeInstanceProfileInfoHandler {
return gpuInstance.GetComputeInstanceProfileInfoV(profile, engProfile)
}
@ -2302,7 +2302,7 @@ func (gpuInstance nvmlGpuInstance) GetComputeInstances(info *ComputeInstanceProf
if info == nil {
return nil, ERROR_INVALID_ARGUMENT
}
var count uint32 = info.InstanceCount
var count = info.InstanceCount
computeInstances := make([]nvmlComputeInstance, count)
ret := nvmlGpuInstanceGetComputeInstances(gpuInstance, info.Id, &computeInstances[0], &count)
return convertSlice[nvmlComputeInstance, ComputeInstance](computeInstances[:count]), ret
@ -3062,3 +3062,353 @@ func (device nvmlDevice) GetSramEccErrorStatus() (EccSramErrorStatus, Return) {
ret := nvmlDeviceGetSramEccErrorStatus(device, &status)
return status, ret
}
// nvml.DeviceGetClockOffsets()
func (l *library) DeviceGetClockOffsets(device Device) (ClockOffset, Return) {
return device.GetClockOffsets()
}
func (device nvmlDevice) GetClockOffsets() (ClockOffset, Return) {
var info ClockOffset
info.Version = STRUCT_VERSION(info, 1)
ret := nvmlDeviceGetClockOffsets(device, &info)
return info, ret
}
// nvml.DeviceSetClockOffsets()
func (l *library) DeviceSetClockOffsets(device Device, info ClockOffset) Return {
return device.SetClockOffsets(info)
}
func (device nvmlDevice) SetClockOffsets(info ClockOffset) Return {
return nvmlDeviceSetClockOffsets(device, &info)
}
// nvml.DeviceGetDriverModel_v2()
func (l *library) DeviceGetDriverModel_v2(device Device) (DriverModel, DriverModel, Return) {
return device.GetDriverModel_v2()
}
func (device nvmlDevice) GetDriverModel_v2() (DriverModel, DriverModel, Return) {
var current, pending DriverModel
ret := nvmlDeviceGetDriverModel_v2(device, &current, &pending)
return current, pending, ret
}
// nvml.DeviceGetCapabilities()
func (l *library) DeviceGetCapabilities(device Device) (DeviceCapabilities, Return) {
return device.GetCapabilities()
}
func (device nvmlDevice) GetCapabilities() (DeviceCapabilities, Return) {
var caps DeviceCapabilities
caps.Version = STRUCT_VERSION(caps, 1)
ret := nvmlDeviceGetCapabilities(device, &caps)
return caps, ret
}
// nvml.DeviceGetFanSpeedRPM()
func (l *library) DeviceGetFanSpeedRPM(device Device) (FanSpeedInfo, Return) {
return device.GetFanSpeedRPM()
}
func (device nvmlDevice) GetFanSpeedRPM() (FanSpeedInfo, Return) {
var fanSpeed FanSpeedInfo
fanSpeed.Version = STRUCT_VERSION(fanSpeed, 1)
ret := nvmlDeviceGetFanSpeedRPM(device, &fanSpeed)
return fanSpeed, ret
}
// nvml.DeviceGetCoolerInfo()
func (l *library) DeviceGetCoolerInfo(device Device) (CoolerInfo, Return) {
return device.GetCoolerInfo()
}
func (device nvmlDevice) GetCoolerInfo() (CoolerInfo, Return) {
var coolerInfo CoolerInfo
coolerInfo.Version = STRUCT_VERSION(coolerInfo, 1)
ret := nvmlDeviceGetCoolerInfo(device, &coolerInfo)
return coolerInfo, ret
}
// nvml.DeviceGetTemperatureV()
type TemperatureHandler struct {
device nvmlDevice
}
func (handler TemperatureHandler) V1() (Temperature, Return) {
var temperature Temperature
temperature.Version = STRUCT_VERSION(temperature, 1)
ret := nvmlDeviceGetTemperatureV(handler.device, &temperature)
return temperature, ret
}
func (l *library) DeviceGetTemperatureV(device Device) TemperatureHandler {
return device.GetTemperatureV()
}
func (device nvmlDevice) GetTemperatureV() TemperatureHandler {
return TemperatureHandler{device}
}
// nvml.DeviceGetMarginTemperature()
func (l *library) DeviceGetMarginTemperature(device Device) (MarginTemperature, Return) {
return device.GetMarginTemperature()
}
func (device nvmlDevice) GetMarginTemperature() (MarginTemperature, Return) {
var marginTemp MarginTemperature
marginTemp.Version = STRUCT_VERSION(marginTemp, 1)
ret := nvmlDeviceGetMarginTemperature(device, &marginTemp)
return marginTemp, ret
}
// nvml.DeviceGetPerformanceModes()
func (l *library) DeviceGetPerformanceModes(device Device) (DevicePerfModes, Return) {
return device.GetPerformanceModes()
}
func (device nvmlDevice) GetPerformanceModes() (DevicePerfModes, Return) {
var perfModes DevicePerfModes
perfModes.Version = STRUCT_VERSION(perfModes, 1)
ret := nvmlDeviceGetPerformanceModes(device, &perfModes)
return perfModes, ret
}
// nvml.DeviceGetCurrentClockFreqs()
func (l *library) DeviceGetCurrentClockFreqs(device Device) (DeviceCurrentClockFreqs, Return) {
return device.GetCurrentClockFreqs()
}
func (device nvmlDevice) GetCurrentClockFreqs() (DeviceCurrentClockFreqs, Return) {
var currentClockFreqs DeviceCurrentClockFreqs
currentClockFreqs.Version = STRUCT_VERSION(currentClockFreqs, 1)
ret := nvmlDeviceGetCurrentClockFreqs(device, &currentClockFreqs)
return currentClockFreqs, ret
}
// nvml.DeviceGetDramEncryptionMode()
func (l *library) DeviceGetDramEncryptionMode(device Device) (DramEncryptionInfo, DramEncryptionInfo, Return) {
return device.GetDramEncryptionMode()
}
func (device nvmlDevice) GetDramEncryptionMode() (DramEncryptionInfo, DramEncryptionInfo, Return) {
var current, pending DramEncryptionInfo
current.Version = STRUCT_VERSION(current, 1)
pending.Version = STRUCT_VERSION(pending, 1)
ret := nvmlDeviceGetDramEncryptionMode(device, &current, &pending)
return current, pending, ret
}
// nvml.DeviceSetDramEncryptionMode()
func (l *library) DeviceSetDramEncryptionMode(device Device, dramEncryption *DramEncryptionInfo) Return {
return device.SetDramEncryptionMode(dramEncryption)
}
func (device nvmlDevice) SetDramEncryptionMode(dramEncryption *DramEncryptionInfo) Return {
return nvmlDeviceSetDramEncryptionMode(device, dramEncryption)
}
// nvml.DeviceGetPlatformInfo()
func (l *library) DeviceGetPlatformInfo(device Device) (PlatformInfo, Return) {
return device.GetPlatformInfo()
}
func (device nvmlDevice) GetPlatformInfo() (PlatformInfo, Return) {
var platformInfo PlatformInfo
platformInfo.Version = STRUCT_VERSION(platformInfo, 1)
ret := nvmlDeviceGetPlatformInfo(device, &platformInfo)
return platformInfo, ret
}
// nvml.DeviceGetNvlinkSupportedBwModes()
func (l *library) DeviceGetNvlinkSupportedBwModes(device Device) (NvlinkSupportedBwModes, Return) {
return device.GetNvlinkSupportedBwModes()
}
func (device nvmlDevice) GetNvlinkSupportedBwModes() (NvlinkSupportedBwModes, Return) {
var supportedBwMode NvlinkSupportedBwModes
supportedBwMode.Version = STRUCT_VERSION(supportedBwMode, 1)
ret := nvmlDeviceGetNvlinkSupportedBwModes(device, &supportedBwMode)
return supportedBwMode, ret
}
// nvml.DeviceGetNvlinkBwMode()
func (l *library) DeviceGetNvlinkBwMode(device Device) (NvlinkGetBwMode, Return) {
return device.GetNvlinkBwMode()
}
func (device nvmlDevice) GetNvlinkBwMode() (NvlinkGetBwMode, Return) {
var getBwMode NvlinkGetBwMode
getBwMode.Version = STRUCT_VERSION(getBwMode, 1)
ret := nvmlDeviceGetNvlinkBwMode(device, &getBwMode)
return getBwMode, ret
}
// nvml.DeviceSetNvlinkBwMode()
func (l *library) DeviceSetNvlinkBwMode(device Device, setBwMode *NvlinkSetBwMode) Return {
return device.SetNvlinkBwMode(setBwMode)
}
func (device nvmlDevice) SetNvlinkBwMode(setBwMode *NvlinkSetBwMode) Return {
return nvmlDeviceSetNvlinkBwMode(device, setBwMode)
}
// nvml.DeviceWorkloadPowerProfileGetProfilesInfo()
func (l *library) DeviceWorkloadPowerProfileGetProfilesInfo(device Device) (WorkloadPowerProfileProfilesInfo, Return) {
return device.WorkloadPowerProfileGetProfilesInfo()
}
func (device nvmlDevice) WorkloadPowerProfileGetProfilesInfo() (WorkloadPowerProfileProfilesInfo, Return) {
var profilesInfo WorkloadPowerProfileProfilesInfo
profilesInfo.Version = STRUCT_VERSION(profilesInfo, 1)
ret := nvmlDeviceWorkloadPowerProfileGetProfilesInfo(device, &profilesInfo)
return profilesInfo, ret
}
// nvml.DeviceWorkloadPowerProfileGetCurrentProfiles()
func (l *library) DeviceWorkloadPowerProfileGetCurrentProfiles(device Device) (WorkloadPowerProfileCurrentProfiles, Return) {
return device.WorkloadPowerProfileGetCurrentProfiles()
}
func (device nvmlDevice) WorkloadPowerProfileGetCurrentProfiles() (WorkloadPowerProfileCurrentProfiles, Return) {
var currentProfiles WorkloadPowerProfileCurrentProfiles
currentProfiles.Version = STRUCT_VERSION(currentProfiles, 1)
ret := nvmlDeviceWorkloadPowerProfileGetCurrentProfiles(device, &currentProfiles)
return currentProfiles, ret
}
// nvml.DeviceWorkloadPowerProfileSetRequestedProfiles()
func (l *library) DeviceWorkloadPowerProfileSetRequestedProfiles(device Device, requestedProfiles *WorkloadPowerProfileRequestedProfiles) Return {
return device.WorkloadPowerProfileSetRequestedProfiles(requestedProfiles)
}
func (device nvmlDevice) WorkloadPowerProfileSetRequestedProfiles(requestedProfiles *WorkloadPowerProfileRequestedProfiles) Return {
return nvmlDeviceWorkloadPowerProfileSetRequestedProfiles(device, requestedProfiles)
}
// nvml.DeviceWorkloadPowerProfileClearRequestedProfiles()
func (l *library) DeviceWorkloadPowerProfileClearRequestedProfiles(device Device, requestedProfiles *WorkloadPowerProfileRequestedProfiles) Return {
return device.WorkloadPowerProfileClearRequestedProfiles(requestedProfiles)
}
func (device nvmlDevice) WorkloadPowerProfileClearRequestedProfiles(requestedProfiles *WorkloadPowerProfileRequestedProfiles) Return {
return nvmlDeviceWorkloadPowerProfileClearRequestedProfiles(device, requestedProfiles)
}
// nvml.DevicePowerSmoothingActivatePresetProfile()
func (l *library) DevicePowerSmoothingActivatePresetProfile(device Device, profile *PowerSmoothingProfile) Return {
return device.PowerSmoothingActivatePresetProfile(profile)
}
func (device nvmlDevice) PowerSmoothingActivatePresetProfile(profile *PowerSmoothingProfile) Return {
return nvmlDevicePowerSmoothingActivatePresetProfile(device, profile)
}
// nvml.DevicePowerSmoothingUpdatePresetProfileParam()
func (l *library) DevicePowerSmoothingUpdatePresetProfileParam(device Device, profile *PowerSmoothingProfile) Return {
return device.PowerSmoothingUpdatePresetProfileParam(profile)
}
func (device nvmlDevice) PowerSmoothingUpdatePresetProfileParam(profile *PowerSmoothingProfile) Return {
return nvmlDevicePowerSmoothingUpdatePresetProfileParam(device, profile)
}
// nvml.DevicePowerSmoothingSetState()
func (l *library) DevicePowerSmoothingSetState(device Device, state *PowerSmoothingState) Return {
return device.PowerSmoothingSetState(state)
}
func (device nvmlDevice) PowerSmoothingSetState(state *PowerSmoothingState) Return {
return nvmlDevicePowerSmoothingSetState(device, state)
}
// nvml.GpuInstanceGetCreatableVgpus()
func (l *library) GpuInstanceGetCreatableVgpus(gpuInstance GpuInstance) (VgpuTypeIdInfo, Return) {
return gpuInstance.GetCreatableVgpus()
}
func (gpuInstance nvmlGpuInstance) GetCreatableVgpus() (VgpuTypeIdInfo, Return) {
var vgpuTypeIdInfo VgpuTypeIdInfo
vgpuTypeIdInfo.Version = STRUCT_VERSION(vgpuTypeIdInfo, 1)
ret := nvmlGpuInstanceGetCreatableVgpus(gpuInstance, &vgpuTypeIdInfo)
return vgpuTypeIdInfo, ret
}
// nvml.GpuInstanceGetActiveVgpus()
func (l *library) GpuInstanceGetActiveVgpus(gpuInstance GpuInstance) (ActiveVgpuInstanceInfo, Return) {
return gpuInstance.GetActiveVgpus()
}
func (gpuInstance nvmlGpuInstance) GetActiveVgpus() (ActiveVgpuInstanceInfo, Return) {
var activeVgpuInstanceInfo ActiveVgpuInstanceInfo
activeVgpuInstanceInfo.Version = STRUCT_VERSION(activeVgpuInstanceInfo, 1)
ret := nvmlGpuInstanceGetActiveVgpus(gpuInstance, &activeVgpuInstanceInfo)
return activeVgpuInstanceInfo, ret
}
// nvml.GpuInstanceSetVgpuSchedulerState()
func (l *library) GpuInstanceSetVgpuSchedulerState(gpuInstance GpuInstance, scheduler *VgpuSchedulerState) Return {
return gpuInstance.SetVgpuSchedulerState(scheduler)
}
func (gpuInstance nvmlGpuInstance) SetVgpuSchedulerState(scheduler *VgpuSchedulerState) Return {
return nvmlGpuInstanceSetVgpuSchedulerState(gpuInstance, scheduler)
}
// nvml.GpuInstanceGetVgpuSchedulerState()
func (l *library) GpuInstanceGetVgpuSchedulerState(gpuInstance GpuInstance) (VgpuSchedulerStateInfo, Return) {
return gpuInstance.GetVgpuSchedulerState()
}
func (gpuInstance nvmlGpuInstance) GetVgpuSchedulerState() (VgpuSchedulerStateInfo, Return) {
var schedulerStateInfo VgpuSchedulerStateInfo
schedulerStateInfo.Version = STRUCT_VERSION(schedulerStateInfo, 1)
ret := nvmlGpuInstanceGetVgpuSchedulerState(gpuInstance, &schedulerStateInfo)
return schedulerStateInfo, ret
}
// nvml.GpuInstanceGetVgpuSchedulerLog()
func (l *library) GpuInstanceGetVgpuSchedulerLog(gpuInstance GpuInstance) (VgpuSchedulerLogInfo, Return) {
return gpuInstance.GetVgpuSchedulerLog()
}
func (gpuInstance nvmlGpuInstance) GetVgpuSchedulerLog() (VgpuSchedulerLogInfo, Return) {
var schedulerLogInfo VgpuSchedulerLogInfo
schedulerLogInfo.Version = STRUCT_VERSION(schedulerLogInfo, 1)
ret := nvmlGpuInstanceGetVgpuSchedulerLog(gpuInstance, &schedulerLogInfo)
return schedulerLogInfo, ret
}
// nvml.GpuInstanceGetVgpuTypeCreatablePlacements()
func (l *library) GpuInstanceGetVgpuTypeCreatablePlacements(gpuInstance GpuInstance) (VgpuCreatablePlacementInfo, Return) {
return gpuInstance.GetVgpuTypeCreatablePlacements()
}
func (gpuInstance nvmlGpuInstance) GetVgpuTypeCreatablePlacements() (VgpuCreatablePlacementInfo, Return) {
var creatablePlacementInfo VgpuCreatablePlacementInfo
creatablePlacementInfo.Version = STRUCT_VERSION(creatablePlacementInfo, 1)
ret := nvmlGpuInstanceGetVgpuTypeCreatablePlacements(gpuInstance, &creatablePlacementInfo)
return creatablePlacementInfo, ret
}
// nvml.GpuInstanceGetVgpuHeterogeneousMode()
func (l *library) GpuInstanceGetVgpuHeterogeneousMode(gpuInstance GpuInstance) (VgpuHeterogeneousMode, Return) {
return gpuInstance.GetVgpuHeterogeneousMode()
}
func (gpuInstance nvmlGpuInstance) GetVgpuHeterogeneousMode() (VgpuHeterogeneousMode, Return) {
var heterogeneousMode VgpuHeterogeneousMode
heterogeneousMode.Version = STRUCT_VERSION(heterogeneousMode, 1)
ret := nvmlGpuInstanceGetVgpuHeterogeneousMode(gpuInstance, &heterogeneousMode)
return heterogeneousMode, ret
}
// nvml.GpuInstanceSetVgpuHeterogeneousMode()
func (l *library) GpuInstanceSetVgpuHeterogeneousMode(gpuInstance GpuInstance, heterogeneousMode *VgpuHeterogeneousMode) Return {
return gpuInstance.SetVgpuHeterogeneousMode(heterogeneousMode)
}
func (gpuInstance nvmlGpuInstance) SetVgpuHeterogeneousMode(heterogeneousMode *VgpuHeterogeneousMode) Return {
return nvmlGpuInstanceSetVgpuHeterogeneousMode(gpuInstance, heterogeneousMode)
}

View File

@ -23,17 +23,6 @@ type EventData struct {
ComputeInstanceId uint32
}
func (e EventData) convert() nvmlEventData {
out := nvmlEventData{
Device: e.Device.(nvmlDevice),
EventType: e.EventType,
EventData: e.EventData,
GpuInstanceId: e.GpuInstanceId,
ComputeInstanceId: e.ComputeInstanceId,
}
return out
}
func (e nvmlEventData) convert() EventData {
out := EventData{
Device: e.Device,
@ -71,3 +60,23 @@ func (l *library) EventSetFree(set EventSet) Return {
func (set nvmlEventSet) Free() Return {
return nvmlEventSetFree(set)
}
// nvml.SystemEventSetCreate()
func (l *library) SystemEventSetCreate(request *SystemEventSetCreateRequest) Return {
return nvmlSystemEventSetCreate(request)
}
// nvml.SystemEventSetFree()
func (l *library) SystemEventSetFree(request *SystemEventSetFreeRequest) Return {
return nvmlSystemEventSetFree(request)
}
// nvml.SystemRegisterEvents()
func (l *library) SystemRegisterEvents(request *SystemRegisterEventRequest) Return {
return nvmlSystemRegisterEvents(request)
}
// nvml.SystemEventSetWait()
func (l *library) SystemEventSetWait(request *SystemEventSetWaitRequest) Return {
return nvmlSystemEventSetWait(request)
}

View File

@ -20,7 +20,7 @@ type GpmMetricsGetType struct {
NumMetrics uint32
Sample1 GpmSample
Sample2 GpmSample
Metrics [98]GpmMetric
Metrics [210]GpmMetric
}
func (g *GpmMetricsGetType) convert() *nvmlGpmMetricsGetType {
@ -30,9 +30,8 @@ func (g *GpmMetricsGetType) convert() *nvmlGpmMetricsGetType {
Sample1: g.Sample1.(nvmlGpmSample),
Sample2: g.Sample2.(nvmlGpmSample),
}
for i := range g.Metrics {
out.Metrics[i] = g.Metrics[i]
}
copy(out.Metrics[:], g.Metrics[:])
return out
}
@ -43,9 +42,8 @@ func (g *nvmlGpmMetricsGetType) convert() *GpmMetricsGetType {
Sample1: g.Sample1,
Sample2: g.Sample2,
}
for i := range g.Metrics {
out.Metrics[i] = g.Metrics[i]
}
copy(out.Metrics[:], g.Metrics[:])
return out
}

View File

@ -163,6 +163,7 @@ var GetBlacklistDeviceCount = GetExcludedDeviceCount
var GetBlacklistDeviceInfoByIndex = GetExcludedDeviceInfoByIndex
var nvmlDeviceGetGpuInstancePossiblePlacements = nvmlDeviceGetGpuInstancePossiblePlacements_v1
var nvmlVgpuInstanceGetLicenseInfo = nvmlVgpuInstanceGetLicenseInfo_v1
var nvmlDeviceGetDriverModel = nvmlDeviceGetDriverModel_v1
// BlacklistDeviceInfo was replaced by ExcludedDeviceInfo
type BlacklistDeviceInfo = ExcludedDeviceInfo
@ -288,4 +289,8 @@ func (l *library) updateVersionedSymbols() {
if err == nil {
nvmlVgpuInstanceGetLicenseInfo = nvmlVgpuInstanceGetLicenseInfo_v2
}
err = l.dl.Lookup("nvmlDeviceGetDriverModel_v2")
if err == nil {
nvmlDeviceGetDriverModel = nvmlDeviceGetDriverModel_v2
}
}

File diff suppressed because it is too large Load Diff

View File

@ -20,9 +20,10 @@ import (
"fmt"
"sync"
"github.com/google/uuid"
"github.com/NVIDIA/go-nvml/pkg/nvml"
"github.com/NVIDIA/go-nvml/pkg/nvml/mock"
"github.com/google/uuid"
)
type Server struct {
@ -108,7 +109,7 @@ func NewDevice(index int) *Device {
},
GpuInstances: make(map[*GpuInstance]struct{}),
GpuInstanceCounter: 0,
MemoryInfo: nvml.Memory{42949672960, 0, 0},
MemoryInfo: nvml.Memory{Total: 42949672960, Free: 0, Used: 0},
}
device.setMockFuncs()
return device

View File

@ -27,6 +27,9 @@ var _ nvml.GpuInstance = &GpuInstance{}
// DestroyFunc: func() nvml.Return {
// panic("mock out the Destroy method")
// },
// GetActiveVgpusFunc: func() (nvml.ActiveVgpuInstanceInfo, nvml.Return) {
// panic("mock out the GetActiveVgpus method")
// },
// GetComputeInstanceByIdFunc: func(n int) (nvml.ComputeInstance, nvml.Return) {
// panic("mock out the GetComputeInstanceById method")
// },
@ -45,9 +48,30 @@ var _ nvml.GpuInstance = &GpuInstance{}
// GetComputeInstancesFunc: func(computeInstanceProfileInfo *nvml.ComputeInstanceProfileInfo) ([]nvml.ComputeInstance, nvml.Return) {
// panic("mock out the GetComputeInstances method")
// },
// GetCreatableVgpusFunc: func() (nvml.VgpuTypeIdInfo, nvml.Return) {
// panic("mock out the GetCreatableVgpus method")
// },
// GetInfoFunc: func() (nvml.GpuInstanceInfo, nvml.Return) {
// panic("mock out the GetInfo method")
// },
// GetVgpuHeterogeneousModeFunc: func() (nvml.VgpuHeterogeneousMode, nvml.Return) {
// panic("mock out the GetVgpuHeterogeneousMode method")
// },
// GetVgpuSchedulerLogFunc: func() (nvml.VgpuSchedulerLogInfo, nvml.Return) {
// panic("mock out the GetVgpuSchedulerLog method")
// },
// GetVgpuSchedulerStateFunc: func() (nvml.VgpuSchedulerStateInfo, nvml.Return) {
// panic("mock out the GetVgpuSchedulerState method")
// },
// GetVgpuTypeCreatablePlacementsFunc: func() (nvml.VgpuCreatablePlacementInfo, nvml.Return) {
// panic("mock out the GetVgpuTypeCreatablePlacements method")
// },
// SetVgpuHeterogeneousModeFunc: func(vgpuHeterogeneousMode *nvml.VgpuHeterogeneousMode) nvml.Return {
// panic("mock out the SetVgpuHeterogeneousMode method")
// },
// SetVgpuSchedulerStateFunc: func(vgpuSchedulerState *nvml.VgpuSchedulerState) nvml.Return {
// panic("mock out the SetVgpuSchedulerState method")
// },
// }
//
// // use mockedGpuInstance in code that requires nvml.GpuInstance
@ -64,6 +88,9 @@ type GpuInstance struct {
// DestroyFunc mocks the Destroy method.
DestroyFunc func() nvml.Return
// GetActiveVgpusFunc mocks the GetActiveVgpus method.
GetActiveVgpusFunc func() (nvml.ActiveVgpuInstanceInfo, nvml.Return)
// GetComputeInstanceByIdFunc mocks the GetComputeInstanceById method.
GetComputeInstanceByIdFunc func(n int) (nvml.ComputeInstance, nvml.Return)
@ -82,9 +109,30 @@ type GpuInstance struct {
// GetComputeInstancesFunc mocks the GetComputeInstances method.
GetComputeInstancesFunc func(computeInstanceProfileInfo *nvml.ComputeInstanceProfileInfo) ([]nvml.ComputeInstance, nvml.Return)
// GetCreatableVgpusFunc mocks the GetCreatableVgpus method.
GetCreatableVgpusFunc func() (nvml.VgpuTypeIdInfo, nvml.Return)
// GetInfoFunc mocks the GetInfo method.
GetInfoFunc func() (nvml.GpuInstanceInfo, nvml.Return)
// GetVgpuHeterogeneousModeFunc mocks the GetVgpuHeterogeneousMode method.
GetVgpuHeterogeneousModeFunc func() (nvml.VgpuHeterogeneousMode, nvml.Return)
// GetVgpuSchedulerLogFunc mocks the GetVgpuSchedulerLog method.
GetVgpuSchedulerLogFunc func() (nvml.VgpuSchedulerLogInfo, nvml.Return)
// GetVgpuSchedulerStateFunc mocks the GetVgpuSchedulerState method.
GetVgpuSchedulerStateFunc func() (nvml.VgpuSchedulerStateInfo, nvml.Return)
// GetVgpuTypeCreatablePlacementsFunc mocks the GetVgpuTypeCreatablePlacements method.
GetVgpuTypeCreatablePlacementsFunc func() (nvml.VgpuCreatablePlacementInfo, nvml.Return)
// SetVgpuHeterogeneousModeFunc mocks the SetVgpuHeterogeneousMode method.
SetVgpuHeterogeneousModeFunc func(vgpuHeterogeneousMode *nvml.VgpuHeterogeneousMode) nvml.Return
// SetVgpuSchedulerStateFunc mocks the SetVgpuSchedulerState method.
SetVgpuSchedulerStateFunc func(vgpuSchedulerState *nvml.VgpuSchedulerState) nvml.Return
// calls tracks calls to the methods.
calls struct {
// CreateComputeInstance holds details about calls to the CreateComputeInstance method.
@ -102,6 +150,9 @@ type GpuInstance struct {
// Destroy holds details about calls to the Destroy method.
Destroy []struct {
}
// GetActiveVgpus holds details about calls to the GetActiveVgpus method.
GetActiveVgpus []struct {
}
// GetComputeInstanceById holds details about calls to the GetComputeInstanceById method.
GetComputeInstanceById []struct {
// N is the n argument value.
@ -136,20 +187,53 @@ type GpuInstance struct {
// ComputeInstanceProfileInfo is the computeInstanceProfileInfo argument value.
ComputeInstanceProfileInfo *nvml.ComputeInstanceProfileInfo
}
// GetCreatableVgpus holds details about calls to the GetCreatableVgpus method.
GetCreatableVgpus []struct {
}
// GetInfo holds details about calls to the GetInfo method.
GetInfo []struct {
}
// GetVgpuHeterogeneousMode holds details about calls to the GetVgpuHeterogeneousMode method.
GetVgpuHeterogeneousMode []struct {
}
// GetVgpuSchedulerLog holds details about calls to the GetVgpuSchedulerLog method.
GetVgpuSchedulerLog []struct {
}
// GetVgpuSchedulerState holds details about calls to the GetVgpuSchedulerState method.
GetVgpuSchedulerState []struct {
}
// GetVgpuTypeCreatablePlacements holds details about calls to the GetVgpuTypeCreatablePlacements method.
GetVgpuTypeCreatablePlacements []struct {
}
// SetVgpuHeterogeneousMode holds details about calls to the SetVgpuHeterogeneousMode method.
SetVgpuHeterogeneousMode []struct {
// VgpuHeterogeneousMode is the vgpuHeterogeneousMode argument value.
VgpuHeterogeneousMode *nvml.VgpuHeterogeneousMode
}
// SetVgpuSchedulerState holds details about calls to the SetVgpuSchedulerState method.
SetVgpuSchedulerState []struct {
// VgpuSchedulerState is the vgpuSchedulerState argument value.
VgpuSchedulerState *nvml.VgpuSchedulerState
}
}
lockCreateComputeInstance sync.RWMutex
lockCreateComputeInstanceWithPlacement sync.RWMutex
lockDestroy sync.RWMutex
lockGetActiveVgpus sync.RWMutex
lockGetComputeInstanceById sync.RWMutex
lockGetComputeInstancePossiblePlacements sync.RWMutex
lockGetComputeInstanceProfileInfo sync.RWMutex
lockGetComputeInstanceProfileInfoV sync.RWMutex
lockGetComputeInstanceRemainingCapacity sync.RWMutex
lockGetComputeInstances sync.RWMutex
lockGetCreatableVgpus sync.RWMutex
lockGetInfo sync.RWMutex
lockGetVgpuHeterogeneousMode sync.RWMutex
lockGetVgpuSchedulerLog sync.RWMutex
lockGetVgpuSchedulerState sync.RWMutex
lockGetVgpuTypeCreatablePlacements sync.RWMutex
lockSetVgpuHeterogeneousMode sync.RWMutex
lockSetVgpuSchedulerState sync.RWMutex
}
// CreateComputeInstance calls CreateComputeInstanceFunc.
@ -247,6 +331,33 @@ func (mock *GpuInstance) DestroyCalls() []struct {
return calls
}
// GetActiveVgpus calls GetActiveVgpusFunc.
func (mock *GpuInstance) GetActiveVgpus() (nvml.ActiveVgpuInstanceInfo, nvml.Return) {
if mock.GetActiveVgpusFunc == nil {
panic("GpuInstance.GetActiveVgpusFunc: method is nil but GpuInstance.GetActiveVgpus was just called")
}
callInfo := struct {
}{}
mock.lockGetActiveVgpus.Lock()
mock.calls.GetActiveVgpus = append(mock.calls.GetActiveVgpus, callInfo)
mock.lockGetActiveVgpus.Unlock()
return mock.GetActiveVgpusFunc()
}
// GetActiveVgpusCalls gets all the calls that were made to GetActiveVgpus.
// Check the length with:
//
// len(mockedGpuInstance.GetActiveVgpusCalls())
func (mock *GpuInstance) GetActiveVgpusCalls() []struct {
} {
var calls []struct {
}
mock.lockGetActiveVgpus.RLock()
calls = mock.calls.GetActiveVgpus
mock.lockGetActiveVgpus.RUnlock()
return calls
}
// GetComputeInstanceById calls GetComputeInstanceByIdFunc.
func (mock *GpuInstance) GetComputeInstanceById(n int) (nvml.ComputeInstance, nvml.Return) {
if mock.GetComputeInstanceByIdFunc == nil {
@ -447,6 +558,33 @@ func (mock *GpuInstance) GetComputeInstancesCalls() []struct {
return calls
}
// GetCreatableVgpus calls GetCreatableVgpusFunc.
func (mock *GpuInstance) GetCreatableVgpus() (nvml.VgpuTypeIdInfo, nvml.Return) {
if mock.GetCreatableVgpusFunc == nil {
panic("GpuInstance.GetCreatableVgpusFunc: method is nil but GpuInstance.GetCreatableVgpus was just called")
}
callInfo := struct {
}{}
mock.lockGetCreatableVgpus.Lock()
mock.calls.GetCreatableVgpus = append(mock.calls.GetCreatableVgpus, callInfo)
mock.lockGetCreatableVgpus.Unlock()
return mock.GetCreatableVgpusFunc()
}
// GetCreatableVgpusCalls gets all the calls that were made to GetCreatableVgpus.
// Check the length with:
//
// len(mockedGpuInstance.GetCreatableVgpusCalls())
func (mock *GpuInstance) GetCreatableVgpusCalls() []struct {
} {
var calls []struct {
}
mock.lockGetCreatableVgpus.RLock()
calls = mock.calls.GetCreatableVgpus
mock.lockGetCreatableVgpus.RUnlock()
return calls
}
// GetInfo calls GetInfoFunc.
func (mock *GpuInstance) GetInfo() (nvml.GpuInstanceInfo, nvml.Return) {
if mock.GetInfoFunc == nil {
@ -473,3 +611,175 @@ func (mock *GpuInstance) GetInfoCalls() []struct {
mock.lockGetInfo.RUnlock()
return calls
}
// GetVgpuHeterogeneousMode calls GetVgpuHeterogeneousModeFunc.
func (mock *GpuInstance) GetVgpuHeterogeneousMode() (nvml.VgpuHeterogeneousMode, nvml.Return) {
if mock.GetVgpuHeterogeneousModeFunc == nil {
panic("GpuInstance.GetVgpuHeterogeneousModeFunc: method is nil but GpuInstance.GetVgpuHeterogeneousMode was just called")
}
callInfo := struct {
}{}
mock.lockGetVgpuHeterogeneousMode.Lock()
mock.calls.GetVgpuHeterogeneousMode = append(mock.calls.GetVgpuHeterogeneousMode, callInfo)
mock.lockGetVgpuHeterogeneousMode.Unlock()
return mock.GetVgpuHeterogeneousModeFunc()
}
// GetVgpuHeterogeneousModeCalls gets all the calls that were made to GetVgpuHeterogeneousMode.
// Check the length with:
//
// len(mockedGpuInstance.GetVgpuHeterogeneousModeCalls())
func (mock *GpuInstance) GetVgpuHeterogeneousModeCalls() []struct {
} {
var calls []struct {
}
mock.lockGetVgpuHeterogeneousMode.RLock()
calls = mock.calls.GetVgpuHeterogeneousMode
mock.lockGetVgpuHeterogeneousMode.RUnlock()
return calls
}
// GetVgpuSchedulerLog calls GetVgpuSchedulerLogFunc.
func (mock *GpuInstance) GetVgpuSchedulerLog() (nvml.VgpuSchedulerLogInfo, nvml.Return) {
if mock.GetVgpuSchedulerLogFunc == nil {
panic("GpuInstance.GetVgpuSchedulerLogFunc: method is nil but GpuInstance.GetVgpuSchedulerLog was just called")
}
callInfo := struct {
}{}
mock.lockGetVgpuSchedulerLog.Lock()
mock.calls.GetVgpuSchedulerLog = append(mock.calls.GetVgpuSchedulerLog, callInfo)
mock.lockGetVgpuSchedulerLog.Unlock()
return mock.GetVgpuSchedulerLogFunc()
}
// GetVgpuSchedulerLogCalls gets all the calls that were made to GetVgpuSchedulerLog.
// Check the length with:
//
// len(mockedGpuInstance.GetVgpuSchedulerLogCalls())
func (mock *GpuInstance) GetVgpuSchedulerLogCalls() []struct {
} {
var calls []struct {
}
mock.lockGetVgpuSchedulerLog.RLock()
calls = mock.calls.GetVgpuSchedulerLog
mock.lockGetVgpuSchedulerLog.RUnlock()
return calls
}
// GetVgpuSchedulerState calls GetVgpuSchedulerStateFunc.
func (mock *GpuInstance) GetVgpuSchedulerState() (nvml.VgpuSchedulerStateInfo, nvml.Return) {
if mock.GetVgpuSchedulerStateFunc == nil {
panic("GpuInstance.GetVgpuSchedulerStateFunc: method is nil but GpuInstance.GetVgpuSchedulerState was just called")
}
callInfo := struct {
}{}
mock.lockGetVgpuSchedulerState.Lock()
mock.calls.GetVgpuSchedulerState = append(mock.calls.GetVgpuSchedulerState, callInfo)
mock.lockGetVgpuSchedulerState.Unlock()
return mock.GetVgpuSchedulerStateFunc()
}
// GetVgpuSchedulerStateCalls gets all the calls that were made to GetVgpuSchedulerState.
// Check the length with:
//
// len(mockedGpuInstance.GetVgpuSchedulerStateCalls())
func (mock *GpuInstance) GetVgpuSchedulerStateCalls() []struct {
} {
var calls []struct {
}
mock.lockGetVgpuSchedulerState.RLock()
calls = mock.calls.GetVgpuSchedulerState
mock.lockGetVgpuSchedulerState.RUnlock()
return calls
}
// GetVgpuTypeCreatablePlacements calls GetVgpuTypeCreatablePlacementsFunc.
func (mock *GpuInstance) GetVgpuTypeCreatablePlacements() (nvml.VgpuCreatablePlacementInfo, nvml.Return) {
if mock.GetVgpuTypeCreatablePlacementsFunc == nil {
panic("GpuInstance.GetVgpuTypeCreatablePlacementsFunc: method is nil but GpuInstance.GetVgpuTypeCreatablePlacements was just called")
}
callInfo := struct {
}{}
mock.lockGetVgpuTypeCreatablePlacements.Lock()
mock.calls.GetVgpuTypeCreatablePlacements = append(mock.calls.GetVgpuTypeCreatablePlacements, callInfo)
mock.lockGetVgpuTypeCreatablePlacements.Unlock()
return mock.GetVgpuTypeCreatablePlacementsFunc()
}
// GetVgpuTypeCreatablePlacementsCalls gets all the calls that were made to GetVgpuTypeCreatablePlacements.
// Check the length with:
//
// len(mockedGpuInstance.GetVgpuTypeCreatablePlacementsCalls())
func (mock *GpuInstance) GetVgpuTypeCreatablePlacementsCalls() []struct {
} {
var calls []struct {
}
mock.lockGetVgpuTypeCreatablePlacements.RLock()
calls = mock.calls.GetVgpuTypeCreatablePlacements
mock.lockGetVgpuTypeCreatablePlacements.RUnlock()
return calls
}
// SetVgpuHeterogeneousMode calls SetVgpuHeterogeneousModeFunc.
func (mock *GpuInstance) SetVgpuHeterogeneousMode(vgpuHeterogeneousMode *nvml.VgpuHeterogeneousMode) nvml.Return {
if mock.SetVgpuHeterogeneousModeFunc == nil {
panic("GpuInstance.SetVgpuHeterogeneousModeFunc: method is nil but GpuInstance.SetVgpuHeterogeneousMode was just called")
}
callInfo := struct {
VgpuHeterogeneousMode *nvml.VgpuHeterogeneousMode
}{
VgpuHeterogeneousMode: vgpuHeterogeneousMode,
}
mock.lockSetVgpuHeterogeneousMode.Lock()
mock.calls.SetVgpuHeterogeneousMode = append(mock.calls.SetVgpuHeterogeneousMode, callInfo)
mock.lockSetVgpuHeterogeneousMode.Unlock()
return mock.SetVgpuHeterogeneousModeFunc(vgpuHeterogeneousMode)
}
// SetVgpuHeterogeneousModeCalls gets all the calls that were made to SetVgpuHeterogeneousMode.
// Check the length with:
//
// len(mockedGpuInstance.SetVgpuHeterogeneousModeCalls())
func (mock *GpuInstance) SetVgpuHeterogeneousModeCalls() []struct {
VgpuHeterogeneousMode *nvml.VgpuHeterogeneousMode
} {
var calls []struct {
VgpuHeterogeneousMode *nvml.VgpuHeterogeneousMode
}
mock.lockSetVgpuHeterogeneousMode.RLock()
calls = mock.calls.SetVgpuHeterogeneousMode
mock.lockSetVgpuHeterogeneousMode.RUnlock()
return calls
}
// SetVgpuSchedulerState calls SetVgpuSchedulerStateFunc.
func (mock *GpuInstance) SetVgpuSchedulerState(vgpuSchedulerState *nvml.VgpuSchedulerState) nvml.Return {
if mock.SetVgpuSchedulerStateFunc == nil {
panic("GpuInstance.SetVgpuSchedulerStateFunc: method is nil but GpuInstance.SetVgpuSchedulerState was just called")
}
callInfo := struct {
VgpuSchedulerState *nvml.VgpuSchedulerState
}{
VgpuSchedulerState: vgpuSchedulerState,
}
mock.lockSetVgpuSchedulerState.Lock()
mock.calls.SetVgpuSchedulerState = append(mock.calls.SetVgpuSchedulerState, callInfo)
mock.lockSetVgpuSchedulerState.Unlock()
return mock.SetVgpuSchedulerStateFunc(vgpuSchedulerState)
}
// SetVgpuSchedulerStateCalls gets all the calls that were made to SetVgpuSchedulerState.
// Check the length with:
//
// len(mockedGpuInstance.SetVgpuSchedulerStateCalls())
func (mock *GpuInstance) SetVgpuSchedulerStateCalls() []struct {
VgpuSchedulerState *nvml.VgpuSchedulerState
} {
var calls []struct {
VgpuSchedulerState *nvml.VgpuSchedulerState
}
mock.lockSetVgpuSchedulerState.RLock()
calls = mock.calls.SetVgpuSchedulerState
mock.lockSetVgpuSchedulerState.RUnlock()
return calls
}

File diff suppressed because it is too large Load Diff

View File

@ -72,6 +72,9 @@ var _ nvml.VgpuInstance = &VgpuInstance{}
// GetMetadataFunc: func() (nvml.VgpuMetadata, nvml.Return) {
// panic("mock out the GetMetadata method")
// },
// GetRuntimeStateSizeFunc: func() (nvml.VgpuRuntimeState, nvml.Return) {
// panic("mock out the GetRuntimeStateSize method")
// },
// GetTypeFunc: func() (nvml.VgpuTypeId, nvml.Return) {
// panic("mock out the GetType method")
// },
@ -148,6 +151,9 @@ type VgpuInstance struct {
// GetMetadataFunc mocks the GetMetadata method.
GetMetadataFunc func() (nvml.VgpuMetadata, nvml.Return)
// GetRuntimeStateSizeFunc mocks the GetRuntimeStateSize method.
GetRuntimeStateSizeFunc func() (nvml.VgpuRuntimeState, nvml.Return)
// GetTypeFunc mocks the GetType method.
GetTypeFunc func() (nvml.VgpuTypeId, nvml.Return)
@ -221,6 +227,9 @@ type VgpuInstance struct {
// GetMetadata holds details about calls to the GetMetadata method.
GetMetadata []struct {
}
// GetRuntimeStateSize holds details about calls to the GetRuntimeStateSize method.
GetRuntimeStateSize []struct {
}
// GetType holds details about calls to the GetType method.
GetType []struct {
}
@ -257,6 +266,7 @@ type VgpuInstance struct {
lockGetLicenseStatus sync.RWMutex
lockGetMdevUUID sync.RWMutex
lockGetMetadata sync.RWMutex
lockGetRuntimeStateSize sync.RWMutex
lockGetType sync.RWMutex
lockGetUUID sync.RWMutex
lockGetVmDriverVersion sync.RWMutex
@ -755,6 +765,33 @@ func (mock *VgpuInstance) GetMetadataCalls() []struct {
return calls
}
// GetRuntimeStateSize calls GetRuntimeStateSizeFunc.
func (mock *VgpuInstance) GetRuntimeStateSize() (nvml.VgpuRuntimeState, nvml.Return) {
if mock.GetRuntimeStateSizeFunc == nil {
panic("VgpuInstance.GetRuntimeStateSizeFunc: method is nil but VgpuInstance.GetRuntimeStateSize was just called")
}
callInfo := struct {
}{}
mock.lockGetRuntimeStateSize.Lock()
mock.calls.GetRuntimeStateSize = append(mock.calls.GetRuntimeStateSize, callInfo)
mock.lockGetRuntimeStateSize.Unlock()
return mock.GetRuntimeStateSizeFunc()
}
// GetRuntimeStateSizeCalls gets all the calls that were made to GetRuntimeStateSize.
// Check the length with:
//
// len(mockedVgpuInstance.GetRuntimeStateSizeCalls())
func (mock *VgpuInstance) GetRuntimeStateSizeCalls() []struct {
} {
var calls []struct {
}
mock.lockGetRuntimeStateSize.RLock()
calls = mock.calls.GetRuntimeStateSize
mock.lockGetRuntimeStateSize.RUnlock()
return calls
}
// GetType calls GetTypeFunc.
func (mock *VgpuInstance) GetType() (nvml.VgpuTypeId, nvml.Return) {
if mock.GetTypeFunc == nil {

View File

@ -18,6 +18,9 @@ var _ nvml.VgpuTypeId = &VgpuTypeId{}
//
// // make and configure a mocked nvml.VgpuTypeId
// mockedVgpuTypeId := &VgpuTypeId{
// GetBAR1InfoFunc: func() (nvml.VgpuTypeBar1Info, nvml.Return) {
// panic("mock out the GetBAR1Info method")
// },
// GetCapabilitiesFunc: func(vgpuCapability nvml.VgpuCapability) (bool, nvml.Return) {
// panic("mock out the GetCapabilities method")
// },
@ -67,6 +70,9 @@ var _ nvml.VgpuTypeId = &VgpuTypeId{}
//
// }
type VgpuTypeId struct {
// GetBAR1InfoFunc mocks the GetBAR1Info method.
GetBAR1InfoFunc func() (nvml.VgpuTypeBar1Info, nvml.Return)
// GetCapabilitiesFunc mocks the GetCapabilities method.
GetCapabilitiesFunc func(vgpuCapability nvml.VgpuCapability) (bool, nvml.Return)
@ -111,6 +117,9 @@ type VgpuTypeId struct {
// calls tracks calls to the methods.
calls struct {
// GetBAR1Info holds details about calls to the GetBAR1Info method.
GetBAR1Info []struct {
}
// GetCapabilities holds details about calls to the GetCapabilities method.
GetCapabilities []struct {
// VgpuCapability is the vgpuCapability argument value.
@ -164,6 +173,7 @@ type VgpuTypeId struct {
Device nvml.Device
}
}
lockGetBAR1Info sync.RWMutex
lockGetCapabilities sync.RWMutex
lockGetClass sync.RWMutex
lockGetCreatablePlacements sync.RWMutex
@ -180,6 +190,33 @@ type VgpuTypeId struct {
lockGetSupportedPlacements sync.RWMutex
}
// GetBAR1Info calls GetBAR1InfoFunc.
func (mock *VgpuTypeId) GetBAR1Info() (nvml.VgpuTypeBar1Info, nvml.Return) {
if mock.GetBAR1InfoFunc == nil {
panic("VgpuTypeId.GetBAR1InfoFunc: method is nil but VgpuTypeId.GetBAR1Info was just called")
}
callInfo := struct {
}{}
mock.lockGetBAR1Info.Lock()
mock.calls.GetBAR1Info = append(mock.calls.GetBAR1Info, callInfo)
mock.lockGetBAR1Info.Unlock()
return mock.GetBAR1InfoFunc()
}
// GetBAR1InfoCalls gets all the calls that were made to GetBAR1Info.
// Check the length with:
//
// len(mockedVgpuTypeId.GetBAR1InfoCalls())
func (mock *VgpuTypeId) GetBAR1InfoCalls() []struct {
} {
var calls []struct {
}
mock.lockGetBAR1Info.RLock()
calls = mock.calls.GetBAR1Info
mock.lockGetBAR1Info.RUnlock()
return calls
}
// GetCapabilities calls GetCapabilitiesFunc.
func (mock *VgpuTypeId) GetCapabilities(vgpuCapability nvml.VgpuCapability) (bool, nvml.Return) {
if mock.GetCapabilitiesFunc == nil {

View File

@ -121,6 +121,15 @@ func nvmlSystemGetTopologyGpuSet(CpuNumber uint32, Count *uint32, DeviceArray *n
return __v
}
// nvmlSystemGetDriverBranch function as declared in nvml/nvml.h
func nvmlSystemGetDriverBranch(BranchInfo *SystemDriverBranchInfo, Length uint32) Return {
cBranchInfo, _ := (*C.nvmlSystemDriverBranchInfo_t)(unsafe.Pointer(BranchInfo)), cgoAllocsUnknown
cLength, _ := (C.uint)(Length), cgoAllocsUnknown
__ret := C.nvmlSystemGetDriverBranch(cBranchInfo, cLength)
__v := (Return)(__ret)
return __v
}
// nvmlUnitGetCount function as declared in nvml/nvml.h
func nvmlUnitGetCount(UnitCount *uint32) Return {
cUnitCount, _ := (*C.uint)(unsafe.Pointer(UnitCount)), cgoAllocsUnknown
@ -238,6 +247,15 @@ func nvmlDeviceGetHandleByUUID(Uuid string, nvmlDevice *nvmlDevice) Return {
return __v
}
// nvmlDeviceGetHandleByUUIDV function as declared in nvml/nvml.h
func nvmlDeviceGetHandleByUUIDV(Uuid *UUID, nvmlDevice *nvmlDevice) Return {
cUuid, _ := (*C.nvmlUUID_t)(unsafe.Pointer(Uuid)), cgoAllocsUnknown
cnvmlDevice, _ := (*C.nvmlDevice_t)(unsafe.Pointer(nvmlDevice)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetHandleByUUIDV(cUuid, cnvmlDevice)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetHandleByPciBusId_v2 function as declared in nvml/nvml.h
func nvmlDeviceGetHandleByPciBusId_v2(PciBusId string, nvmlDevice *nvmlDevice) Return {
cPciBusId, _ := unpackPCharString(PciBusId)
@ -698,6 +716,15 @@ func nvmlDeviceGetFanSpeed_v2(nvmlDevice nvmlDevice, Fan uint32, Speed *uint32)
return __v
}
// nvmlDeviceGetFanSpeedRPM function as declared in nvml/nvml.h
func nvmlDeviceGetFanSpeedRPM(nvmlDevice nvmlDevice, FanSpeed *FanSpeedInfo) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cFanSpeed, _ := (*C.nvmlFanSpeedInfo_t)(unsafe.Pointer(FanSpeed)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetFanSpeedRPM(cnvmlDevice, cFanSpeed)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetTargetFanSpeed function as declared in nvml/nvml.h
func nvmlDeviceGetTargetFanSpeed(nvmlDevice nvmlDevice, Fan uint32, TargetSpeed *uint32) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
@ -747,6 +774,24 @@ func nvmlDeviceGetTemperature(nvmlDevice nvmlDevice, SensorType TemperatureSenso
return __v
}
// nvmlDeviceGetCoolerInfo function as declared in nvml/nvml.h
func nvmlDeviceGetCoolerInfo(nvmlDevice nvmlDevice, CoolerInfo *CoolerInfo) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cCoolerInfo, _ := (*C.nvmlCoolerInfo_t)(unsafe.Pointer(CoolerInfo)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetCoolerInfo(cnvmlDevice, cCoolerInfo)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetTemperatureV function as declared in nvml/nvml.h
func nvmlDeviceGetTemperatureV(nvmlDevice nvmlDevice, Temperature *Temperature) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cTemperature, _ := (*C.nvmlTemperature_t)(unsafe.Pointer(Temperature)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetTemperatureV(cnvmlDevice, cTemperature)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetTemperatureThreshold function as declared in nvml/nvml.h
func nvmlDeviceGetTemperatureThreshold(nvmlDevice nvmlDevice, ThresholdType TemperatureThresholds, Temp *uint32) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
@ -757,6 +802,15 @@ func nvmlDeviceGetTemperatureThreshold(nvmlDevice nvmlDevice, ThresholdType Temp
return __v
}
// nvmlDeviceGetMarginTemperature function as declared in nvml/nvml.h
func nvmlDeviceGetMarginTemperature(nvmlDevice nvmlDevice, MarginTempInfo *MarginTemperature) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cMarginTempInfo, _ := (*C.nvmlMarginTemperature_t)(unsafe.Pointer(MarginTempInfo)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetMarginTemperature(cnvmlDevice, cMarginTempInfo)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetThermalSettings function as declared in nvml/nvml.h
func nvmlDeviceGetThermalSettings(nvmlDevice nvmlDevice, SensorIndex uint32, PThermalSettings *GpuThermalSettings) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
@ -881,6 +935,42 @@ func nvmlDeviceGetMemClkMinMaxVfOffset(nvmlDevice nvmlDevice, MinOffset *int32,
return __v
}
// nvmlDeviceGetClockOffsets function as declared in nvml/nvml.h
func nvmlDeviceGetClockOffsets(nvmlDevice nvmlDevice, Info *ClockOffset) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cInfo, _ := (*C.nvmlClockOffset_t)(unsafe.Pointer(Info)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetClockOffsets(cnvmlDevice, cInfo)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceSetClockOffsets function as declared in nvml/nvml.h
func nvmlDeviceSetClockOffsets(nvmlDevice nvmlDevice, Info *ClockOffset) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cInfo, _ := (*C.nvmlClockOffset_t)(unsafe.Pointer(Info)), cgoAllocsUnknown
__ret := C.nvmlDeviceSetClockOffsets(cnvmlDevice, cInfo)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetPerformanceModes function as declared in nvml/nvml.h
func nvmlDeviceGetPerformanceModes(nvmlDevice nvmlDevice, PerfModes *DevicePerfModes) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cPerfModes, _ := (*C.nvmlDevicePerfModes_t)(unsafe.Pointer(PerfModes)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetPerformanceModes(cnvmlDevice, cPerfModes)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetCurrentClockFreqs function as declared in nvml/nvml.h
func nvmlDeviceGetCurrentClockFreqs(nvmlDevice nvmlDevice, CurrentClockFreqs *DeviceCurrentClockFreqs) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cCurrentClockFreqs, _ := (*C.nvmlDeviceCurrentClockFreqs_t)(unsafe.Pointer(CurrentClockFreqs)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetCurrentClockFreqs(cnvmlDevice, cCurrentClockFreqs)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetPowerManagementMode function as declared in nvml/nvml.h
func nvmlDeviceGetPowerManagementMode(nvmlDevice nvmlDevice, Mode *EnableState) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
@ -992,6 +1082,25 @@ func nvmlDeviceGetCudaComputeCapability(nvmlDevice nvmlDevice, Major *int32, Min
return __v
}
// nvmlDeviceGetDramEncryptionMode function as declared in nvml/nvml.h
func nvmlDeviceGetDramEncryptionMode(nvmlDevice nvmlDevice, Current *DramEncryptionInfo, Pending *DramEncryptionInfo) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cCurrent, _ := (*C.nvmlDramEncryptionInfo_t)(unsafe.Pointer(Current)), cgoAllocsUnknown
cPending, _ := (*C.nvmlDramEncryptionInfo_t)(unsafe.Pointer(Pending)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetDramEncryptionMode(cnvmlDevice, cCurrent, cPending)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceSetDramEncryptionMode function as declared in nvml/nvml.h
func nvmlDeviceSetDramEncryptionMode(nvmlDevice nvmlDevice, DramEncryption *DramEncryptionInfo) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cDramEncryption, _ := (*C.nvmlDramEncryptionInfo_t)(unsafe.Pointer(DramEncryption)), cgoAllocsUnknown
__ret := C.nvmlDeviceSetDramEncryptionMode(cnvmlDevice, cDramEncryption)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetEccMode function as declared in nvml/nvml.h
func nvmlDeviceGetEccMode(nvmlDevice nvmlDevice, Current *EnableState, Pending *EnableState) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
@ -1162,12 +1271,12 @@ func nvmlDeviceGetFBCSessions(nvmlDevice nvmlDevice, SessionCount *uint32, Sessi
return __v
}
// nvmlDeviceGetDriverModel function as declared in nvml/nvml.h
func nvmlDeviceGetDriverModel(nvmlDevice nvmlDevice, Current *DriverModel, Pending *DriverModel) Return {
// nvmlDeviceGetDriverModel_v2 function as declared in nvml/nvml.h
func nvmlDeviceGetDriverModel_v2(nvmlDevice nvmlDevice, Current *DriverModel, Pending *DriverModel) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cCurrent, _ := (*C.nvmlDriverModel_t)(unsafe.Pointer(Current)), cgoAllocsUnknown
cPending, _ := (*C.nvmlDriverModel_t)(unsafe.Pointer(Pending)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetDriverModel(cnvmlDevice, cCurrent, cPending)
__ret := C.nvmlDeviceGetDriverModel_v2(cnvmlDevice, cCurrent, cPending)
__v := (Return)(__ret)
return __v
}
@ -1440,6 +1549,31 @@ func nvmlSystemGetConfComputeKeyRotationThresholdInfo(PKeyRotationThrInfo *ConfC
return __v
}
// nvmlDeviceSetConfComputeUnprotectedMemSize function as declared in nvml/nvml.h
func nvmlDeviceSetConfComputeUnprotectedMemSize(nvmlDevice nvmlDevice, SizeKiB uint64) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cSizeKiB, _ := (C.ulonglong)(SizeKiB), cgoAllocsUnknown
__ret := C.nvmlDeviceSetConfComputeUnprotectedMemSize(cnvmlDevice, cSizeKiB)
__v := (Return)(__ret)
return __v
}
// nvmlSystemSetConfComputeGpusReadyState function as declared in nvml/nvml.h
func nvmlSystemSetConfComputeGpusReadyState(IsAcceptingWork uint32) Return {
cIsAcceptingWork, _ := (C.uint)(IsAcceptingWork), cgoAllocsUnknown
__ret := C.nvmlSystemSetConfComputeGpusReadyState(cIsAcceptingWork)
__v := (Return)(__ret)
return __v
}
// nvmlSystemSetConfComputeKeyRotationThresholdInfo function as declared in nvml/nvml.h
func nvmlSystemSetConfComputeKeyRotationThresholdInfo(PKeyRotationThrInfo *ConfComputeSetKeyRotationThresholdInfo) Return {
cPKeyRotationThrInfo, _ := (*C.nvmlConfComputeSetKeyRotationThresholdInfo_t)(unsafe.Pointer(PKeyRotationThrInfo)), cgoAllocsUnknown
__ret := C.nvmlSystemSetConfComputeKeyRotationThresholdInfo(cPKeyRotationThrInfo)
__v := (Return)(__ret)
return __v
}
// nvmlSystemGetConfComputeSettings function as declared in nvml/nvml.h
func nvmlSystemGetConfComputeSettings(Settings *SystemConfComputeSettings) Return {
cSettings, _ := (*C.nvmlSystemConfComputeSettings_t)(unsafe.Pointer(Settings)), cgoAllocsUnknown
@ -1467,6 +1601,15 @@ func nvmlDeviceGetGspFirmwareMode(nvmlDevice nvmlDevice, IsEnabled *uint32, Defa
return __v
}
// nvmlDeviceGetSramEccErrorStatus function as declared in nvml/nvml.h
func nvmlDeviceGetSramEccErrorStatus(nvmlDevice nvmlDevice, Status *EccSramErrorStatus) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cStatus, _ := (*C.nvmlEccSramErrorStatus_t)(unsafe.Pointer(Status)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetSramEccErrorStatus(cnvmlDevice, cStatus)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetAccountingMode function as declared in nvml/nvml.h
func nvmlDeviceGetAccountingMode(nvmlDevice nvmlDevice, Mode *EnableState) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
@ -1596,6 +1739,15 @@ func nvmlDeviceGetProcessesUtilizationInfo(nvmlDevice nvmlDevice, ProcesesUtilIn
return __v
}
// nvmlDeviceGetPlatformInfo function as declared in nvml/nvml.h
func nvmlDeviceGetPlatformInfo(nvmlDevice nvmlDevice, PlatformInfo *PlatformInfo) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cPlatformInfo, _ := (*C.nvmlPlatformInfo_t)(unsafe.Pointer(PlatformInfo)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetPlatformInfo(cnvmlDevice, cPlatformInfo)
__v := (Return)(__ret)
return __v
}
// nvmlUnitSetLedState function as declared in nvml/nvml.h
func nvmlUnitSetLedState(nvmlUnit nvmlUnit, Color LedColor) Return {
cnvmlUnit, _ := *(*C.nvmlUnit_t)(unsafe.Pointer(&nvmlUnit)), cgoAllocsUnknown
@ -1809,31 +1961,6 @@ func nvmlDeviceSetMemClkVfOffset(nvmlDevice nvmlDevice, Offset int32) Return {
return __v
}
// nvmlDeviceSetConfComputeUnprotectedMemSize function as declared in nvml/nvml.h
func nvmlDeviceSetConfComputeUnprotectedMemSize(nvmlDevice nvmlDevice, SizeKiB uint64) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cSizeKiB, _ := (C.ulonglong)(SizeKiB), cgoAllocsUnknown
__ret := C.nvmlDeviceSetConfComputeUnprotectedMemSize(cnvmlDevice, cSizeKiB)
__v := (Return)(__ret)
return __v
}
// nvmlSystemSetConfComputeGpusReadyState function as declared in nvml/nvml.h
func nvmlSystemSetConfComputeGpusReadyState(IsAcceptingWork uint32) Return {
cIsAcceptingWork, _ := (C.uint)(IsAcceptingWork), cgoAllocsUnknown
__ret := C.nvmlSystemSetConfComputeGpusReadyState(cIsAcceptingWork)
__v := (Return)(__ret)
return __v
}
// nvmlSystemSetConfComputeKeyRotationThresholdInfo function as declared in nvml/nvml.h
func nvmlSystemSetConfComputeKeyRotationThresholdInfo(PKeyRotationThrInfo *ConfComputeSetKeyRotationThresholdInfo) Return {
cPKeyRotationThrInfo, _ := (*C.nvmlConfComputeSetKeyRotationThresholdInfo_t)(unsafe.Pointer(PKeyRotationThrInfo)), cgoAllocsUnknown
__ret := C.nvmlSystemSetConfComputeKeyRotationThresholdInfo(cPKeyRotationThrInfo)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceSetAccountingMode function as declared in nvml/nvml.h
func nvmlDeviceSetAccountingMode(nvmlDevice nvmlDevice, Mode EnableState) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
@ -1851,6 +1978,15 @@ func nvmlDeviceClearAccountingPids(nvmlDevice nvmlDevice) Return {
return __v
}
// nvmlDeviceSetPowerManagementLimit_v2 function as declared in nvml/nvml.h
func nvmlDeviceSetPowerManagementLimit_v2(nvmlDevice nvmlDevice, PowerValue *PowerValue_v2) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cPowerValue, _ := (*C.nvmlPowerValue_v2_t)(unsafe.Pointer(PowerValue)), cgoAllocsUnknown
__ret := C.nvmlDeviceSetPowerManagementLimit_v2(cnvmlDevice, cPowerValue)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetNvLinkState function as declared in nvml/nvml.h
func nvmlDeviceGetNvLinkState(nvmlDevice nvmlDevice, Link uint32, IsActive *EnableState) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
@ -1978,6 +2114,58 @@ func nvmlDeviceGetNvLinkRemoteDeviceType(nvmlDevice nvmlDevice, Link uint32, PNv
return __v
}
// nvmlDeviceSetNvLinkDeviceLowPowerThreshold function as declared in nvml/nvml.h
func nvmlDeviceSetNvLinkDeviceLowPowerThreshold(nvmlDevice nvmlDevice, Info *NvLinkPowerThres) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cInfo, _ := (*C.nvmlNvLinkPowerThres_t)(unsafe.Pointer(Info)), cgoAllocsUnknown
__ret := C.nvmlDeviceSetNvLinkDeviceLowPowerThreshold(cnvmlDevice, cInfo)
__v := (Return)(__ret)
return __v
}
// nvmlSystemSetNvlinkBwMode function as declared in nvml/nvml.h
func nvmlSystemSetNvlinkBwMode(NvlinkBwMode uint32) Return {
cNvlinkBwMode, _ := (C.uint)(NvlinkBwMode), cgoAllocsUnknown
__ret := C.nvmlSystemSetNvlinkBwMode(cNvlinkBwMode)
__v := (Return)(__ret)
return __v
}
// nvmlSystemGetNvlinkBwMode function as declared in nvml/nvml.h
func nvmlSystemGetNvlinkBwMode(NvlinkBwMode *uint32) Return {
cNvlinkBwMode, _ := (*C.uint)(unsafe.Pointer(NvlinkBwMode)), cgoAllocsUnknown
__ret := C.nvmlSystemGetNvlinkBwMode(cNvlinkBwMode)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetNvlinkSupportedBwModes function as declared in nvml/nvml.h
func nvmlDeviceGetNvlinkSupportedBwModes(nvmlDevice nvmlDevice, SupportedBwMode *NvlinkSupportedBwModes) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cSupportedBwMode, _ := (*C.nvmlNvlinkSupportedBwModes_t)(unsafe.Pointer(SupportedBwMode)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetNvlinkSupportedBwModes(cnvmlDevice, cSupportedBwMode)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetNvlinkBwMode function as declared in nvml/nvml.h
func nvmlDeviceGetNvlinkBwMode(nvmlDevice nvmlDevice, GetBwMode *NvlinkGetBwMode) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cGetBwMode, _ := (*C.nvmlNvlinkGetBwMode_t)(unsafe.Pointer(GetBwMode)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetNvlinkBwMode(cnvmlDevice, cGetBwMode)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceSetNvlinkBwMode function as declared in nvml/nvml.h
func nvmlDeviceSetNvlinkBwMode(nvmlDevice nvmlDevice, SetBwMode *NvlinkSetBwMode) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cSetBwMode, _ := (*C.nvmlNvlinkSetBwMode_t)(unsafe.Pointer(SetBwMode)), cgoAllocsUnknown
__ret := C.nvmlDeviceSetNvlinkBwMode(cnvmlDevice, cSetBwMode)
__v := (Return)(__ret)
return __v
}
// nvmlEventSetCreate function as declared in nvml/nvml.h
func nvmlEventSetCreate(Set *nvmlEventSet) Return {
cSet, _ := (*C.nvmlEventSet_t)(unsafe.Pointer(Set)), cgoAllocsUnknown
@ -2023,6 +2211,38 @@ func nvmlEventSetFree(Set nvmlEventSet) Return {
return __v
}
// nvmlSystemEventSetCreate function as declared in nvml/nvml.h
func nvmlSystemEventSetCreate(Request *SystemEventSetCreateRequest) Return {
cRequest, _ := (*C.nvmlSystemEventSetCreateRequest_t)(unsafe.Pointer(Request)), cgoAllocsUnknown
__ret := C.nvmlSystemEventSetCreate(cRequest)
__v := (Return)(__ret)
return __v
}
// nvmlSystemEventSetFree function as declared in nvml/nvml.h
func nvmlSystemEventSetFree(Request *SystemEventSetFreeRequest) Return {
cRequest, _ := (*C.nvmlSystemEventSetFreeRequest_t)(unsafe.Pointer(Request)), cgoAllocsUnknown
__ret := C.nvmlSystemEventSetFree(cRequest)
__v := (Return)(__ret)
return __v
}
// nvmlSystemRegisterEvents function as declared in nvml/nvml.h
func nvmlSystemRegisterEvents(Request *SystemRegisterEventRequest) Return {
cRequest, _ := (*C.nvmlSystemRegisterEventRequest_t)(unsafe.Pointer(Request)), cgoAllocsUnknown
__ret := C.nvmlSystemRegisterEvents(cRequest)
__v := (Return)(__ret)
return __v
}
// nvmlSystemEventSetWait function as declared in nvml/nvml.h
func nvmlSystemEventSetWait(Request *SystemEventSetWaitRequest) Return {
cRequest, _ := (*C.nvmlSystemEventSetWaitRequest_t)(unsafe.Pointer(Request)), cgoAllocsUnknown
__ret := C.nvmlSystemEventSetWait(cRequest)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceModifyDrainState function as declared in nvml/nvml.h
func nvmlDeviceModifyDrainState(PciInfo *PciInfo, NewState EnableState) Return {
cPciInfo, _ := (*C.nvmlPciInfo_t)(unsafe.Pointer(PciInfo)), cgoAllocsUnknown
@ -2171,6 +2391,15 @@ func nvmlVgpuTypeGetFbReservation(nvmlVgpuTypeId nvmlVgpuTypeId, FbReservation *
return __v
}
// nvmlVgpuInstanceGetRuntimeStateSize function as declared in nvml/nvml.h
func nvmlVgpuInstanceGetRuntimeStateSize(nvmlVgpuInstance nvmlVgpuInstance, PState *VgpuRuntimeState) Return {
cnvmlVgpuInstance, _ := (C.nvmlVgpuInstance_t)(nvmlVgpuInstance), cgoAllocsUnknown
cPState, _ := (*C.nvmlVgpuRuntimeState_t)(unsafe.Pointer(PState)), cgoAllocsUnknown
__ret := C.nvmlVgpuInstanceGetRuntimeStateSize(cnvmlVgpuInstance, cPState)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceSetVgpuCapabilities function as declared in nvml/nvml.h
func nvmlDeviceSetVgpuCapabilities(nvmlDevice nvmlDevice, Capability DeviceVgpuCapability, State EnableState) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
@ -2335,6 +2564,15 @@ func nvmlVgpuTypeGetMaxInstancesPerVm(nvmlVgpuTypeId nvmlVgpuTypeId, VgpuInstanc
return __v
}
// nvmlVgpuTypeGetBAR1Info function as declared in nvml/nvml.h
func nvmlVgpuTypeGetBAR1Info(nvmlVgpuTypeId nvmlVgpuTypeId, Bar1Info *VgpuTypeBar1Info) Return {
cnvmlVgpuTypeId, _ := (C.nvmlVgpuTypeId_t)(nvmlVgpuTypeId), cgoAllocsUnknown
cBar1Info, _ := (*C.nvmlVgpuTypeBar1Info_t)(unsafe.Pointer(Bar1Info)), cgoAllocsUnknown
__ret := C.nvmlVgpuTypeGetBAR1Info(cnvmlVgpuTypeId, cBar1Info)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetActiveVgpus function as declared in nvml/nvml.h
func nvmlDeviceGetActiveVgpus(nvmlDevice nvmlDevice, VgpuCount *uint32, VgpuInstances *nvmlVgpuInstance) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
@ -2518,6 +2756,86 @@ func nvmlVgpuInstanceGetMdevUUID(nvmlVgpuInstance nvmlVgpuInstance, MdevUuid *by
return __v
}
// nvmlGpuInstanceGetCreatableVgpus function as declared in nvml/nvml.h
func nvmlGpuInstanceGetCreatableVgpus(nvmlGpuInstance nvmlGpuInstance, PVgpus *VgpuTypeIdInfo) Return {
cnvmlGpuInstance, _ := *(*C.nvmlGpuInstance_t)(unsafe.Pointer(&nvmlGpuInstance)), cgoAllocsUnknown
cPVgpus, _ := (*C.nvmlVgpuTypeIdInfo_t)(unsafe.Pointer(PVgpus)), cgoAllocsUnknown
__ret := C.nvmlGpuInstanceGetCreatableVgpus(cnvmlGpuInstance, cPVgpus)
__v := (Return)(__ret)
return __v
}
// nvmlVgpuTypeGetMaxInstancesPerGpuInstance function as declared in nvml/nvml.h
func nvmlVgpuTypeGetMaxInstancesPerGpuInstance(PMaxInstance *VgpuTypeMaxInstance) Return {
cPMaxInstance, _ := (*C.nvmlVgpuTypeMaxInstance_t)(unsafe.Pointer(PMaxInstance)), cgoAllocsUnknown
__ret := C.nvmlVgpuTypeGetMaxInstancesPerGpuInstance(cPMaxInstance)
__v := (Return)(__ret)
return __v
}
// nvmlGpuInstanceGetActiveVgpus function as declared in nvml/nvml.h
func nvmlGpuInstanceGetActiveVgpus(nvmlGpuInstance nvmlGpuInstance, PVgpuInstanceInfo *ActiveVgpuInstanceInfo) Return {
cnvmlGpuInstance, _ := *(*C.nvmlGpuInstance_t)(unsafe.Pointer(&nvmlGpuInstance)), cgoAllocsUnknown
cPVgpuInstanceInfo, _ := (*C.nvmlActiveVgpuInstanceInfo_t)(unsafe.Pointer(PVgpuInstanceInfo)), cgoAllocsUnknown
__ret := C.nvmlGpuInstanceGetActiveVgpus(cnvmlGpuInstance, cPVgpuInstanceInfo)
__v := (Return)(__ret)
return __v
}
// nvmlGpuInstanceSetVgpuSchedulerState function as declared in nvml/nvml.h
func nvmlGpuInstanceSetVgpuSchedulerState(nvmlGpuInstance nvmlGpuInstance, PScheduler *VgpuSchedulerState) Return {
cnvmlGpuInstance, _ := *(*C.nvmlGpuInstance_t)(unsafe.Pointer(&nvmlGpuInstance)), cgoAllocsUnknown
cPScheduler, _ := (*C.nvmlVgpuSchedulerState_t)(unsafe.Pointer(PScheduler)), cgoAllocsUnknown
__ret := C.nvmlGpuInstanceSetVgpuSchedulerState(cnvmlGpuInstance, cPScheduler)
__v := (Return)(__ret)
return __v
}
// nvmlGpuInstanceGetVgpuSchedulerState function as declared in nvml/nvml.h
func nvmlGpuInstanceGetVgpuSchedulerState(nvmlGpuInstance nvmlGpuInstance, PSchedulerStateInfo *VgpuSchedulerStateInfo) Return {
cnvmlGpuInstance, _ := *(*C.nvmlGpuInstance_t)(unsafe.Pointer(&nvmlGpuInstance)), cgoAllocsUnknown
cPSchedulerStateInfo, _ := (*C.nvmlVgpuSchedulerStateInfo_t)(unsafe.Pointer(PSchedulerStateInfo)), cgoAllocsUnknown
__ret := C.nvmlGpuInstanceGetVgpuSchedulerState(cnvmlGpuInstance, cPSchedulerStateInfo)
__v := (Return)(__ret)
return __v
}
// nvmlGpuInstanceGetVgpuSchedulerLog function as declared in nvml/nvml.h
func nvmlGpuInstanceGetVgpuSchedulerLog(nvmlGpuInstance nvmlGpuInstance, PSchedulerLogInfo *VgpuSchedulerLogInfo) Return {
cnvmlGpuInstance, _ := *(*C.nvmlGpuInstance_t)(unsafe.Pointer(&nvmlGpuInstance)), cgoAllocsUnknown
cPSchedulerLogInfo, _ := (*C.nvmlVgpuSchedulerLogInfo_t)(unsafe.Pointer(PSchedulerLogInfo)), cgoAllocsUnknown
__ret := C.nvmlGpuInstanceGetVgpuSchedulerLog(cnvmlGpuInstance, cPSchedulerLogInfo)
__v := (Return)(__ret)
return __v
}
// nvmlGpuInstanceGetVgpuTypeCreatablePlacements function as declared in nvml/nvml.h
func nvmlGpuInstanceGetVgpuTypeCreatablePlacements(nvmlGpuInstance nvmlGpuInstance, PCreatablePlacementInfo *VgpuCreatablePlacementInfo) Return {
cnvmlGpuInstance, _ := *(*C.nvmlGpuInstance_t)(unsafe.Pointer(&nvmlGpuInstance)), cgoAllocsUnknown
cPCreatablePlacementInfo, _ := (*C.nvmlVgpuCreatablePlacementInfo_t)(unsafe.Pointer(PCreatablePlacementInfo)), cgoAllocsUnknown
__ret := C.nvmlGpuInstanceGetVgpuTypeCreatablePlacements(cnvmlGpuInstance, cPCreatablePlacementInfo)
__v := (Return)(__ret)
return __v
}
// nvmlGpuInstanceGetVgpuHeterogeneousMode function as declared in nvml/nvml.h
func nvmlGpuInstanceGetVgpuHeterogeneousMode(nvmlGpuInstance nvmlGpuInstance, PHeterogeneousMode *VgpuHeterogeneousMode) Return {
cnvmlGpuInstance, _ := *(*C.nvmlGpuInstance_t)(unsafe.Pointer(&nvmlGpuInstance)), cgoAllocsUnknown
cPHeterogeneousMode, _ := (*C.nvmlVgpuHeterogeneousMode_t)(unsafe.Pointer(PHeterogeneousMode)), cgoAllocsUnknown
__ret := C.nvmlGpuInstanceGetVgpuHeterogeneousMode(cnvmlGpuInstance, cPHeterogeneousMode)
__v := (Return)(__ret)
return __v
}
// nvmlGpuInstanceSetVgpuHeterogeneousMode function as declared in nvml/nvml.h
func nvmlGpuInstanceSetVgpuHeterogeneousMode(nvmlGpuInstance nvmlGpuInstance, PHeterogeneousMode *VgpuHeterogeneousMode) Return {
cnvmlGpuInstance, _ := *(*C.nvmlGpuInstance_t)(unsafe.Pointer(&nvmlGpuInstance)), cgoAllocsUnknown
cPHeterogeneousMode, _ := (*C.nvmlVgpuHeterogeneousMode_t)(unsafe.Pointer(PHeterogeneousMode)), cgoAllocsUnknown
__ret := C.nvmlGpuInstanceSetVgpuHeterogeneousMode(cnvmlGpuInstance, cPHeterogeneousMode)
__v := (Return)(__ret)
return __v
}
// nvmlVgpuInstanceGetMetadata function as declared in nvml/nvml.h
func nvmlVgpuInstanceGetMetadata(nvmlVgpuInstance nvmlVgpuInstance, nvmlVgpuMetadata *nvmlVgpuMetadata, BufferSize *uint32) Return {
cnvmlVgpuInstance, _ := (C.nvmlVgpuInstance_t)(nvmlVgpuInstance), cgoAllocsUnknown
@ -3062,45 +3380,74 @@ func nvmlGpmSetStreamingEnabled(nvmlDevice nvmlDevice, State uint32) Return {
return __v
}
// nvmlDeviceSetNvLinkDeviceLowPowerThreshold function as declared in nvml/nvml.h
func nvmlDeviceSetNvLinkDeviceLowPowerThreshold(nvmlDevice nvmlDevice, Info *NvLinkPowerThres) Return {
// nvmlDeviceGetCapabilities function as declared in nvml/nvml.h
func nvmlDeviceGetCapabilities(nvmlDevice nvmlDevice, Caps *DeviceCapabilities) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cInfo, _ := (*C.nvmlNvLinkPowerThres_t)(unsafe.Pointer(Info)), cgoAllocsUnknown
__ret := C.nvmlDeviceSetNvLinkDeviceLowPowerThreshold(cnvmlDevice, cInfo)
cCaps, _ := (*C.nvmlDeviceCapabilities_t)(unsafe.Pointer(Caps)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetCapabilities(cnvmlDevice, cCaps)
__v := (Return)(__ret)
return __v
}
// nvmlSystemSetNvlinkBwMode function as declared in nvml/nvml.h
func nvmlSystemSetNvlinkBwMode(NvlinkBwMode uint32) Return {
cNvlinkBwMode, _ := (C.uint)(NvlinkBwMode), cgoAllocsUnknown
__ret := C.nvmlSystemSetNvlinkBwMode(cNvlinkBwMode)
__v := (Return)(__ret)
return __v
}
// nvmlSystemGetNvlinkBwMode function as declared in nvml/nvml.h
func nvmlSystemGetNvlinkBwMode(NvlinkBwMode *uint32) Return {
cNvlinkBwMode, _ := (*C.uint)(unsafe.Pointer(NvlinkBwMode)), cgoAllocsUnknown
__ret := C.nvmlSystemGetNvlinkBwMode(cNvlinkBwMode)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceSetPowerManagementLimit_v2 function as declared in nvml/nvml.h
func nvmlDeviceSetPowerManagementLimit_v2(nvmlDevice nvmlDevice, PowerValue *PowerValue_v2) Return {
// nvmlDeviceWorkloadPowerProfileGetProfilesInfo function as declared in nvml/nvml.h
func nvmlDeviceWorkloadPowerProfileGetProfilesInfo(nvmlDevice nvmlDevice, ProfilesInfo *WorkloadPowerProfileProfilesInfo) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cPowerValue, _ := (*C.nvmlPowerValue_v2_t)(unsafe.Pointer(PowerValue)), cgoAllocsUnknown
__ret := C.nvmlDeviceSetPowerManagementLimit_v2(cnvmlDevice, cPowerValue)
cProfilesInfo, _ := (*C.nvmlWorkloadPowerProfileProfilesInfo_t)(unsafe.Pointer(ProfilesInfo)), cgoAllocsUnknown
__ret := C.nvmlDeviceWorkloadPowerProfileGetProfilesInfo(cnvmlDevice, cProfilesInfo)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetSramEccErrorStatus function as declared in nvml/nvml.h
func nvmlDeviceGetSramEccErrorStatus(nvmlDevice nvmlDevice, Status *EccSramErrorStatus) Return {
// nvmlDeviceWorkloadPowerProfileGetCurrentProfiles function as declared in nvml/nvml.h
func nvmlDeviceWorkloadPowerProfileGetCurrentProfiles(nvmlDevice nvmlDevice, CurrentProfiles *WorkloadPowerProfileCurrentProfiles) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cStatus, _ := (*C.nvmlEccSramErrorStatus_t)(unsafe.Pointer(Status)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetSramEccErrorStatus(cnvmlDevice, cStatus)
cCurrentProfiles, _ := (*C.nvmlWorkloadPowerProfileCurrentProfiles_t)(unsafe.Pointer(CurrentProfiles)), cgoAllocsUnknown
__ret := C.nvmlDeviceWorkloadPowerProfileGetCurrentProfiles(cnvmlDevice, cCurrentProfiles)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceWorkloadPowerProfileSetRequestedProfiles function as declared in nvml/nvml.h
func nvmlDeviceWorkloadPowerProfileSetRequestedProfiles(nvmlDevice nvmlDevice, RequestedProfiles *WorkloadPowerProfileRequestedProfiles) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cRequestedProfiles, _ := (*C.nvmlWorkloadPowerProfileRequestedProfiles_t)(unsafe.Pointer(RequestedProfiles)), cgoAllocsUnknown
__ret := C.nvmlDeviceWorkloadPowerProfileSetRequestedProfiles(cnvmlDevice, cRequestedProfiles)
__v := (Return)(__ret)
return __v
}
// nvmlDeviceWorkloadPowerProfileClearRequestedProfiles function as declared in nvml/nvml.h
func nvmlDeviceWorkloadPowerProfileClearRequestedProfiles(nvmlDevice nvmlDevice, RequestedProfiles *WorkloadPowerProfileRequestedProfiles) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cRequestedProfiles, _ := (*C.nvmlWorkloadPowerProfileRequestedProfiles_t)(unsafe.Pointer(RequestedProfiles)), cgoAllocsUnknown
__ret := C.nvmlDeviceWorkloadPowerProfileClearRequestedProfiles(cnvmlDevice, cRequestedProfiles)
__v := (Return)(__ret)
return __v
}
// nvmlDevicePowerSmoothingActivatePresetProfile function as declared in nvml/nvml.h
func nvmlDevicePowerSmoothingActivatePresetProfile(nvmlDevice nvmlDevice, Profile *PowerSmoothingProfile) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cProfile, _ := (*C.nvmlPowerSmoothingProfile_t)(unsafe.Pointer(Profile)), cgoAllocsUnknown
__ret := C.nvmlDevicePowerSmoothingActivatePresetProfile(cnvmlDevice, cProfile)
__v := (Return)(__ret)
return __v
}
// nvmlDevicePowerSmoothingUpdatePresetProfileParam function as declared in nvml/nvml.h
func nvmlDevicePowerSmoothingUpdatePresetProfileParam(nvmlDevice nvmlDevice, Profile *PowerSmoothingProfile) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cProfile, _ := (*C.nvmlPowerSmoothingProfile_t)(unsafe.Pointer(Profile)), cgoAllocsUnknown
__ret := C.nvmlDevicePowerSmoothingUpdatePresetProfileParam(cnvmlDevice, cProfile)
__v := (Return)(__ret)
return __v
}
// nvmlDevicePowerSmoothingSetState function as declared in nvml/nvml.h
func nvmlDevicePowerSmoothingSetState(nvmlDevice nvmlDevice, State *PowerSmoothingState) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cState, _ := (*C.nvmlPowerSmoothingState_t)(unsafe.Pointer(State)), cgoAllocsUnknown
__ret := C.nvmlDevicePowerSmoothingSetState(cnvmlDevice, cState)
__v := (Return)(__ret)
return __v
}
@ -3308,3 +3655,13 @@ func nvmlVgpuInstanceGetLicenseInfo_v1(nvmlVgpuInstance nvmlVgpuInstance, Licens
__v := (Return)(__ret)
return __v
}
// nvmlDeviceGetDriverModel_v1 function as declared in nvml/nvml.h
func nvmlDeviceGetDriverModel_v1(nvmlDevice nvmlDevice, Current *DriverModel, Pending *DriverModel) Return {
cnvmlDevice, _ := *(*C.nvmlDevice_t)(unsafe.Pointer(&nvmlDevice)), cgoAllocsUnknown
cCurrent, _ := (*C.nvmlDriverModel_t)(unsafe.Pointer(Current)), cgoAllocsUnknown
cPending, _ := (*C.nvmlDriverModel_t)(unsafe.Pointer(Pending)), cgoAllocsUnknown
__ret := C.nvmlDeviceGetDriverModel(cnvmlDevice, cCurrent, cPending)
__v := (Return)(__ret)
return __v
}

File diff suppressed because it is too large Load Diff

View File

@ -88,31 +88,31 @@ func (l *library) SystemGetConfComputeCapabilities() (ConfComputeSystemCaps, Ret
}
// nvml.SystemGetConfComputeState()
func SystemGetConfComputeState() (ConfComputeSystemState, Return) {
func (l *library) SystemGetConfComputeState() (ConfComputeSystemState, Return) {
var state ConfComputeSystemState
ret := nvmlSystemGetConfComputeState(&state)
return state, ret
}
// nvml.SystemGetConfComputeGpusReadyState()
func SystemGetConfComputeGpusReadyState() (uint32, Return) {
func (l *library) SystemGetConfComputeGpusReadyState() (uint32, Return) {
var isAcceptingWork uint32
ret := nvmlSystemGetConfComputeGpusReadyState(&isAcceptingWork)
return isAcceptingWork, ret
}
// nvml.SystemSetConfComputeGpusReadyState()
func SystemSetConfComputeGpusReadyState(isAcceptingWork uint32) Return {
func (l *library) SystemSetConfComputeGpusReadyState(isAcceptingWork uint32) Return {
return nvmlSystemSetConfComputeGpusReadyState(isAcceptingWork)
}
// nvml.SystemSetNvlinkBwMode()
func SystemSetNvlinkBwMode(nvlinkBwMode uint32) Return {
func (l *library) SystemSetNvlinkBwMode(nvlinkBwMode uint32) Return {
return nvmlSystemSetNvlinkBwMode(nvlinkBwMode)
}
// nvml.SystemGetNvlinkBwMode()
func SystemGetNvlinkBwMode() (uint32, Return) {
func (l *library) SystemGetNvlinkBwMode() (uint32, Return) {
var nvlinkBwMode uint32
ret := nvmlSystemGetNvlinkBwMode(&nvlinkBwMode)
return nvlinkBwMode, ret
@ -138,3 +138,11 @@ func (l *library) SystemGetConfComputeSettings() (SystemConfComputeSettings, Ret
func (l *library) SystemSetConfComputeKeyRotationThresholdInfo(keyRotationThresholdInfo ConfComputeSetKeyRotationThresholdInfo) Return {
return nvmlSystemSetConfComputeKeyRotationThresholdInfo(&keyRotationThresholdInfo)
}
// nvml.SystemGetDriverBranch()
func (l *library) SystemGetDriverBranch() (SystemDriverBranchInfo, Return) {
var branchInfo SystemDriverBranchInfo
branchInfo.Version = STRUCT_VERSION(branchInfo, 1)
ret := nvmlSystemGetDriverBranch(&branchInfo, SYSTEM_DRIVER_VERSION_BUFFER_SIZE)
return branchInfo, ret
}

View File

@ -9,6 +9,10 @@ type nvmlDevice struct {
Handle *_Ctype_struct_nvmlDevice_st
}
type nvmlGpuInstance struct {
Handle *_Ctype_struct_nvmlGpuInstance_st
}
type PciInfoExt_v1 struct {
Version uint32
Domain uint32
@ -182,6 +186,58 @@ type GpuThermalSettings struct {
Sensor [3]GpuThermalSettingsSensor
}
type CoolerInfo_v1 struct {
Version uint32
Index uint32
SignalType uint32
Target uint32
}
type CoolerInfo struct {
Version uint32
Index uint32
SignalType uint32
Target uint32
}
const sizeofUUIDValue = unsafe.Sizeof([41]byte{})
type UUIDValue [sizeofUUIDValue]byte
type UUID_v1 struct {
Version uint32
Type uint32
Value [41]byte
Pad_cgo_0 [3]byte
}
type UUID struct {
Version uint32
Type uint32
Value [41]byte
Pad_cgo_0 [3]byte
}
type DramEncryptionInfo_v1 struct {
Version uint32
EncryptionState uint32
}
type DramEncryptionInfo struct {
Version uint32
EncryptionState uint32
}
type MarginTemperature_v1 struct {
Version uint32
MarginTemperature int32
}
type MarginTemperature struct {
Version uint32
MarginTemperature int32
}
type ClkMonFaultInfo struct {
ClkApiDomain uint32
ClkDomainFaultMask uint32
@ -193,6 +249,189 @@ type ClkMonStatus struct {
ClkMonList [32]ClkMonFaultInfo
}
type ClockOffset_v1 struct {
Version uint32
Type uint32
Pstate uint32
ClockOffsetMHz int32
MinClockOffsetMHz int32
MaxClockOffsetMHz int32
}
type ClockOffset struct {
Version uint32
Type uint32
Pstate uint32
ClockOffsetMHz int32
MinClockOffsetMHz int32
MaxClockOffsetMHz int32
}
type FanSpeedInfo_v1 struct {
Version uint32
Fan uint32
Speed uint32
}
type FanSpeedInfo struct {
Version uint32
Fan uint32
Speed uint32
}
type DevicePerfModes_v1 struct {
Version uint32
Str [2048]int8
}
type DevicePerfModes struct {
Version uint32
Str [2048]int8
}
type DeviceCurrentClockFreqs_v1 struct {
Version uint32
Str [2048]int8
}
type DeviceCurrentClockFreqs struct {
Version uint32
Str [2048]int8
}
type ProcessUtilizationSample struct {
Pid uint32
TimeStamp uint64
SmUtil uint32
MemUtil uint32
EncUtil uint32
DecUtil uint32
}
type ProcessUtilizationInfo_v1 struct {
TimeStamp uint64
Pid uint32
SmUtil uint32
MemUtil uint32
EncUtil uint32
DecUtil uint32
JpgUtil uint32
OfaUtil uint32
Pad_cgo_0 [4]byte
}
type ProcessesUtilizationInfo_v1 struct {
Version uint32
ProcessSamplesCount uint32
LastSeenTimeStamp uint64
ProcUtilArray *ProcessUtilizationInfo_v1
}
type ProcessesUtilizationInfo struct {
Version uint32
ProcessSamplesCount uint32
LastSeenTimeStamp uint64
ProcUtilArray *ProcessUtilizationInfo_v1
}
type EccSramErrorStatus_v1 struct {
Version uint32
AggregateUncParity uint64
AggregateUncSecDed uint64
AggregateCor uint64
VolatileUncParity uint64
VolatileUncSecDed uint64
VolatileCor uint64
AggregateUncBucketL2 uint64
AggregateUncBucketSm uint64
AggregateUncBucketPcie uint64
AggregateUncBucketMcu uint64
AggregateUncBucketOther uint64
BThresholdExceeded uint32
Pad_cgo_0 [4]byte
}
type EccSramErrorStatus struct {
Version uint32
AggregateUncParity uint64
AggregateUncSecDed uint64
AggregateCor uint64
VolatileUncParity uint64
VolatileUncSecDed uint64
VolatileCor uint64
AggregateUncBucketL2 uint64
AggregateUncBucketSm uint64
AggregateUncBucketPcie uint64
AggregateUncBucketMcu uint64
AggregateUncBucketOther uint64
BThresholdExceeded uint32
Pad_cgo_0 [4]byte
}
type PlatformInfo_v1 struct {
Version uint32
IbGuid [16]uint8
RackGuid [16]uint8
ChassisPhysicalSlotNumber uint8
ComputeSlotIndex uint8
NodeIndex uint8
PeerType uint8
ModuleId uint8
Pad_cgo_0 [3]byte
}
type PlatformInfo_v2 struct {
Version uint32
IbGuid [16]uint8
ChassisSerialNumber [16]uint8
SlotNumber uint8
TrayIndex uint8
HostId uint8
PeerType uint8
ModuleId uint8
Pad_cgo_0 [3]byte
}
type PlatformInfo struct {
Version uint32
IbGuid [16]uint8
ChassisSerialNumber [16]uint8
SlotNumber uint8
TrayIndex uint8
HostId uint8
PeerType uint8
ModuleId uint8
Pad_cgo_0 [3]byte
}
type DeviceArchitecture uint32
type BusType uint32
type FanControlPolicy uint32
type PowerSource uint32
type GpuDynamicPstatesInfoUtilization struct {
BIsPresent uint32
Percentage uint32
IncThreshold uint32
DecThreshold uint32
}
type GpuDynamicPstatesInfo struct {
Flags uint32
Utilization [8]GpuDynamicPstatesInfoUtilization
}
type PowerScopeType byte
type PowerValue_v2 struct {
Version uint32
PowerScope uint8
PowerValueMw uint32
}
type nvmlVgpuTypeId uint32
type nvmlVgpuInstance uint32
@ -224,11 +463,32 @@ type VgpuPlacementList_v1 struct {
PlacementIds *uint32
}
type VgpuPlacementList_v2 struct {
Version uint32
PlacementSize uint32
Count uint32
PlacementIds *uint32
Mode uint32
Pad_cgo_0 [4]byte
}
type VgpuPlacementList struct {
Version uint32
PlacementSize uint32
Count uint32
PlacementIds *uint32
Mode uint32
Pad_cgo_0 [4]byte
}
type VgpuTypeBar1Info_v1 struct {
Version uint32
Bar1Size uint64
}
type VgpuTypeBar1Info struct {
Version uint32
Bar1Size uint64
}
type VgpuInstanceUtilizationSample struct {
@ -306,6 +566,16 @@ type VgpuProcessesUtilizationInfo struct {
VgpuProcUtilArray *VgpuProcessUtilizationInfo_v1
}
type VgpuRuntimeState_v1 struct {
Version uint32
Size uint64
}
type VgpuRuntimeState struct {
Version uint32
Size uint64
}
type VgpuSchedulerParamsVgpuSchedDataWithARR struct {
AvgFactor uint32
Timeslice uint32
@ -390,41 +660,6 @@ type VgpuLicenseInfo struct {
CurrentState uint32
}
type ProcessUtilizationSample struct {
Pid uint32
TimeStamp uint64
SmUtil uint32
MemUtil uint32
EncUtil uint32
DecUtil uint32
}
type ProcessUtilizationInfo_v1 struct {
TimeStamp uint64
Pid uint32
SmUtil uint32
MemUtil uint32
EncUtil uint32
DecUtil uint32
JpgUtil uint32
OfaUtil uint32
Pad_cgo_0 [4]byte
}
type ProcessesUtilizationInfo_v1 struct {
Version uint32
ProcessSamplesCount uint32
LastSeenTimeStamp uint64
ProcUtilArray *ProcessUtilizationInfo_v1
}
type ProcessesUtilizationInfo struct {
Version uint32
ProcessSamplesCount uint32
LastSeenTimeStamp uint64
ProcUtilArray *ProcessUtilizationInfo_v1
}
type GridLicenseExpiry struct {
Year uint32
Month uint16
@ -451,58 +686,114 @@ type GridLicensableFeatures struct {
GridLicensableFeatures [3]GridLicensableFeature
}
type EccSramErrorStatus_v1 struct {
Version uint32
AggregateUncParity uint64
AggregateUncSecDed uint64
AggregateCor uint64
VolatileUncParity uint64
VolatileUncSecDed uint64
VolatileCor uint64
AggregateUncBucketL2 uint64
AggregateUncBucketSm uint64
AggregateUncBucketPcie uint64
AggregateUncBucketMcu uint64
AggregateUncBucketOther uint64
BThresholdExceeded uint32
Pad_cgo_0 [4]byte
type VgpuTypeIdInfo_v1 struct {
Version uint32
VgpuCount uint32
VgpuTypeIds *uint32
}
type EccSramErrorStatus struct {
Version uint32
AggregateUncParity uint64
AggregateUncSecDed uint64
AggregateCor uint64
VolatileUncParity uint64
VolatileUncSecDed uint64
VolatileCor uint64
AggregateUncBucketL2 uint64
AggregateUncBucketSm uint64
AggregateUncBucketPcie uint64
AggregateUncBucketMcu uint64
AggregateUncBucketOther uint64
BThresholdExceeded uint32
Pad_cgo_0 [4]byte
type VgpuTypeIdInfo struct {
Version uint32
VgpuCount uint32
VgpuTypeIds *uint32
}
type DeviceArchitecture uint32
type BusType uint32
type FanControlPolicy uint32
type PowerSource uint32
type GpuDynamicPstatesInfoUtilization struct {
BIsPresent uint32
Percentage uint32
IncThreshold uint32
DecThreshold uint32
type VgpuTypeMaxInstance_v1 struct {
Version uint32
VgpuTypeId uint32
MaxInstancePerGI uint32
}
type GpuDynamicPstatesInfo struct {
Flags uint32
Utilization [8]GpuDynamicPstatesInfoUtilization
type VgpuTypeMaxInstance struct {
Version uint32
VgpuTypeId uint32
MaxInstancePerGI uint32
}
type ActiveVgpuInstanceInfo_v1 struct {
Version uint32
VgpuCount uint32
VgpuInstances *uint32
}
type ActiveVgpuInstanceInfo struct {
Version uint32
VgpuCount uint32
VgpuInstances *uint32
}
type VgpuSchedulerState_v1 struct {
Version uint32
EngineId uint32
SchedulerPolicy uint32
EnableARRMode uint32
SchedulerParams [8]byte
}
type VgpuSchedulerState struct {
Version uint32
EngineId uint32
SchedulerPolicy uint32
EnableARRMode uint32
SchedulerParams [8]byte
}
type VgpuSchedulerStateInfo_v1 struct {
Version uint32
EngineId uint32
SchedulerPolicy uint32
ArrMode uint32
SchedulerParams [8]byte
}
type VgpuSchedulerStateInfo struct {
Version uint32
EngineId uint32
SchedulerPolicy uint32
ArrMode uint32
SchedulerParams [8]byte
}
type VgpuSchedulerLogInfo_v1 struct {
Version uint32
EngineId uint32
SchedulerPolicy uint32
ArrMode uint32
SchedulerParams [8]byte
EntriesCount uint32
LogEntries [200]VgpuSchedulerLogEntry
}
type VgpuSchedulerLogInfo struct {
Version uint32
EngineId uint32
SchedulerPolicy uint32
ArrMode uint32
SchedulerParams [8]byte
EntriesCount uint32
LogEntries [200]VgpuSchedulerLogEntry
}
type VgpuCreatablePlacementInfo_v1 struct {
Version uint32
VgpuTypeId uint32
Count uint32
PlacementIds *uint32
PlacementSize uint32
Pad_cgo_0 [4]byte
}
type VgpuCreatablePlacementInfo struct {
Version uint32
VgpuTypeId uint32
Count uint32
PlacementIds *uint32
PlacementSize uint32
Pad_cgo_0 [4]byte
}
type NvLinkPowerThres struct {
LowPwrThreshold uint32
}
type FieldValue struct {
@ -565,6 +856,66 @@ type nvmlEventData struct {
ComputeInstanceId uint32
}
type SystemEventSet struct {
Handle *_Ctype_struct_nvmlSystemEventSet_st
}
type SystemEventSetCreateRequest_v1 struct {
Version uint32
Set SystemEventSet
}
type SystemEventSetCreateRequest struct {
Version uint32
Set SystemEventSet
}
type SystemEventSetFreeRequest_v1 struct {
Version uint32
Set SystemEventSet
}
type SystemEventSetFreeRequest struct {
Version uint32
Set SystemEventSet
}
type SystemRegisterEventRequest_v1 struct {
Version uint32
EventTypes uint64
Set SystemEventSet
}
type SystemRegisterEventRequest struct {
Version uint32
EventTypes uint64
Set SystemEventSet
}
type SystemEventData_v1 struct {
EventType uint64
GpuId uint32
Pad_cgo_0 [4]byte
}
type SystemEventSetWaitRequest_v1 struct {
Version uint32
Timeoutms uint32
Set SystemEventSet
Data *SystemEventData_v1
DataSize uint32
NumEvent uint32
}
type SystemEventSetWaitRequest struct {
Version uint32
Timeoutms uint32
Set SystemEventSet
Data *SystemEventData_v1
DataSize uint32
NumEvent uint32
}
type AccountingStats struct {
GpuUtilization uint32
MemoryUtilization uint32
@ -703,16 +1054,70 @@ type GpuFabricInfoV struct {
HealthMask uint32
}
type PowerScopeType byte
type SystemDriverBranchInfo_v1 struct {
Version uint32
Branch [80]int8
}
type PowerValue_v2 struct {
Version uint32
PowerScope uint8
PowerValueMw uint32
type SystemDriverBranchInfo struct {
Version uint32
Branch [80]int8
}
type AffinityScope uint32
type Temperature_v1 struct {
Version uint32
SensorType uint32
Temperature int32
}
type Temperature struct {
Version uint32
SensorType uint32
Temperature int32
}
type NvlinkSupportedBwModes_v1 struct {
Version uint32
BwModes [23]uint8
TotalBwModes uint8
}
type NvlinkSupportedBwModes struct {
Version uint32
BwModes [23]uint8
TotalBwModes uint8
}
type NvlinkGetBwMode_v1 struct {
Version uint32
BIsBest uint32
BwMode uint8
Pad_cgo_0 [3]byte
}
type NvlinkGetBwMode struct {
Version uint32
BIsBest uint32
BwMode uint8
Pad_cgo_0 [3]byte
}
type NvlinkSetBwMode_v1 struct {
Version uint32
BSetBest uint32
BwMode uint8
Pad_cgo_0 [3]byte
}
type NvlinkSetBwMode struct {
Version uint32
BSetBest uint32
BwMode uint8
Pad_cgo_0 [3]byte
}
type VgpuVersion struct {
MinVersion uint32
MaxVersion uint32
@ -811,10 +1216,6 @@ type nvmlGpuInstanceInfo struct {
Placement GpuInstancePlacement
}
type nvmlGpuInstance struct {
Handle *_Ctype_struct_nvmlGpuInstance_st
}
type ComputeInstancePlacement struct {
Start uint32
Size uint32
@ -895,7 +1296,7 @@ type nvmlGpmMetricsGetType struct {
NumMetrics uint32
Sample1 nvmlGpmSample
Sample2 nvmlGpmSample
Metrics [98]GpmMetric
Metrics [210]GpmMetric
}
type GpmSupport struct {
@ -903,6 +1304,90 @@ type GpmSupport struct {
IsSupportedDevice uint32
}
type NvLinkPowerThres struct {
LowPwrThreshold uint32
type DeviceCapabilities_v1 struct {
Version uint32
CapMask uint32
}
type DeviceCapabilities struct {
Version uint32
CapMask uint32
}
type Mask255 struct {
Mask [8]uint32
}
type WorkloadPowerProfileInfo_v1 struct {
Version uint32
ProfileId uint32
Priority uint32
ConflictingMask Mask255
}
type WorkloadPowerProfileInfo struct {
Version uint32
ProfileId uint32
Priority uint32
ConflictingMask Mask255
}
type WorkloadPowerProfileProfilesInfo_v1 struct {
Version uint32
PerfProfilesMask Mask255
PerfProfile [255]WorkloadPowerProfileInfo
}
type WorkloadPowerProfileProfilesInfo struct {
Version uint32
PerfProfilesMask Mask255
PerfProfile [255]WorkloadPowerProfileInfo
}
type WorkloadPowerProfileCurrentProfiles_v1 struct {
Version uint32
PerfProfilesMask Mask255
RequestedProfilesMask Mask255
EnforcedProfilesMask Mask255
}
type WorkloadPowerProfileCurrentProfiles struct {
Version uint32
PerfProfilesMask Mask255
RequestedProfilesMask Mask255
EnforcedProfilesMask Mask255
}
type WorkloadPowerProfileRequestedProfiles_v1 struct {
Version uint32
RequestedProfilesMask Mask255
}
type WorkloadPowerProfileRequestedProfiles struct {
Version uint32
RequestedProfilesMask Mask255
}
type PowerSmoothingProfile_v1 struct {
Version uint32
ProfileId uint32
ParamId uint32
Value float64
}
type PowerSmoothingProfile struct {
Version uint32
ProfileId uint32
ParamId uint32
Value float64
}
type PowerSmoothingState_v1 struct {
Version uint32
State uint32
}
type PowerSmoothingState struct {
Version uint32
State uint32
}

View File

@ -478,3 +478,32 @@ func (l *library) GetVgpuDriverCapabilities(capability VgpuDriverCapability) (bo
ret := nvmlGetVgpuDriverCapabilities(capability, &capResult)
return (capResult != 0), ret
}
// nvml.VgpuTypeGetBAR1Info()
func (l *library) VgpuTypeGetBAR1Info(vgpuTypeId VgpuTypeId) (VgpuTypeBar1Info, Return) {
return vgpuTypeId.GetBAR1Info()
}
func (vgpuTypeId nvmlVgpuTypeId) GetBAR1Info() (VgpuTypeBar1Info, Return) {
var bar1Info VgpuTypeBar1Info
bar1Info.Version = STRUCT_VERSION(bar1Info, 1)
ret := nvmlVgpuTypeGetBAR1Info(vgpuTypeId, &bar1Info)
return bar1Info, ret
}
// nvml.VgpuInstanceGetRuntimeStateSize()
func (l *library) VgpuInstanceGetRuntimeStateSize(vgpuInstance VgpuInstance) (VgpuRuntimeState, Return) {
return vgpuInstance.GetRuntimeStateSize()
}
func (vgpuInstance nvmlVgpuInstance) GetRuntimeStateSize() (VgpuRuntimeState, Return) {
var pState VgpuRuntimeState
pState.Version = STRUCT_VERSION(pState, 1)
ret := nvmlVgpuInstanceGetRuntimeStateSize(vgpuInstance, &pState)
return pState, ret
}
// nvml.VgpuTypeGetMaxInstancesPerGpuInstance()
func (l *library) VgpuTypeGetMaxInstancesPerGpuInstance(maxInstance *VgpuTypeMaxInstance) Return {
return nvmlVgpuTypeGetMaxInstancesPerGpuInstance(maxInstance)
}

File diff suppressed because it is too large Load Diff

2
vendor/modules.txt vendored
View File

@ -6,7 +6,7 @@ github.com/NVIDIA/go-nvlib/pkg/nvpci
github.com/NVIDIA/go-nvlib/pkg/nvpci/bytes
github.com/NVIDIA/go-nvlib/pkg/nvpci/mmio
github.com/NVIDIA/go-nvlib/pkg/pciids
# github.com/NVIDIA/go-nvml v0.12.4-1
# github.com/NVIDIA/go-nvml v0.12.9-0
## explicit; go 1.20
github.com/NVIDIA/go-nvml/pkg/dl
github.com/NVIDIA/go-nvml/pkg/nvml