1#![allow(non_upper_case_globals)]
4#![allow(non_camel_case_types)]
5#![allow(non_snake_case)]
6#![allow(dead_code)]
7use std::os::raw;
8
9pub const NVML_API_VERSION: u32 = 12;
10pub const NVML_API_VERSION_STR: &[u8; 3] = b"12\0";
11pub const NVML_VALUE_NOT_AVAILABLE: i32 = -1;
12pub const NVML_DEVICE_PCI_BUS_ID_BUFFER_SIZE: u32 = 32;
13pub const NVML_DEVICE_PCI_BUS_ID_BUFFER_V2_SIZE: u32 = 16;
14pub const NVML_DEVICE_PCI_BUS_ID_LEGACY_FMT: &[u8; 17] = b"%04X:%02X:%02X.0\0";
15pub const NVML_DEVICE_PCI_BUS_ID_FMT: &[u8; 17] = b"%08X:%02X:%02X.0\0";
16pub const NVML_NVLINK_MAX_LINKS: u32 = 18;
17pub const NVML_MAX_PHYSICAL_BRIDGE: u32 = 128;
18pub const NVML_MAX_THERMAL_SENSORS_PER_GPU: u32 = 3;
19pub const nvmlFlagDefault: u32 = 0;
20pub const nvmlFlagForce: u32 = 1;
21pub const MAX_CLK_DOMAINS: u32 = 32;
22pub const NVML_MAX_GPU_PERF_PSTATES: u32 = 16;
23pub const NVML_PERF_MODES_BUFFER_SIZE: u32 = 2048;
24pub const NVML_GSP_FIRMWARE_VERSION_BUF_SIZE: u32 = 64;
25pub const NVML_DEVICE_ARCH_KEPLER: u32 = 2;
26pub const NVML_DEVICE_ARCH_MAXWELL: u32 = 3;
27pub const NVML_DEVICE_ARCH_PASCAL: u32 = 4;
28pub const NVML_DEVICE_ARCH_VOLTA: u32 = 5;
29pub const NVML_DEVICE_ARCH_TURING: u32 = 6;
30pub const NVML_DEVICE_ARCH_AMPERE: u32 = 7;
31pub const NVML_DEVICE_ARCH_ADA: u32 = 8;
32pub const NVML_DEVICE_ARCH_HOPPER: u32 = 9;
33pub const NVML_DEVICE_ARCH_BLACKWELL: u32 = 10;
34pub const NVML_DEVICE_ARCH_T23X: u32 = 11;
35pub const NVML_DEVICE_ARCH_UNKNOWN: u32 = 4294967295;
36pub const NVML_BUS_TYPE_UNKNOWN: u32 = 0;
37pub const NVML_BUS_TYPE_PCI: u32 = 1;
38pub const NVML_BUS_TYPE_PCIE: u32 = 2;
39pub const NVML_BUS_TYPE_FPCI: u32 = 3;
40pub const NVML_BUS_TYPE_AGP: u32 = 4;
41pub const NVML_FAN_POLICY_TEMPERATURE_CONTINOUS_SW: u32 = 0;
42pub const NVML_FAN_POLICY_MANUAL: u32 = 1;
43pub const NVML_POWER_SOURCE_AC: u32 = 0;
44pub const NVML_POWER_SOURCE_BATTERY: u32 = 1;
45pub const NVML_POWER_SOURCE_UNDERSIZED: u32 = 2;
46pub const NVML_PCIE_LINK_MAX_SPEED_INVALID: u32 = 0;
47pub const NVML_PCIE_LINK_MAX_SPEED_2500MBPS: u32 = 1;
48pub const NVML_PCIE_LINK_MAX_SPEED_5000MBPS: u32 = 2;
49pub const NVML_PCIE_LINK_MAX_SPEED_8000MBPS: u32 = 3;
50pub const NVML_PCIE_LINK_MAX_SPEED_16000MBPS: u32 = 4;
51pub const NVML_PCIE_LINK_MAX_SPEED_32000MBPS: u32 = 5;
52pub const NVML_PCIE_LINK_MAX_SPEED_64000MBPS: u32 = 6;
53pub const NVML_ADAPTIVE_CLOCKING_INFO_STATUS_DISABLED: u32 = 0;
54pub const NVML_ADAPTIVE_CLOCKING_INFO_STATUS_ENABLED: u32 = 1;
55pub const NVML_MAX_GPU_UTILIZATIONS: u32 = 8;
56pub const NVML_PCIE_ATOMICS_CAP_FETCHADD32: u32 = 1;
57pub const NVML_PCIE_ATOMICS_CAP_FETCHADD64: u32 = 2;
58pub const NVML_PCIE_ATOMICS_CAP_SWAP32: u32 = 4;
59pub const NVML_PCIE_ATOMICS_CAP_SWAP64: u32 = 8;
60pub const NVML_PCIE_ATOMICS_CAP_CAS32: u32 = 16;
61pub const NVML_PCIE_ATOMICS_CAP_CAS64: u32 = 32;
62pub const NVML_PCIE_ATOMICS_CAP_CAS128: u32 = 64;
63pub const NVML_PCIE_ATOMICS_OPS_MAX: u32 = 7;
64pub const NVML_POWER_SCOPE_GPU: u32 = 0;
65pub const NVML_POWER_SCOPE_MODULE: u32 = 1;
66pub const NVML_POWER_SCOPE_MEMORY: u32 = 2;
67pub const NVML_GRID_LICENSE_EXPIRY_NOT_AVAILABLE: u32 = 0;
68pub const NVML_GRID_LICENSE_EXPIRY_INVALID: u32 = 1;
69pub const NVML_GRID_LICENSE_EXPIRY_VALID: u32 = 2;
70pub const NVML_GRID_LICENSE_EXPIRY_NOT_APPLICABLE: u32 = 3;
71pub const NVML_GRID_LICENSE_EXPIRY_PERMANENT: u32 = 4;
72pub const NVML_GRID_LICENSE_BUFFER_SIZE: u32 = 128;
73pub const NVML_VGPU_NAME_BUFFER_SIZE: u32 = 64;
74pub const NVML_GRID_LICENSE_FEATURE_MAX_COUNT: u32 = 3;
75pub const INVALID_GPU_INSTANCE_PROFILE_ID: u32 = 4294967295;
76pub const INVALID_GPU_INSTANCE_ID: u32 = 4294967295;
77pub const NVML_INVALID_VGPU_PLACEMENT_ID: u32 = 65535;
78pub const NVML_VGPU_VIRTUALIZATION_CAP_MIGRATION_NO: u32 = 0;
79pub const NVML_VGPU_VIRTUALIZATION_CAP_MIGRATION_YES: u32 = 1;
80pub const NVML_VGPU_PGPU_VIRTUALIZATION_CAP_MIGRATION_NO: u32 = 0;
81pub const NVML_VGPU_PGPU_VIRTUALIZATION_CAP_MIGRATION_YES: u32 = 1;
82pub const NVML_VGPU_PGPU_HETEROGENEOUS_MODE: u32 = 0;
83pub const NVML_VGPU_PGPU_HOMOGENEOUS_MODE: u32 = 1;
84pub const NVML_VGPU_SCHEDULER_POLICY_UNKNOWN: u32 = 0;
85pub const NVML_VGPU_SCHEDULER_POLICY_BEST_EFFORT: u32 = 1;
86pub const NVML_VGPU_SCHEDULER_POLICY_EQUAL_SHARE: u32 = 2;
87pub const NVML_VGPU_SCHEDULER_POLICY_FIXED_SHARE: u32 = 3;
88pub const NVML_SUPPORTED_VGPU_SCHEDULER_POLICY_COUNT: u32 = 3;
89pub const NVML_SCHEDULER_SW_MAX_LOG_ENTRIES: u32 = 200;
90pub const NVML_VGPU_SCHEDULER_ARR_DEFAULT: u32 = 0;
91pub const NVML_VGPU_SCHEDULER_ARR_DISABLE: u32 = 1;
92pub const NVML_VGPU_SCHEDULER_ARR_ENABLE: u32 = 2;
93pub const NVML_GRID_LICENSE_STATE_UNKNOWN: u32 = 0;
94pub const NVML_GRID_LICENSE_STATE_UNINITIALIZED: u32 = 1;
95pub const NVML_GRID_LICENSE_STATE_UNLICENSED_UNRESTRICTED: u32 = 2;
96pub const NVML_GRID_LICENSE_STATE_UNLICENSED_RESTRICTED: u32 = 3;
97pub const NVML_GRID_LICENSE_STATE_UNLICENSED: u32 = 4;
98pub const NVML_GRID_LICENSE_STATE_LICENSED: u32 = 5;
99pub mod field_id {
100 pub const NVML_FI_DEV_ECC_CURRENT: u32 = 1;
101 pub const NVML_FI_DEV_ECC_PENDING: u32 = 2;
102 pub const NVML_FI_DEV_ECC_SBE_VOL_TOTAL: u32 = 3;
103 pub const NVML_FI_DEV_ECC_DBE_VOL_TOTAL: u32 = 4;
104 pub const NVML_FI_DEV_ECC_SBE_AGG_TOTAL: u32 = 5;
105 pub const NVML_FI_DEV_ECC_DBE_AGG_TOTAL: u32 = 6;
106 pub const NVML_FI_DEV_ECC_SBE_VOL_L1: u32 = 7;
107 pub const NVML_FI_DEV_ECC_DBE_VOL_L1: u32 = 8;
108 pub const NVML_FI_DEV_ECC_SBE_VOL_L2: u32 = 9;
109 pub const NVML_FI_DEV_ECC_DBE_VOL_L2: u32 = 10;
110 pub const NVML_FI_DEV_ECC_SBE_VOL_DEV: u32 = 11;
111 pub const NVML_FI_DEV_ECC_DBE_VOL_DEV: u32 = 12;
112 pub const NVML_FI_DEV_ECC_SBE_VOL_REG: u32 = 13;
113 pub const NVML_FI_DEV_ECC_DBE_VOL_REG: u32 = 14;
114 pub const NVML_FI_DEV_ECC_SBE_VOL_TEX: u32 = 15;
115 pub const NVML_FI_DEV_ECC_DBE_VOL_TEX: u32 = 16;
116 pub const NVML_FI_DEV_ECC_DBE_VOL_CBU: u32 = 17;
117 pub const NVML_FI_DEV_ECC_SBE_AGG_L1: u32 = 18;
118 pub const NVML_FI_DEV_ECC_DBE_AGG_L1: u32 = 19;
119 pub const NVML_FI_DEV_ECC_SBE_AGG_L2: u32 = 20;
120 pub const NVML_FI_DEV_ECC_DBE_AGG_L2: u32 = 21;
121 pub const NVML_FI_DEV_ECC_SBE_AGG_DEV: u32 = 22;
122 pub const NVML_FI_DEV_ECC_DBE_AGG_DEV: u32 = 23;
123 pub const NVML_FI_DEV_ECC_SBE_AGG_REG: u32 = 24;
124 pub const NVML_FI_DEV_ECC_DBE_AGG_REG: u32 = 25;
125 pub const NVML_FI_DEV_ECC_SBE_AGG_TEX: u32 = 26;
126 pub const NVML_FI_DEV_ECC_DBE_AGG_TEX: u32 = 27;
127 pub const NVML_FI_DEV_ECC_DBE_AGG_CBU: u32 = 28;
128 pub const NVML_FI_DEV_RETIRED_SBE: u32 = 29;
129 pub const NVML_FI_DEV_RETIRED_DBE: u32 = 30;
130 pub const NVML_FI_DEV_RETIRED_PENDING: u32 = 31;
131 pub const NVML_FI_DEV_NVLINK_CRC_FLIT_ERROR_COUNT_L0: u32 = 32;
132 pub const NVML_FI_DEV_NVLINK_CRC_FLIT_ERROR_COUNT_L1: u32 = 33;
133 pub const NVML_FI_DEV_NVLINK_CRC_FLIT_ERROR_COUNT_L2: u32 = 34;
134 pub const NVML_FI_DEV_NVLINK_CRC_FLIT_ERROR_COUNT_L3: u32 = 35;
135 pub const NVML_FI_DEV_NVLINK_CRC_FLIT_ERROR_COUNT_L4: u32 = 36;
136 pub const NVML_FI_DEV_NVLINK_CRC_FLIT_ERROR_COUNT_L5: u32 = 37;
137 pub const NVML_FI_DEV_NVLINK_CRC_FLIT_ERROR_COUNT_TOTAL: u32 = 38;
138 pub const NVML_FI_DEV_NVLINK_CRC_DATA_ERROR_COUNT_L0: u32 = 39;
139 pub const NVML_FI_DEV_NVLINK_CRC_DATA_ERROR_COUNT_L1: u32 = 40;
140 pub const NVML_FI_DEV_NVLINK_CRC_DATA_ERROR_COUNT_L2: u32 = 41;
141 pub const NVML_FI_DEV_NVLINK_CRC_DATA_ERROR_COUNT_L3: u32 = 42;
142 pub const NVML_FI_DEV_NVLINK_CRC_DATA_ERROR_COUNT_L4: u32 = 43;
143 pub const NVML_FI_DEV_NVLINK_CRC_DATA_ERROR_COUNT_L5: u32 = 44;
144 pub const NVML_FI_DEV_NVLINK_CRC_DATA_ERROR_COUNT_TOTAL: u32 = 45;
145 pub const NVML_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_L0: u32 = 46;
146 pub const NVML_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_L1: u32 = 47;
147 pub const NVML_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_L2: u32 = 48;
148 pub const NVML_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_L3: u32 = 49;
149 pub const NVML_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_L4: u32 = 50;
150 pub const NVML_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_L5: u32 = 51;
151 pub const NVML_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_TOTAL: u32 = 52;
152 pub const NVML_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_L0: u32 = 53;
153 pub const NVML_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_L1: u32 = 54;
154 pub const NVML_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_L2: u32 = 55;
155 pub const NVML_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_L3: u32 = 56;
156 pub const NVML_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_L4: u32 = 57;
157 pub const NVML_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_L5: u32 = 58;
158 pub const NVML_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_TOTAL: u32 = 59;
159 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C0_L0: u32 = 60;
160 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C0_L1: u32 = 61;
161 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C0_L2: u32 = 62;
162 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C0_L3: u32 = 63;
163 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C0_L4: u32 = 64;
164 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C0_L5: u32 = 65;
165 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C0_TOTAL: u32 = 66;
166 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C1_L0: u32 = 67;
167 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C1_L1: u32 = 68;
168 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C1_L2: u32 = 69;
169 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C1_L3: u32 = 70;
170 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C1_L4: u32 = 71;
171 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C1_L5: u32 = 72;
172 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C1_TOTAL: u32 = 73;
173 pub const NVML_FI_DEV_PERF_POLICY_POWER: u32 = 74;
174 pub const NVML_FI_DEV_PERF_POLICY_THERMAL: u32 = 75;
175 pub const NVML_FI_DEV_PERF_POLICY_SYNC_BOOST: u32 = 76;
176 pub const NVML_FI_DEV_PERF_POLICY_BOARD_LIMIT: u32 = 77;
177 pub const NVML_FI_DEV_PERF_POLICY_LOW_UTILIZATION: u32 = 78;
178 pub const NVML_FI_DEV_PERF_POLICY_RELIABILITY: u32 = 79;
179 pub const NVML_FI_DEV_PERF_POLICY_TOTAL_APP_CLOCKS: u32 = 80;
180 pub const NVML_FI_DEV_PERF_POLICY_TOTAL_BASE_CLOCKS: u32 = 81;
181 pub const NVML_FI_DEV_MEMORY_TEMP: u32 = 82;
182 pub const NVML_FI_DEV_TOTAL_ENERGY_CONSUMPTION: u32 = 83;
183 pub const NVML_FI_DEV_NVLINK_SPEED_MBPS_L0: u32 = 84;
184 pub const NVML_FI_DEV_NVLINK_SPEED_MBPS_L1: u32 = 85;
185 pub const NVML_FI_DEV_NVLINK_SPEED_MBPS_L2: u32 = 86;
186 pub const NVML_FI_DEV_NVLINK_SPEED_MBPS_L3: u32 = 87;
187 pub const NVML_FI_DEV_NVLINK_SPEED_MBPS_L4: u32 = 88;
188 pub const NVML_FI_DEV_NVLINK_SPEED_MBPS_L5: u32 = 89;
189 pub const NVML_FI_DEV_NVLINK_SPEED_MBPS_COMMON: u32 = 90;
190 pub const NVML_FI_DEV_NVLINK_LINK_COUNT: u32 = 91;
191 pub const NVML_FI_DEV_RETIRED_PENDING_SBE: u32 = 92;
192 pub const NVML_FI_DEV_RETIRED_PENDING_DBE: u32 = 93;
193 pub const NVML_FI_DEV_PCIE_REPLAY_COUNTER: u32 = 94;
194 pub const NVML_FI_DEV_PCIE_REPLAY_ROLLOVER_COUNTER: u32 = 95;
195 pub const NVML_FI_DEV_NVLINK_CRC_FLIT_ERROR_COUNT_L6: u32 = 96;
196 pub const NVML_FI_DEV_NVLINK_CRC_FLIT_ERROR_COUNT_L7: u32 = 97;
197 pub const NVML_FI_DEV_NVLINK_CRC_FLIT_ERROR_COUNT_L8: u32 = 98;
198 pub const NVML_FI_DEV_NVLINK_CRC_FLIT_ERROR_COUNT_L9: u32 = 99;
199 pub const NVML_FI_DEV_NVLINK_CRC_FLIT_ERROR_COUNT_L10: u32 = 100;
200 pub const NVML_FI_DEV_NVLINK_CRC_FLIT_ERROR_COUNT_L11: u32 = 101;
201 pub const NVML_FI_DEV_NVLINK_CRC_DATA_ERROR_COUNT_L6: u32 = 102;
202 pub const NVML_FI_DEV_NVLINK_CRC_DATA_ERROR_COUNT_L7: u32 = 103;
203 pub const NVML_FI_DEV_NVLINK_CRC_DATA_ERROR_COUNT_L8: u32 = 104;
204 pub const NVML_FI_DEV_NVLINK_CRC_DATA_ERROR_COUNT_L9: u32 = 105;
205 pub const NVML_FI_DEV_NVLINK_CRC_DATA_ERROR_COUNT_L10: u32 = 106;
206 pub const NVML_FI_DEV_NVLINK_CRC_DATA_ERROR_COUNT_L11: u32 = 107;
207 pub const NVML_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_L6: u32 = 108;
208 pub const NVML_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_L7: u32 = 109;
209 pub const NVML_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_L8: u32 = 110;
210 pub const NVML_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_L9: u32 = 111;
211 pub const NVML_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_L10: u32 = 112;
212 pub const NVML_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_L11: u32 = 113;
213 pub const NVML_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_L6: u32 = 114;
214 pub const NVML_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_L7: u32 = 115;
215 pub const NVML_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_L8: u32 = 116;
216 pub const NVML_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_L9: u32 = 117;
217 pub const NVML_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_L10: u32 = 118;
218 pub const NVML_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_L11: u32 = 119;
219 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C0_L6: u32 = 120;
220 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C0_L7: u32 = 121;
221 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C0_L8: u32 = 122;
222 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C0_L9: u32 = 123;
223 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C0_L10: u32 = 124;
224 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C0_L11: u32 = 125;
225 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C1_L6: u32 = 126;
226 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C1_L7: u32 = 127;
227 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C1_L8: u32 = 128;
228 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C1_L9: u32 = 129;
229 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C1_L10: u32 = 130;
230 pub const NVML_FI_DEV_NVLINK_BANDWIDTH_C1_L11: u32 = 131;
231 pub const NVML_FI_DEV_NVLINK_SPEED_MBPS_L6: u32 = 132;
232 pub const NVML_FI_DEV_NVLINK_SPEED_MBPS_L7: u32 = 133;
233 pub const NVML_FI_DEV_NVLINK_SPEED_MBPS_L8: u32 = 134;
234 pub const NVML_FI_DEV_NVLINK_SPEED_MBPS_L9: u32 = 135;
235 pub const NVML_FI_DEV_NVLINK_SPEED_MBPS_L10: u32 = 136;
236 pub const NVML_FI_DEV_NVLINK_SPEED_MBPS_L11: u32 = 137;
237 pub const NVML_FI_DEV_NVLINK_THROUGHPUT_DATA_TX: u32 = 138;
238 pub const NVML_FI_DEV_NVLINK_THROUGHPUT_DATA_RX: u32 = 139;
239 pub const NVML_FI_DEV_NVLINK_THROUGHPUT_RAW_TX: u32 = 140;
240 pub const NVML_FI_DEV_NVLINK_THROUGHPUT_RAW_RX: u32 = 141;
241 pub const NVML_FI_DEV_REMAPPED_COR: u32 = 142;
242 pub const NVML_FI_DEV_REMAPPED_UNC: u32 = 143;
243 pub const NVML_FI_DEV_REMAPPED_PENDING: u32 = 144;
244 pub const NVML_FI_DEV_REMAPPED_FAILURE: u32 = 145;
245 pub const NVML_FI_DEV_NVLINK_REMOTE_NVLINK_ID: u32 = 146;
246 pub const NVML_FI_DEV_NVSWITCH_CONNECTED_LINK_COUNT: u32 = 147;
247 pub const NVML_FI_DEV_NVLINK_ECC_DATA_ERROR_COUNT_L0: u32 = 148;
248 pub const NVML_FI_DEV_NVLINK_ECC_DATA_ERROR_COUNT_L1: u32 = 149;
249 pub const NVML_FI_DEV_NVLINK_ECC_DATA_ERROR_COUNT_L2: u32 = 150;
250 pub const NVML_FI_DEV_NVLINK_ECC_DATA_ERROR_COUNT_L3: u32 = 151;
251 pub const NVML_FI_DEV_NVLINK_ECC_DATA_ERROR_COUNT_L4: u32 = 152;
252 pub const NVML_FI_DEV_NVLINK_ECC_DATA_ERROR_COUNT_L5: u32 = 153;
253 pub const NVML_FI_DEV_NVLINK_ECC_DATA_ERROR_COUNT_L6: u32 = 154;
254 pub const NVML_FI_DEV_NVLINK_ECC_DATA_ERROR_COUNT_L7: u32 = 155;
255 pub const NVML_FI_DEV_NVLINK_ECC_DATA_ERROR_COUNT_L8: u32 = 156;
256 pub const NVML_FI_DEV_NVLINK_ECC_DATA_ERROR_COUNT_L9: u32 = 157;
257 pub const NVML_FI_DEV_NVLINK_ECC_DATA_ERROR_COUNT_L10: u32 = 158;
258 pub const NVML_FI_DEV_NVLINK_ECC_DATA_ERROR_COUNT_L11: u32 = 159;
259 pub const NVML_FI_DEV_NVLINK_ECC_DATA_ERROR_COUNT_TOTAL: u32 = 160;
260 pub const NVML_FI_DEV_NVLINK_ERROR_DL_REPLAY: u32 = 161;
261 pub const NVML_FI_DEV_NVLINK_ERROR_DL_RECOVERY: u32 = 162;
262 pub const NVML_FI_DEV_NVLINK_ERROR_DL_CRC: u32 = 163;
263 pub const NVML_FI_DEV_NVLINK_GET_SPEED: u32 = 164;
264 pub const NVML_FI_DEV_NVLINK_GET_STATE: u32 = 165;
265 pub const NVML_FI_DEV_NVLINK_GET_VERSION: u32 = 166;
266 pub const NVML_FI_DEV_NVLINK_GET_POWER_STATE: u32 = 167;
267 pub const NVML_FI_DEV_NVLINK_GET_POWER_THRESHOLD: u32 = 168;
268 pub const NVML_FI_DEV_PCIE_L0_TO_RECOVERY_COUNTER: u32 = 169;
269 pub const NVML_FI_DEV_C2C_LINK_COUNT: u32 = 170;
270 pub const NVML_FI_DEV_C2C_LINK_GET_STATUS: u32 = 171;
271 pub const NVML_FI_DEV_C2C_LINK_GET_MAX_BW: u32 = 172;
272 pub const NVML_FI_DEV_PCIE_COUNT_CORRECTABLE_ERRORS: u32 = 173;
273 pub const NVML_FI_DEV_PCIE_COUNT_NAKS_RECEIVED: u32 = 174;
274 pub const NVML_FI_DEV_PCIE_COUNT_RECEIVER_ERROR: u32 = 175;
275 pub const NVML_FI_DEV_PCIE_COUNT_BAD_TLP: u32 = 176;
276 pub const NVML_FI_DEV_PCIE_COUNT_NAKS_SENT: u32 = 177;
277 pub const NVML_FI_DEV_PCIE_COUNT_BAD_DLLP: u32 = 178;
278 pub const NVML_FI_DEV_PCIE_COUNT_NON_FATAL_ERROR: u32 = 179;
279 pub const NVML_FI_DEV_PCIE_COUNT_FATAL_ERROR: u32 = 180;
280 pub const NVML_FI_DEV_PCIE_COUNT_UNSUPPORTED_REQ: u32 = 181;
281 pub const NVML_FI_DEV_PCIE_COUNT_LCRC_ERROR: u32 = 182;
282 pub const NVML_FI_DEV_PCIE_COUNT_LANE_ERROR: u32 = 183;
283 pub const NVML_FI_DEV_IS_RESETLESS_MIG_SUPPORTED: u32 = 184;
284 pub const NVML_FI_DEV_POWER_AVERAGE: u32 = 185;
285 pub const NVML_FI_DEV_POWER_INSTANT: u32 = 186;
286 pub const NVML_FI_DEV_POWER_MIN_LIMIT: u32 = 187;
287 pub const NVML_FI_DEV_POWER_MAX_LIMIT: u32 = 188;
288 pub const NVML_FI_DEV_POWER_DEFAULT_LIMIT: u32 = 189;
289 pub const NVML_FI_DEV_POWER_CURRENT_LIMIT: u32 = 190;
290 pub const NVML_FI_DEV_ENERGY: u32 = 191;
291 pub const NVML_FI_DEV_POWER_REQUESTED_LIMIT: u32 = 192;
292 pub const NVML_FI_DEV_TEMPERATURE_SHUTDOWN_TLIMIT: u32 = 193;
293 pub const NVML_FI_DEV_TEMPERATURE_SLOWDOWN_TLIMIT: u32 = 194;
294 pub const NVML_FI_DEV_TEMPERATURE_MEM_MAX_TLIMIT: u32 = 195;
295 pub const NVML_FI_DEV_TEMPERATURE_GPU_MAX_TLIMIT: u32 = 196;
296 pub const NVML_FI_DEV_PCIE_COUNT_TX_BYTES: u32 = 197;
297 pub const NVML_FI_DEV_PCIE_COUNT_RX_BYTES: u32 = 198;
298 pub const NVML_FI_DEV_IS_MIG_MODE_INDEPENDENT_MIG_QUERY_CAPABLE: u32 = 199;
299 pub const NVML_FI_DEV_NVLINK_GET_POWER_THRESHOLD_MAX: u32 = 200;
300 pub const NVML_FI_DEV_NVLINK_COUNT_XMIT_PACKETS: u32 = 201;
301 pub const NVML_FI_DEV_NVLINK_COUNT_XMIT_BYTES: u32 = 202;
302 pub const NVML_FI_DEV_NVLINK_COUNT_RCV_PACKETS: u32 = 203;
303 pub const NVML_FI_DEV_NVLINK_COUNT_RCV_BYTES: u32 = 204;
304 pub const NVML_FI_DEV_NVLINK_COUNT_VL15_DROPPED: u32 = 205;
305 pub const NVML_FI_DEV_NVLINK_COUNT_MALFORMED_PACKET_ERRORS: u32 = 206;
306 pub const NVML_FI_DEV_NVLINK_COUNT_BUFFER_OVERRUN_ERRORS: u32 = 207;
307 pub const NVML_FI_DEV_NVLINK_COUNT_RCV_ERRORS: u32 = 208;
308 pub const NVML_FI_DEV_NVLINK_COUNT_RCV_REMOTE_ERRORS: u32 = 209;
309 pub const NVML_FI_DEV_NVLINK_COUNT_RCV_GENERAL_ERRORS: u32 = 210;
310 pub const NVML_FI_DEV_NVLINK_COUNT_LOCAL_LINK_INTEGRITY_ERRORS: u32 = 211;
311 pub const NVML_FI_DEV_NVLINK_COUNT_XMIT_DISCARDS: u32 = 212;
312 pub const NVML_FI_DEV_NVLINK_COUNT_LINK_RECOVERY_SUCCESSFUL_EVENTS: u32 = 213;
313 pub const NVML_FI_DEV_NVLINK_COUNT_LINK_RECOVERY_FAILED_EVENTS: u32 = 214;
314 pub const NVML_FI_DEV_NVLINK_COUNT_LINK_RECOVERY_EVENTS: u32 = 215;
315 pub const NVML_FI_DEV_NVLINK_COUNT_RAW_BER_LANE0: u32 = 216;
316 pub const NVML_FI_DEV_NVLINK_COUNT_RAW_BER_LANE1: u32 = 217;
317 pub const NVML_FI_DEV_NVLINK_COUNT_RAW_BER: u32 = 218;
318 pub const NVML_FI_DEV_NVLINK_COUNT_EFFECTIVE_ERRORS: u32 = 219;
319 pub const NVML_FI_DEV_NVLINK_COUNT_EFFECTIVE_BER: u32 = 220;
320 pub const NVML_FI_DEV_NVLINK_COUNT_SYMBOL_ERRORS: u32 = 221;
321 pub const NVML_FI_DEV_NVLINK_COUNT_SYMBOL_BER: u32 = 222;
322 pub const NVML_FI_DEV_NVLINK_GET_POWER_THRESHOLD_MIN: u32 = 223;
323 pub const NVML_FI_DEV_NVLINK_GET_POWER_THRESHOLD_UNITS: u32 = 224;
324 pub const NVML_FI_DEV_NVLINK_GET_POWER_THRESHOLD_SUPPORTED: u32 = 225;
325 pub const NVML_FI_DEV_RESET_STATUS: u32 = 226;
326 pub const NVML_FI_DEV_DRAIN_AND_RESET_STATUS: u32 = 227;
327 pub const NVML_FI_DEV_PCIE_OUTBOUND_ATOMICS_MASK: u32 = 228;
328 pub const NVML_FI_DEV_PCIE_INBOUND_ATOMICS_MASK: u32 = 229;
329 pub const NVML_FI_DEV_GET_GPU_RECOVERY_ACTION: u32 = 230;
330 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_0: u32 = 235;
331 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_1: u32 = 236;
332 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_2: u32 = 237;
333 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_3: u32 = 238;
334 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_4: u32 = 239;
335 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_5: u32 = 240;
336 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_6: u32 = 241;
337 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_7: u32 = 242;
338 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_8: u32 = 243;
339 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_9: u32 = 244;
340 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_10: u32 = 245;
341 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_11: u32 = 246;
342 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_12: u32 = 247;
343 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_13: u32 = 248;
344 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_14: u32 = 249;
345 pub const NVML_FI_DEV_NVLINK_COUNT_FEC_HISTORY_15: u32 = 250;
346 pub const NVML_FI_PWR_SMOOTHING_ENABLED: u32 = 251;
347 pub const NVML_FI_PWR_SMOOTHING_PRIV_LVL: u32 = 252;
348 pub const NVML_FI_PWR_SMOOTHING_IMM_RAMP_DOWN_ENABLED: u32 = 253;
349 pub const NVML_FI_PWR_SMOOTHING_APPLIED_TMP_CEIL: u32 = 254;
350 pub const NVML_FI_PWR_SMOOTHING_APPLIED_TMP_FLOOR: u32 = 255;
351 pub const NVML_FI_PWR_SMOOTHING_MAX_PERCENT_TMP_FLOOR_SETTING: u32 = 256;
352 pub const NVML_FI_PWR_SMOOTHING_MIN_PERCENT_TMP_FLOOR_SETTING: u32 = 257;
353 pub const NVML_FI_PWR_SMOOTHING_HW_CIRCUITRY_PERCENT_LIFETIME_REMAINING: u32 = 258;
354 pub const NVML_FI_PWR_SMOOTHING_MAX_NUM_PRESET_PROFILES: u32 = 259;
355 pub const NVML_FI_PWR_SMOOTHING_PROFILE_PERCENT_TMP_FLOOR: u32 = 260;
356 pub const NVML_FI_PWR_SMOOTHING_PROFILE_RAMP_UP_RATE: u32 = 261;
357 pub const NVML_FI_PWR_SMOOTHING_PROFILE_RAMP_DOWN_RATE: u32 = 262;
358 pub const NVML_FI_PWR_SMOOTHING_PROFILE_RAMP_DOWN_HYST_VAL: u32 = 263;
359 pub const NVML_FI_PWR_SMOOTHING_ACTIVE_PRESET_PROFILE: u32 = 264;
360 pub const NVML_FI_PWR_SMOOTHING_ADMIN_OVERRIDE_PERCENT_TMP_FLOOR: u32 = 265;
361 pub const NVML_FI_PWR_SMOOTHING_ADMIN_OVERRIDE_RAMP_UP_RATE: u32 = 266;
362 pub const NVML_FI_PWR_SMOOTHING_ADMIN_OVERRIDE_RAMP_DOWN_RATE: u32 = 267;
363 pub const NVML_FI_PWR_SMOOTHING_ADMIN_OVERRIDE_RAMP_DOWN_HYST_VAL: u32 = 268;
364 pub const NVML_FI_MAX: u32 = 269;
365}
366pub const NVML_NVLINK_LOW_POWER_THRESHOLD_UNIT_100US: u32 = 0;
367pub const NVML_NVLINK_LOW_POWER_THRESHOLD_UNIT_50US: u32 = 1;
368pub const NVML_NVLINK_POWER_STATE_HIGH_SPEED: u32 = 0;
369pub const NVML_NVLINK_POWER_STATE_LOW: u32 = 1;
370pub const NVML_NVLINK_LOW_POWER_THRESHOLD_MIN: u32 = 1;
371pub const NVML_NVLINK_LOW_POWER_THRESHOLD_MAX: u32 = 8191;
372pub const NVML_NVLINK_LOW_POWER_THRESHOLD_RESET: u32 = 4294967295;
373pub const NVML_NVLINK_LOW_POWER_THRESHOLD_DEFAULT: u32 = 4294967295;
374pub const nvmlEventTypeNone: u32 = 0;
375pub const nvmlEventTypeSingleBitEccError: u32 = 1;
376pub const nvmlEventTypeDoubleBitEccError: u32 = 2;
377pub const nvmlEventTypePState: u32 = 4;
378pub const nvmlEventTypeXidCriticalError: u32 = 8;
379pub const nvmlEventTypeClock: u32 = 16;
380pub const nvmlEventTypePowerSourceChange: u32 = 128;
381pub const nvmlEventMigConfigChange: u32 = 256;
382pub const nvmlEventTypeSingleBitEccErrorStorm: u32 = 512;
383pub const nvmlEventTypeDramRetirementEvent: u32 = 1024;
384pub const nvmlEventTypeDramRetirementFailure: u32 = 2048;
385pub const nvmlEventTypeNonFatalPoisonError: u32 = 4096;
386pub const nvmlEventTypeFatalPoisonError: u32 = 8192;
387pub const nvmlEventTypeGpuUnavailableError: u32 = 16384;
388pub const nvmlEventTypeGpuRecoveryAction: u32 = 32768;
389pub const nvmlEventTypeAll: u32 = 65439;
390pub const nvmlClocksEventReasonGpuIdle: u32 = 1;
391pub const nvmlClocksEventReasonApplicationsClocksSetting: u32 = 2;
392pub const nvmlClocksThrottleReasonUserDefinedClocks: u32 = 2;
393pub const nvmlClocksEventReasonSwPowerCap: u32 = 4;
394pub const nvmlClocksThrottleReasonHwSlowdown: u32 = 8;
395pub const nvmlClocksEventReasonSyncBoost: u32 = 16;
396pub const nvmlClocksEventReasonSwThermalSlowdown: u32 = 32;
397pub const nvmlClocksThrottleReasonHwThermalSlowdown: u32 = 64;
398pub const nvmlClocksThrottleReasonHwPowerBrakeSlowdown: u32 = 128;
399pub const nvmlClocksEventReasonDisplayClockSetting: u32 = 256;
400pub const nvmlClocksEventReasonNone: u32 = 0;
401pub const nvmlClocksThrottleReasonGpuIdle: u32 = 1;
402pub const nvmlClocksThrottleReasonApplicationsClocksSetting: u32 = 2;
403pub const nvmlClocksThrottleReasonSyncBoost: u32 = 16;
404pub const nvmlClocksThrottleReasonSwPowerCap: u32 = 4;
405pub const nvmlClocksThrottleReasonSwThermalSlowdown: u32 = 32;
406pub const nvmlClocksThrottleReasonDisplayClockSetting: u32 = 256;
407pub const nvmlClocksThrottleReasonNone: u32 = 0;
408pub const NVML_NVFBC_SESSION_FLAG_DIFFMAP_ENABLED: u32 = 1;
409pub const NVML_NVFBC_SESSION_FLAG_CLASSIFICATIONMAP_ENABLED: u32 = 2;
410pub const NVML_NVFBC_SESSION_FLAG_CAPTURE_WITH_WAIT_NO_WAIT: u32 = 4;
411pub const NVML_NVFBC_SESSION_FLAG_CAPTURE_WITH_WAIT_INFINITE: u32 = 8;
412pub const NVML_NVFBC_SESSION_FLAG_CAPTURE_WITH_WAIT_TIMEOUT: u32 = 16;
413pub const NVML_CC_SYSTEM_CPU_CAPS_NONE: u32 = 0;
414pub const NVML_CC_SYSTEM_CPU_CAPS_AMD_SEV: u32 = 1;
415pub const NVML_CC_SYSTEM_CPU_CAPS_INTEL_TDX: u32 = 2;
416pub const NVML_CC_SYSTEM_CPU_CAPS_AMD_SEV_SNP: u32 = 3;
417pub const NVML_CC_SYSTEM_CPU_CAPS_AMD_SNP_VTOM: u32 = 4;
418pub const NVML_CC_SYSTEM_GPUS_CC_NOT_CAPABLE: u32 = 0;
419pub const NVML_CC_SYSTEM_GPUS_CC_CAPABLE: u32 = 1;
420pub const NVML_CC_SYSTEM_DEVTOOLS_MODE_OFF: u32 = 0;
421pub const NVML_CC_SYSTEM_DEVTOOLS_MODE_ON: u32 = 1;
422pub const NVML_CC_SYSTEM_ENVIRONMENT_UNAVAILABLE: u32 = 0;
423pub const NVML_CC_SYSTEM_ENVIRONMENT_SIM: u32 = 1;
424pub const NVML_CC_SYSTEM_ENVIRONMENT_PROD: u32 = 2;
425pub const NVML_CC_SYSTEM_FEATURE_DISABLED: u32 = 0;
426pub const NVML_CC_SYSTEM_FEATURE_ENABLED: u32 = 1;
427pub const NVML_CC_SYSTEM_MULTIGPU_NONE: u32 = 0;
428pub const NVML_CC_SYSTEM_MULTIGPU_PROTECTED_PCIE: u32 = 1;
429pub const NVML_CC_ACCEPTING_CLIENT_REQUESTS_FALSE: u32 = 0;
430pub const NVML_CC_ACCEPTING_CLIENT_REQUESTS_TRUE: u32 = 1;
431pub const NVML_GPU_CERT_CHAIN_SIZE: u32 = 4096;
432pub const NVML_GPU_ATTESTATION_CERT_CHAIN_SIZE: u32 = 5120;
433pub const NVML_CC_GPU_CEC_NONCE_SIZE: u32 = 32;
434pub const NVML_CC_GPU_ATTESTATION_REPORT_SIZE: u32 = 8192;
435pub const NVML_CC_GPU_CEC_ATTESTATION_REPORT_SIZE: u32 = 4096;
436pub const NVML_CC_CEC_ATTESTATION_REPORT_NOT_PRESENT: u32 = 0;
437pub const NVML_CC_CEC_ATTESTATION_REPORT_PRESENT: u32 = 1;
438pub const NVML_CC_KEY_ROTATION_THRESHOLD_ATTACKER_ADVANTAGE_MIN: u32 = 50;
439pub const NVML_CC_KEY_ROTATION_THRESHOLD_ATTACKER_ADVANTAGE_MAX: u32 = 65;
440pub const NVML_GPU_FABRIC_UUID_LEN: u32 = 16;
441pub const NVML_GPU_FABRIC_STATE_NOT_SUPPORTED: u32 = 0;
442pub const NVML_GPU_FABRIC_STATE_NOT_STARTED: u32 = 1;
443pub const NVML_GPU_FABRIC_STATE_IN_PROGRESS: u32 = 2;
444pub const NVML_GPU_FABRIC_STATE_COMPLETED: u32 = 3;
445pub const NVML_GPU_FABRIC_HEALTH_MASK_DEGRADED_BW_NOT_SUPPORTED: u32 = 0;
446pub const NVML_GPU_FABRIC_HEALTH_MASK_DEGRADED_BW_TRUE: u32 = 1;
447pub const NVML_GPU_FABRIC_HEALTH_MASK_DEGRADED_BW_FALSE: u32 = 2;
448pub const NVML_GPU_FABRIC_HEALTH_MASK_SHIFT_DEGRADED_BW: u32 = 0;
449pub const NVML_GPU_FABRIC_HEALTH_MASK_WIDTH_DEGRADED_BW: u32 = 3;
450pub const NVML_GPU_FABRIC_HEALTH_MASK_ROUTE_RECOVERY_NOT_SUPPORTED: u32 = 0;
451pub const NVML_GPU_FABRIC_HEALTH_MASK_ROUTE_RECOVERY_TRUE: u32 = 1;
452pub const NVML_GPU_FABRIC_HEALTH_MASK_ROUTE_RECOVERY_FALSE: u32 = 2;
453pub const NVML_GPU_FABRIC_HEALTH_MASK_SHIFT_ROUTE_RECOVERY: u32 = 2;
454pub const NVML_GPU_FABRIC_HEALTH_MASK_WIDTH_ROUTE_RECOVERY: u32 = 3;
455pub const NVML_GPU_FABRIC_HEALTH_MASK_ROUTE_UNHEALTHY_NOT_SUPPORTED: u32 = 0;
456pub const NVML_GPU_FABRIC_HEALTH_MASK_ROUTE_UNHEALTHY_TRUE: u32 = 1;
457pub const NVML_GPU_FABRIC_HEALTH_MASK_ROUTE_UNHEALTHY_FALSE: u32 = 2;
458pub const NVML_GPU_FABRIC_HEALTH_MASK_SHIFT_ROUTE_UNHEALTHY: u32 = 4;
459pub const NVML_GPU_FABRIC_HEALTH_MASK_WIDTH_ROUTE_UNHEALTHY: u32 = 3;
460pub const NVML_GPU_FABRIC_HEALTH_MASK_ACCESS_TIMEOUT_RECOVERY_NOT_SUPPORTED: u32 = 0;
461pub const NVML_GPU_FABRIC_HEALTH_MASK_ACCESS_TIMEOUT_RECOVERY_TRUE: u32 = 1;
462pub const NVML_GPU_FABRIC_HEALTH_MASK_ACCESS_TIMEOUT_RECOVERY_FALSE: u32 = 2;
463pub const NVML_GPU_FABRIC_HEALTH_MASK_SHIFT_ACCESS_TIMEOUT_RECOVERY: u32 = 6;
464pub const NVML_GPU_FABRIC_HEALTH_MASK_WIDTH_ACCESS_TIMEOUT_RECOVERY: u32 = 3;
465pub const NVML_INIT_FLAG_NO_GPUS: u32 = 1;
466pub const NVML_INIT_FLAG_NO_ATTACH: u32 = 2;
467pub const NVML_DEVICE_INFOROM_VERSION_BUFFER_SIZE: u32 = 16;
468pub const NVML_DEVICE_UUID_BUFFER_SIZE: u32 = 80;
469pub const NVML_DEVICE_UUID_V2_BUFFER_SIZE: u32 = 96;
470pub const NVML_DEVICE_PART_NUMBER_BUFFER_SIZE: u32 = 80;
471pub const NVML_SYSTEM_DRIVER_VERSION_BUFFER_SIZE: u32 = 80;
472pub const NVML_SYSTEM_NVML_VERSION_BUFFER_SIZE: u32 = 80;
473pub const NVML_DEVICE_NAME_BUFFER_SIZE: u32 = 64;
474pub const NVML_DEVICE_NAME_V2_BUFFER_SIZE: u32 = 96;
475pub const NVML_DEVICE_SERIAL_BUFFER_SIZE: u32 = 30;
476pub const NVML_DEVICE_VBIOS_VERSION_BUFFER_SIZE: u32 = 32;
477pub const NVML_AFFINITY_SCOPE_NODE: u32 = 0;
478pub const NVML_AFFINITY_SCOPE_SOCKET: u32 = 1;
479pub const NVML_NVLINK_BER_MANTISSA_SHIFT: u32 = 8;
480pub const NVML_NVLINK_BER_MANTISSA_WIDTH: u32 = 15;
481pub const NVML_NVLINK_BER_EXP_SHIFT: u32 = 0;
482pub const NVML_NVLINK_BER_EXP_WIDTH: u32 = 255;
483pub const NVML_NVLINK_STATE_INACTIVE: u32 = 0;
484pub const NVML_NVLINK_STATE_ACTIVE: u32 = 1;
485pub const NVML_NVLINK_STATE_SLEEP: u32 = 2;
486pub const NVML_NVLINK_TOTAL_SUPPORTED_BW_MODES: u32 = 23;
487pub const NVML_DEVICE_MIG_DISABLE: u32 = 0;
488pub const NVML_DEVICE_MIG_ENABLE: u32 = 1;
489pub const NVML_GPU_INSTANCE_PROFILE_1_SLICE: u32 = 0;
490pub const NVML_GPU_INSTANCE_PROFILE_2_SLICE: u32 = 1;
491pub const NVML_GPU_INSTANCE_PROFILE_3_SLICE: u32 = 2;
492pub const NVML_GPU_INSTANCE_PROFILE_4_SLICE: u32 = 3;
493pub const NVML_GPU_INSTANCE_PROFILE_7_SLICE: u32 = 4;
494pub const NVML_GPU_INSTANCE_PROFILE_8_SLICE: u32 = 5;
495pub const NVML_GPU_INSTANCE_PROFILE_6_SLICE: u32 = 6;
496pub const NVML_GPU_INSTANCE_PROFILE_1_SLICE_REV1: u32 = 7;
497pub const NVML_GPU_INSTANCE_PROFILE_2_SLICE_REV1: u32 = 8;
498pub const NVML_GPU_INSTANCE_PROFILE_1_SLICE_REV2: u32 = 9;
499pub const NVML_GPU_INSTANCE_PROFILE_1_SLICE_GFX: u32 = 10;
500pub const NVML_GPU_INSTANCE_PROFILE_2_SLICE_GFX: u32 = 11;
501pub const NVML_GPU_INSTANCE_PROFILE_4_SLICE_GFX: u32 = 12;
502pub const NVML_GPU_INSTANCE_PROFILE_COUNT: u32 = 13;
503pub const NVML_GPU_INSTANCE_PROFILE_CAPS_P2P: u32 = 1;
504pub const NVML_GPU_INTSTANCE_PROFILE_CAPS_P2P: u32 = 1;
505pub const NVML_GPU_INSTANCE_PROFILE_CAPS_GFX: u32 = 2;
506pub const NVML_COMPUTE_INSTANCE_PROFILE_CAPS_GFX: u32 = 1;
507pub const NVML_COMPUTE_INSTANCE_PROFILE_1_SLICE: u32 = 0;
508pub const NVML_COMPUTE_INSTANCE_PROFILE_2_SLICE: u32 = 1;
509pub const NVML_COMPUTE_INSTANCE_PROFILE_3_SLICE: u32 = 2;
510pub const NVML_COMPUTE_INSTANCE_PROFILE_4_SLICE: u32 = 3;
511pub const NVML_COMPUTE_INSTANCE_PROFILE_7_SLICE: u32 = 4;
512pub const NVML_COMPUTE_INSTANCE_PROFILE_8_SLICE: u32 = 5;
513pub const NVML_COMPUTE_INSTANCE_PROFILE_6_SLICE: u32 = 6;
514pub const NVML_COMPUTE_INSTANCE_PROFILE_1_SLICE_REV1: u32 = 7;
515pub const NVML_COMPUTE_INSTANCE_PROFILE_COUNT: u32 = 8;
516pub const NVML_COMPUTE_INSTANCE_ENGINE_PROFILE_SHARED: u32 = 0;
517pub const NVML_COMPUTE_INSTANCE_ENGINE_PROFILE_COUNT: u32 = 1;
518pub const NVML_GPM_METRICS_GET_VERSION: u32 = 1;
519pub const NVML_GPM_SUPPORT_VERSION: u32 = 1;
520pub const NVML_DEV_CAP_EGM: u32 = 1;
521pub const NVML_255_MASK_BITS_PER_ELEM: u32 = 32;
522pub const NVML_255_MASK_NUM_ELEMS: u32 = 8;
523pub const NVML_WORKLOAD_POWER_MAX_PROFILES: u32 = 255;
524pub const NVML_POWER_SMOOTHING_MAX_NUM_PROFILES: u32 = 5;
525pub const NVML_POWER_SMOOTHING_NUM_PROFILE_PARAMS: u32 = 4;
526pub const NVML_POWER_SMOOTHING_ADMIN_OVERRIDE_NOT_SET: u32 = 4294967295;
527pub const NVML_POWER_SMOOTHING_PROFILE_PARAM_PERCENT_TMP_FLOOR: u32 = 0;
528pub const NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_UP_RATE: u32 = 1;
529pub const NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_RATE: u32 = 2;
530pub const NVML_POWER_SMOOTHING_PROFILE_PARAM_RAMP_DOWN_HYSTERESIS: u32 = 3;
531#[repr(C)]
532#[derive(Debug, Copy, Clone)]
533pub struct nvmlDevice_st {
534 _unused: [u8; 0],
535}
536pub type nvmlDevice_t = *mut nvmlDevice_st;
537#[repr(C)]
538#[derive(Debug, Copy, Clone)]
539pub struct nvmlPciInfoExt_v1_t {
540 pub version: raw::c_uint,
541 pub domain: raw::c_uint,
542 pub bus: raw::c_uint,
543 pub device: raw::c_uint,
544 pub pciDeviceId: raw::c_uint,
545 pub pciSubSystemId: raw::c_uint,
546 pub baseClass: raw::c_uint,
547 pub subClass: raw::c_uint,
548 pub busId: [raw::c_char; 32usize],
549}
550pub type nvmlPciInfoExt_t = nvmlPciInfoExt_v1_t;
551#[repr(C)]
552#[derive(Debug, Copy, Clone)]
553pub struct nvmlPciInfo_st {
554 pub busIdLegacy: [raw::c_char; 16usize],
555 pub domain: raw::c_uint,
556 pub bus: raw::c_uint,
557 pub device: raw::c_uint,
558 pub pciDeviceId: raw::c_uint,
559 pub pciSubSystemId: raw::c_uint,
560 pub busId: [raw::c_char; 32usize],
561}
562pub type nvmlPciInfo_t = nvmlPciInfo_st;
563#[repr(C)]
564#[derive(Debug, Copy, Clone)]
565pub struct nvmlEccErrorCounts_st {
566 pub l1Cache: raw::c_ulonglong,
567 pub l2Cache: raw::c_ulonglong,
568 pub deviceMemory: raw::c_ulonglong,
569 pub registerFile: raw::c_ulonglong,
570}
571pub type nvmlEccErrorCounts_t = nvmlEccErrorCounts_st;
572#[repr(C)]
573#[derive(Debug, Copy, Clone)]
574pub struct nvmlUtilization_st {
575 pub gpu: raw::c_uint,
576 pub memory: raw::c_uint,
577}
578pub type nvmlUtilization_t = nvmlUtilization_st;
579#[repr(C)]
580#[derive(Debug, Copy, Clone)]
581pub struct nvmlMemory_st {
582 pub total: raw::c_ulonglong,
583 pub free: raw::c_ulonglong,
584 pub used: raw::c_ulonglong,
585}
586pub type nvmlMemory_t = nvmlMemory_st;
587#[repr(C)]
588#[derive(Debug, Copy, Clone)]
589pub struct nvmlMemory_v2_st {
590 pub version: raw::c_uint,
591 pub total: raw::c_ulonglong,
592 pub reserved: raw::c_ulonglong,
593 pub free: raw::c_ulonglong,
594 pub used: raw::c_ulonglong,
595}
596pub type nvmlMemory_v2_t = nvmlMemory_v2_st;
597#[repr(C)]
598#[derive(Debug, Copy, Clone)]
599pub struct nvmlBAR1Memory_st {
600 pub bar1Total: raw::c_ulonglong,
601 pub bar1Free: raw::c_ulonglong,
602 pub bar1Used: raw::c_ulonglong,
603}
604pub type nvmlBAR1Memory_t = nvmlBAR1Memory_st;
605#[repr(C)]
606#[derive(Debug, Copy, Clone)]
607pub struct nvmlProcessInfo_v1_st {
608 pub pid: raw::c_uint,
609 pub usedGpuMemory: raw::c_ulonglong,
610}
611pub type nvmlProcessInfo_v1_t = nvmlProcessInfo_v1_st;
612#[repr(C)]
613#[derive(Debug, Copy, Clone)]
614pub struct nvmlProcessInfo_v2_st {
615 pub pid: raw::c_uint,
616 pub usedGpuMemory: raw::c_ulonglong,
617 pub gpuInstanceId: raw::c_uint,
618 pub computeInstanceId: raw::c_uint,
619}
620pub type nvmlProcessInfo_v2_t = nvmlProcessInfo_v2_st;
621pub type nvmlProcessInfo_t = nvmlProcessInfo_v2_st;
622#[repr(C)]
623#[derive(Debug, Copy, Clone)]
624pub struct nvmlProcessDetail_v1_t {
625 pub pid: raw::c_uint,
626 pub usedGpuMemory: raw::c_ulonglong,
627 pub gpuInstanceId: raw::c_uint,
628 pub computeInstanceId: raw::c_uint,
629 pub usedGpuCcProtectedMemory: raw::c_ulonglong,
630}
631#[repr(C)]
632#[derive(Debug, Copy, Clone)]
633pub struct nvmlProcessDetailList_v1_t {
634 pub version: raw::c_uint,
635 pub mode: raw::c_uint,
636 pub numProcArrayEntries: raw::c_uint,
637 pub procArray: *mut nvmlProcessDetail_v1_t,
638}
639pub type nvmlProcessDetailList_t = nvmlProcessDetailList_v1_t;
640#[repr(C)]
641#[derive(Debug, Copy, Clone)]
642pub struct nvmlDeviceAttributes_st {
643 pub multiprocessorCount: raw::c_uint,
644 pub sharedCopyEngineCount: raw::c_uint,
645 pub sharedDecoderCount: raw::c_uint,
646 pub sharedEncoderCount: raw::c_uint,
647 pub sharedJpegCount: raw::c_uint,
648 pub sharedOfaCount: raw::c_uint,
649 pub gpuInstanceSliceCount: raw::c_uint,
650 pub computeInstanceSliceCount: raw::c_uint,
651 pub memorySizeMB: raw::c_ulonglong,
652}
653pub type nvmlDeviceAttributes_t = nvmlDeviceAttributes_st;
654#[repr(C)]
655#[derive(Debug, Copy, Clone)]
656pub struct nvmlC2cModeInfo_v1_t {
657 pub isC2cEnabled: raw::c_uint,
658}
659#[repr(C)]
660#[derive(Debug, Copy, Clone)]
661pub struct nvmlRowRemapperHistogramValues_st {
662 pub max: raw::c_uint,
663 pub high: raw::c_uint,
664 pub partial: raw::c_uint,
665 pub low: raw::c_uint,
666 pub none: raw::c_uint,
667}
668pub type nvmlRowRemapperHistogramValues_t = nvmlRowRemapperHistogramValues_st;
669pub const nvmlBridgeChipType_enum_NVML_BRIDGE_CHIP_PLX: nvmlBridgeChipType_enum = 0;
670pub const nvmlBridgeChipType_enum_NVML_BRIDGE_CHIP_BRO4: nvmlBridgeChipType_enum = 1;
671pub type nvmlBridgeChipType_enum = raw::c_uint;
672pub use self::nvmlBridgeChipType_enum as nvmlBridgeChipType_t;
673pub const nvmlNvLinkUtilizationCountUnits_enum_NVML_NVLINK_COUNTER_UNIT_CYCLES:
674 nvmlNvLinkUtilizationCountUnits_enum = 0;
675pub const nvmlNvLinkUtilizationCountUnits_enum_NVML_NVLINK_COUNTER_UNIT_PACKETS:
676 nvmlNvLinkUtilizationCountUnits_enum = 1;
677pub const nvmlNvLinkUtilizationCountUnits_enum_NVML_NVLINK_COUNTER_UNIT_BYTES:
678 nvmlNvLinkUtilizationCountUnits_enum = 2;
679pub const nvmlNvLinkUtilizationCountUnits_enum_NVML_NVLINK_COUNTER_UNIT_RESERVED:
680 nvmlNvLinkUtilizationCountUnits_enum = 3;
681pub const nvmlNvLinkUtilizationCountUnits_enum_NVML_NVLINK_COUNTER_UNIT_COUNT:
682 nvmlNvLinkUtilizationCountUnits_enum = 4;
683pub type nvmlNvLinkUtilizationCountUnits_enum = raw::c_uint;
684pub use self::nvmlNvLinkUtilizationCountUnits_enum as nvmlNvLinkUtilizationCountUnits_t;
685pub const nvmlNvLinkUtilizationCountPktTypes_enum_NVML_NVLINK_COUNTER_PKTFILTER_NOP:
686 nvmlNvLinkUtilizationCountPktTypes_enum = 1;
687pub const nvmlNvLinkUtilizationCountPktTypes_enum_NVML_NVLINK_COUNTER_PKTFILTER_READ:
688 nvmlNvLinkUtilizationCountPktTypes_enum = 2;
689pub const nvmlNvLinkUtilizationCountPktTypes_enum_NVML_NVLINK_COUNTER_PKTFILTER_WRITE:
690 nvmlNvLinkUtilizationCountPktTypes_enum = 4;
691pub const nvmlNvLinkUtilizationCountPktTypes_enum_NVML_NVLINK_COUNTER_PKTFILTER_RATOM:
692 nvmlNvLinkUtilizationCountPktTypes_enum = 8;
693pub const nvmlNvLinkUtilizationCountPktTypes_enum_NVML_NVLINK_COUNTER_PKTFILTER_NRATOM:
694 nvmlNvLinkUtilizationCountPktTypes_enum = 16;
695pub const nvmlNvLinkUtilizationCountPktTypes_enum_NVML_NVLINK_COUNTER_PKTFILTER_FLUSH:
696 nvmlNvLinkUtilizationCountPktTypes_enum = 32;
697pub const nvmlNvLinkUtilizationCountPktTypes_enum_NVML_NVLINK_COUNTER_PKTFILTER_RESPDATA:
698 nvmlNvLinkUtilizationCountPktTypes_enum = 64;
699pub const nvmlNvLinkUtilizationCountPktTypes_enum_NVML_NVLINK_COUNTER_PKTFILTER_RESPNODATA:
700 nvmlNvLinkUtilizationCountPktTypes_enum = 128;
701pub const nvmlNvLinkUtilizationCountPktTypes_enum_NVML_NVLINK_COUNTER_PKTFILTER_ALL:
702 nvmlNvLinkUtilizationCountPktTypes_enum = 255;
703pub type nvmlNvLinkUtilizationCountPktTypes_enum = raw::c_uint;
704pub use self::nvmlNvLinkUtilizationCountPktTypes_enum as nvmlNvLinkUtilizationCountPktTypes_t;
705#[repr(C)]
706#[derive(Debug, Copy, Clone)]
707pub struct nvmlNvLinkUtilizationControl_st {
708 pub units: nvmlNvLinkUtilizationCountUnits_t,
709 pub pktfilter: nvmlNvLinkUtilizationCountPktTypes_t,
710}
711pub type nvmlNvLinkUtilizationControl_t = nvmlNvLinkUtilizationControl_st;
712pub const nvmlNvLinkCapability_enum_NVML_NVLINK_CAP_P2P_SUPPORTED: nvmlNvLinkCapability_enum = 0;
713pub const nvmlNvLinkCapability_enum_NVML_NVLINK_CAP_SYSMEM_ACCESS: nvmlNvLinkCapability_enum = 1;
714pub const nvmlNvLinkCapability_enum_NVML_NVLINK_CAP_P2P_ATOMICS: nvmlNvLinkCapability_enum = 2;
715pub const nvmlNvLinkCapability_enum_NVML_NVLINK_CAP_SYSMEM_ATOMICS: nvmlNvLinkCapability_enum = 3;
716pub const nvmlNvLinkCapability_enum_NVML_NVLINK_CAP_SLI_BRIDGE: nvmlNvLinkCapability_enum = 4;
717pub const nvmlNvLinkCapability_enum_NVML_NVLINK_CAP_VALID: nvmlNvLinkCapability_enum = 5;
718pub const nvmlNvLinkCapability_enum_NVML_NVLINK_CAP_COUNT: nvmlNvLinkCapability_enum = 6;
719pub type nvmlNvLinkCapability_enum = raw::c_uint;
720pub use self::nvmlNvLinkCapability_enum as nvmlNvLinkCapability_t;
721pub const nvmlNvLinkErrorCounter_enum_NVML_NVLINK_ERROR_DL_REPLAY: nvmlNvLinkErrorCounter_enum = 0;
722pub const nvmlNvLinkErrorCounter_enum_NVML_NVLINK_ERROR_DL_RECOVERY: nvmlNvLinkErrorCounter_enum =
723 1;
724pub const nvmlNvLinkErrorCounter_enum_NVML_NVLINK_ERROR_DL_CRC_FLIT: nvmlNvLinkErrorCounter_enum =
725 2;
726pub const nvmlNvLinkErrorCounter_enum_NVML_NVLINK_ERROR_DL_CRC_DATA: nvmlNvLinkErrorCounter_enum =
727 3;
728pub const nvmlNvLinkErrorCounter_enum_NVML_NVLINK_ERROR_DL_ECC_DATA: nvmlNvLinkErrorCounter_enum =
729 4;
730pub const nvmlNvLinkErrorCounter_enum_NVML_NVLINK_ERROR_COUNT: nvmlNvLinkErrorCounter_enum = 5;
731pub type nvmlNvLinkErrorCounter_enum = raw::c_uint;
732pub use self::nvmlNvLinkErrorCounter_enum as nvmlNvLinkErrorCounter_t;
733pub const nvmlIntNvLinkDeviceType_enum_NVML_NVLINK_DEVICE_TYPE_GPU: nvmlIntNvLinkDeviceType_enum =
734 0;
735pub const nvmlIntNvLinkDeviceType_enum_NVML_NVLINK_DEVICE_TYPE_IBMNPU:
736 nvmlIntNvLinkDeviceType_enum = 1;
737pub const nvmlIntNvLinkDeviceType_enum_NVML_NVLINK_DEVICE_TYPE_SWITCH:
738 nvmlIntNvLinkDeviceType_enum = 2;
739pub const nvmlIntNvLinkDeviceType_enum_NVML_NVLINK_DEVICE_TYPE_UNKNOWN:
740 nvmlIntNvLinkDeviceType_enum = 255;
741pub type nvmlIntNvLinkDeviceType_enum = raw::c_uint;
742pub use self::nvmlIntNvLinkDeviceType_enum as nvmlIntNvLinkDeviceType_t;
743pub const nvmlGpuLevel_enum_NVML_TOPOLOGY_INTERNAL: nvmlGpuLevel_enum = 0;
744pub const nvmlGpuLevel_enum_NVML_TOPOLOGY_SINGLE: nvmlGpuLevel_enum = 10;
745pub const nvmlGpuLevel_enum_NVML_TOPOLOGY_MULTIPLE: nvmlGpuLevel_enum = 20;
746pub const nvmlGpuLevel_enum_NVML_TOPOLOGY_HOSTBRIDGE: nvmlGpuLevel_enum = 30;
747pub const nvmlGpuLevel_enum_NVML_TOPOLOGY_NODE: nvmlGpuLevel_enum = 40;
748pub const nvmlGpuLevel_enum_NVML_TOPOLOGY_SYSTEM: nvmlGpuLevel_enum = 50;
749pub type nvmlGpuLevel_enum = raw::c_uint;
750pub use self::nvmlGpuLevel_enum as nvmlGpuTopologyLevel_t;
751pub const nvmlGpuP2PStatus_enum_NVML_P2P_STATUS_OK: nvmlGpuP2PStatus_enum = 0;
752pub const nvmlGpuP2PStatus_enum_NVML_P2P_STATUS_CHIPSET_NOT_SUPPORED: nvmlGpuP2PStatus_enum = 1;
753pub const nvmlGpuP2PStatus_enum_NVML_P2P_STATUS_CHIPSET_NOT_SUPPORTED: nvmlGpuP2PStatus_enum = 1;
754pub const nvmlGpuP2PStatus_enum_NVML_P2P_STATUS_GPU_NOT_SUPPORTED: nvmlGpuP2PStatus_enum = 2;
755pub const nvmlGpuP2PStatus_enum_NVML_P2P_STATUS_IOH_TOPOLOGY_NOT_SUPPORTED: nvmlGpuP2PStatus_enum =
756 3;
757pub const nvmlGpuP2PStatus_enum_NVML_P2P_STATUS_DISABLED_BY_REGKEY: nvmlGpuP2PStatus_enum = 4;
758pub const nvmlGpuP2PStatus_enum_NVML_P2P_STATUS_NOT_SUPPORTED: nvmlGpuP2PStatus_enum = 5;
759pub const nvmlGpuP2PStatus_enum_NVML_P2P_STATUS_UNKNOWN: nvmlGpuP2PStatus_enum = 6;
760pub type nvmlGpuP2PStatus_enum = raw::c_uint;
761pub use self::nvmlGpuP2PStatus_enum as nvmlGpuP2PStatus_t;
762pub const nvmlGpuP2PCapsIndex_enum_NVML_P2P_CAPS_INDEX_READ: nvmlGpuP2PCapsIndex_enum = 0;
763pub const nvmlGpuP2PCapsIndex_enum_NVML_P2P_CAPS_INDEX_WRITE: nvmlGpuP2PCapsIndex_enum = 1;
764pub const nvmlGpuP2PCapsIndex_enum_NVML_P2P_CAPS_INDEX_NVLINK: nvmlGpuP2PCapsIndex_enum = 2;
765pub const nvmlGpuP2PCapsIndex_enum_NVML_P2P_CAPS_INDEX_ATOMICS: nvmlGpuP2PCapsIndex_enum = 3;
766pub const nvmlGpuP2PCapsIndex_enum_NVML_P2P_CAPS_INDEX_PCI: nvmlGpuP2PCapsIndex_enum = 4;
767pub const nvmlGpuP2PCapsIndex_enum_NVML_P2P_CAPS_INDEX_PROP: nvmlGpuP2PCapsIndex_enum = 4;
768pub const nvmlGpuP2PCapsIndex_enum_NVML_P2P_CAPS_INDEX_UNKNOWN: nvmlGpuP2PCapsIndex_enum = 5;
769pub type nvmlGpuP2PCapsIndex_enum = raw::c_uint;
770pub use self::nvmlGpuP2PCapsIndex_enum as nvmlGpuP2PCapsIndex_t;
771#[repr(C)]
772#[derive(Debug, Copy, Clone)]
773pub struct nvmlBridgeChipInfo_st {
774 pub type_: nvmlBridgeChipType_t,
775 pub fwVersion: raw::c_uint,
776}
777pub type nvmlBridgeChipInfo_t = nvmlBridgeChipInfo_st;
778#[repr(C)]
779#[derive(Debug, Copy, Clone)]
780pub struct nvmlBridgeChipHierarchy_st {
781 pub bridgeCount: raw::c_uchar,
782 pub bridgeChipInfo: [nvmlBridgeChipInfo_t; 128usize],
783}
784pub type nvmlBridgeChipHierarchy_t = nvmlBridgeChipHierarchy_st;
785pub const nvmlSamplingType_enum_NVML_TOTAL_POWER_SAMPLES: nvmlSamplingType_enum = 0;
786pub const nvmlSamplingType_enum_NVML_GPU_UTILIZATION_SAMPLES: nvmlSamplingType_enum = 1;
787pub const nvmlSamplingType_enum_NVML_MEMORY_UTILIZATION_SAMPLES: nvmlSamplingType_enum = 2;
788pub const nvmlSamplingType_enum_NVML_ENC_UTILIZATION_SAMPLES: nvmlSamplingType_enum = 3;
789pub const nvmlSamplingType_enum_NVML_DEC_UTILIZATION_SAMPLES: nvmlSamplingType_enum = 4;
790pub const nvmlSamplingType_enum_NVML_PROCESSOR_CLK_SAMPLES: nvmlSamplingType_enum = 5;
791pub const nvmlSamplingType_enum_NVML_MEMORY_CLK_SAMPLES: nvmlSamplingType_enum = 6;
792pub const nvmlSamplingType_enum_NVML_MODULE_POWER_SAMPLES: nvmlSamplingType_enum = 7;
793pub const nvmlSamplingType_enum_NVML_JPG_UTILIZATION_SAMPLES: nvmlSamplingType_enum = 8;
794pub const nvmlSamplingType_enum_NVML_OFA_UTILIZATION_SAMPLES: nvmlSamplingType_enum = 9;
795pub const nvmlSamplingType_enum_NVML_SAMPLINGTYPE_COUNT: nvmlSamplingType_enum = 10;
796pub type nvmlSamplingType_enum = raw::c_uint;
797pub use self::nvmlSamplingType_enum as nvmlSamplingType_t;
798pub const nvmlPcieUtilCounter_enum_NVML_PCIE_UTIL_TX_BYTES: nvmlPcieUtilCounter_enum = 0;
799pub const nvmlPcieUtilCounter_enum_NVML_PCIE_UTIL_RX_BYTES: nvmlPcieUtilCounter_enum = 1;
800pub const nvmlPcieUtilCounter_enum_NVML_PCIE_UTIL_COUNT: nvmlPcieUtilCounter_enum = 2;
801pub type nvmlPcieUtilCounter_enum = raw::c_uint;
802pub use self::nvmlPcieUtilCounter_enum as nvmlPcieUtilCounter_t;
803pub const nvmlValueType_enum_NVML_VALUE_TYPE_DOUBLE: nvmlValueType_enum = 0;
804pub const nvmlValueType_enum_NVML_VALUE_TYPE_UNSIGNED_INT: nvmlValueType_enum = 1;
805pub const nvmlValueType_enum_NVML_VALUE_TYPE_UNSIGNED_LONG: nvmlValueType_enum = 2;
806pub const nvmlValueType_enum_NVML_VALUE_TYPE_UNSIGNED_LONG_LONG: nvmlValueType_enum = 3;
807pub const nvmlValueType_enum_NVML_VALUE_TYPE_SIGNED_LONG_LONG: nvmlValueType_enum = 4;
808pub const nvmlValueType_enum_NVML_VALUE_TYPE_SIGNED_INT: nvmlValueType_enum = 5;
809pub const nvmlValueType_enum_NVML_VALUE_TYPE_UNSIGNED_SHORT: nvmlValueType_enum = 6;
810pub const nvmlValueType_enum_NVML_VALUE_TYPE_COUNT: nvmlValueType_enum = 7;
811pub type nvmlValueType_enum = raw::c_uint;
812pub use self::nvmlValueType_enum as nvmlValueType_t;
813#[repr(C)]
814#[derive(Copy, Clone)]
815pub union nvmlValue_st {
816 pub dVal: f64,
817 pub siVal: raw::c_int,
818 pub uiVal: raw::c_uint,
819 pub ulVal: raw::c_ulong,
820 pub ullVal: raw::c_ulonglong,
821 pub sllVal: raw::c_longlong,
822 pub usVal: raw::c_ushort,
823}
824pub type nvmlValue_t = nvmlValue_st;
825#[repr(C)]
826#[derive(Copy, Clone)]
827pub struct nvmlSample_st {
828 pub timeStamp: raw::c_ulonglong,
829 pub sampleValue: nvmlValue_t,
830}
831pub type nvmlSample_t = nvmlSample_st;
832pub const nvmlPerfPolicyType_enum_NVML_PERF_POLICY_POWER: nvmlPerfPolicyType_enum = 0;
833pub const nvmlPerfPolicyType_enum_NVML_PERF_POLICY_THERMAL: nvmlPerfPolicyType_enum = 1;
834pub const nvmlPerfPolicyType_enum_NVML_PERF_POLICY_SYNC_BOOST: nvmlPerfPolicyType_enum = 2;
835pub const nvmlPerfPolicyType_enum_NVML_PERF_POLICY_BOARD_LIMIT: nvmlPerfPolicyType_enum = 3;
836pub const nvmlPerfPolicyType_enum_NVML_PERF_POLICY_LOW_UTILIZATION: nvmlPerfPolicyType_enum = 4;
837pub const nvmlPerfPolicyType_enum_NVML_PERF_POLICY_RELIABILITY: nvmlPerfPolicyType_enum = 5;
838pub const nvmlPerfPolicyType_enum_NVML_PERF_POLICY_TOTAL_APP_CLOCKS: nvmlPerfPolicyType_enum = 10;
839pub const nvmlPerfPolicyType_enum_NVML_PERF_POLICY_TOTAL_BASE_CLOCKS: nvmlPerfPolicyType_enum = 11;
840pub const nvmlPerfPolicyType_enum_NVML_PERF_POLICY_COUNT: nvmlPerfPolicyType_enum = 12;
841pub type nvmlPerfPolicyType_enum = raw::c_uint;
842pub use self::nvmlPerfPolicyType_enum as nvmlPerfPolicyType_t;
843#[repr(C)]
844#[derive(Debug, Copy, Clone)]
845pub struct nvmlViolationTime_st {
846 pub referenceTime: raw::c_ulonglong,
847 pub violationTime: raw::c_ulonglong,
848}
849pub type nvmlViolationTime_t = nvmlViolationTime_st;
850pub const nvmlThermalTarget_t_NVML_THERMAL_TARGET_NONE: nvmlThermalTarget_t = 0;
851pub const nvmlThermalTarget_t_NVML_THERMAL_TARGET_GPU: nvmlThermalTarget_t = 1;
852pub const nvmlThermalTarget_t_NVML_THERMAL_TARGET_MEMORY: nvmlThermalTarget_t = 2;
853pub const nvmlThermalTarget_t_NVML_THERMAL_TARGET_POWER_SUPPLY: nvmlThermalTarget_t = 4;
854pub const nvmlThermalTarget_t_NVML_THERMAL_TARGET_BOARD: nvmlThermalTarget_t = 8;
855pub const nvmlThermalTarget_t_NVML_THERMAL_TARGET_VCD_BOARD: nvmlThermalTarget_t = 9;
856pub const nvmlThermalTarget_t_NVML_THERMAL_TARGET_VCD_INLET: nvmlThermalTarget_t = 10;
857pub const nvmlThermalTarget_t_NVML_THERMAL_TARGET_VCD_OUTLET: nvmlThermalTarget_t = 11;
858pub const nvmlThermalTarget_t_NVML_THERMAL_TARGET_ALL: nvmlThermalTarget_t = 15;
859pub const nvmlThermalTarget_t_NVML_THERMAL_TARGET_UNKNOWN: nvmlThermalTarget_t = -1;
860pub type nvmlThermalTarget_t = raw::c_int;
861pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_NONE: nvmlThermalController_t = 0;
862pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_GPU_INTERNAL: nvmlThermalController_t = 1;
863pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_ADM1032: nvmlThermalController_t = 2;
864pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_ADT7461: nvmlThermalController_t = 3;
865pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_MAX6649: nvmlThermalController_t = 4;
866pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_MAX1617: nvmlThermalController_t = 5;
867pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_LM99: nvmlThermalController_t = 6;
868pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_LM89: nvmlThermalController_t = 7;
869pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_LM64: nvmlThermalController_t = 8;
870pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_G781: nvmlThermalController_t = 9;
871pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_ADT7473: nvmlThermalController_t = 10;
872pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_SBMAX6649: nvmlThermalController_t = 11;
873pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_VBIOSEVT: nvmlThermalController_t = 12;
874pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_OS: nvmlThermalController_t = 13;
875pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_NVSYSCON_CANOAS: nvmlThermalController_t =
876 14;
877pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_NVSYSCON_E551: nvmlThermalController_t =
878 15;
879pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_MAX6649R: nvmlThermalController_t = 16;
880pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_ADT7473S: nvmlThermalController_t = 17;
881pub const nvmlThermalController_t_NVML_THERMAL_CONTROLLER_UNKNOWN: nvmlThermalController_t = -1;
882pub type nvmlThermalController_t = raw::c_int;
883#[repr(C)]
884#[derive(Debug, Copy, Clone)]
885pub struct nvmlGpuThermalSettings_t {
886 pub count: raw::c_uint,
887 pub sensor: [nvmlGpuThermalSettings_t__bindgen_ty_1; 3usize],
888}
889#[repr(C)]
890#[derive(Debug, Copy, Clone)]
891pub struct nvmlGpuThermalSettings_t__bindgen_ty_1 {
892 pub controller: nvmlThermalController_t,
893 pub defaultMinTemp: raw::c_int,
894 pub defaultMaxTemp: raw::c_int,
895 pub currentTemp: raw::c_int,
896 pub target: nvmlThermalTarget_t,
897}
898pub const nvmlCoolerControl_enum_NVML_THERMAL_COOLER_SIGNAL_NONE: nvmlCoolerControl_enum = 0;
899pub const nvmlCoolerControl_enum_NVML_THERMAL_COOLER_SIGNAL_TOGGLE: nvmlCoolerControl_enum = 1;
900pub const nvmlCoolerControl_enum_NVML_THERMAL_COOLER_SIGNAL_VARIABLE: nvmlCoolerControl_enum = 2;
901pub const nvmlCoolerControl_enum_NVML_THERMAL_COOLER_SIGNAL_COUNT: nvmlCoolerControl_enum = 3;
902pub type nvmlCoolerControl_enum = raw::c_uint;
903pub use self::nvmlCoolerControl_enum as nvmlCoolerControl_t;
904pub const nvmlCoolerTarget_enum_NVML_THERMAL_COOLER_TARGET_NONE: nvmlCoolerTarget_enum = 1;
905pub const nvmlCoolerTarget_enum_NVML_THERMAL_COOLER_TARGET_GPU: nvmlCoolerTarget_enum = 2;
906pub const nvmlCoolerTarget_enum_NVML_THERMAL_COOLER_TARGET_MEMORY: nvmlCoolerTarget_enum = 4;
907pub const nvmlCoolerTarget_enum_NVML_THERMAL_COOLER_TARGET_POWER_SUPPLY: nvmlCoolerTarget_enum = 8;
908pub const nvmlCoolerTarget_enum_NVML_THERMAL_COOLER_TARGET_GPU_RELATED: nvmlCoolerTarget_enum = 14;
909pub type nvmlCoolerTarget_enum = raw::c_uint;
910pub use self::nvmlCoolerTarget_enum as nvmlCoolerTarget_t;
911#[repr(C)]
912#[derive(Debug, Copy, Clone)]
913pub struct nvmlCoolerInfo_v1_t {
914 pub version: raw::c_uint,
915 pub index: raw::c_uint,
916 pub signalType: nvmlCoolerControl_t,
917 pub target: nvmlCoolerTarget_t,
918}
919pub type nvmlCoolerInfo_t = nvmlCoolerInfo_v1_t;
920pub const nvmlEnableState_enum_NVML_FEATURE_DISABLED: nvmlEnableState_enum = 0;
921pub const nvmlEnableState_enum_NVML_FEATURE_ENABLED: nvmlEnableState_enum = 1;
922pub type nvmlEnableState_enum = raw::c_uint;
923pub use self::nvmlEnableState_enum as nvmlEnableState_t;
924#[repr(C)]
925#[derive(Debug, Copy, Clone)]
926pub struct nvmlDramEncryptionInfo_v1_t {
927 pub version: raw::c_uint,
928 pub encryptionState: nvmlEnableState_t,
929}
930pub type nvmlDramEncryptionInfo_t = nvmlDramEncryptionInfo_v1_t;
931pub const nvmlBrandType_enum_NVML_BRAND_UNKNOWN: nvmlBrandType_enum = 0;
932pub const nvmlBrandType_enum_NVML_BRAND_QUADRO: nvmlBrandType_enum = 1;
933pub const nvmlBrandType_enum_NVML_BRAND_TESLA: nvmlBrandType_enum = 2;
934pub const nvmlBrandType_enum_NVML_BRAND_NVS: nvmlBrandType_enum = 3;
935pub const nvmlBrandType_enum_NVML_BRAND_GRID: nvmlBrandType_enum = 4;
936pub const nvmlBrandType_enum_NVML_BRAND_GEFORCE: nvmlBrandType_enum = 5;
937pub const nvmlBrandType_enum_NVML_BRAND_TITAN: nvmlBrandType_enum = 6;
938pub const nvmlBrandType_enum_NVML_BRAND_NVIDIA_VAPPS: nvmlBrandType_enum = 7;
939pub const nvmlBrandType_enum_NVML_BRAND_NVIDIA_VPC: nvmlBrandType_enum = 8;
940pub const nvmlBrandType_enum_NVML_BRAND_NVIDIA_VCS: nvmlBrandType_enum = 9;
941pub const nvmlBrandType_enum_NVML_BRAND_NVIDIA_VWS: nvmlBrandType_enum = 10;
942pub const nvmlBrandType_enum_NVML_BRAND_NVIDIA_CLOUD_GAMING: nvmlBrandType_enum = 11;
943pub const nvmlBrandType_enum_NVML_BRAND_NVIDIA_VGAMING: nvmlBrandType_enum = 11;
944pub const nvmlBrandType_enum_NVML_BRAND_QUADRO_RTX: nvmlBrandType_enum = 12;
945pub const nvmlBrandType_enum_NVML_BRAND_NVIDIA_RTX: nvmlBrandType_enum = 13;
946pub const nvmlBrandType_enum_NVML_BRAND_NVIDIA: nvmlBrandType_enum = 14;
947pub const nvmlBrandType_enum_NVML_BRAND_GEFORCE_RTX: nvmlBrandType_enum = 15;
948pub const nvmlBrandType_enum_NVML_BRAND_TITAN_RTX: nvmlBrandType_enum = 16;
949pub const nvmlBrandType_enum_NVML_BRAND_COUNT: nvmlBrandType_enum = 17;
950pub type nvmlBrandType_enum = raw::c_uint;
951pub use self::nvmlBrandType_enum as nvmlBrandType_t;
952pub const nvmlTemperatureThresholds_enum_NVML_TEMPERATURE_THRESHOLD_SHUTDOWN:
953 nvmlTemperatureThresholds_enum = 0;
954pub const nvmlTemperatureThresholds_enum_NVML_TEMPERATURE_THRESHOLD_SLOWDOWN:
955 nvmlTemperatureThresholds_enum = 1;
956pub const nvmlTemperatureThresholds_enum_NVML_TEMPERATURE_THRESHOLD_MEM_MAX:
957 nvmlTemperatureThresholds_enum = 2;
958pub const nvmlTemperatureThresholds_enum_NVML_TEMPERATURE_THRESHOLD_GPU_MAX:
959 nvmlTemperatureThresholds_enum = 3;
960pub const nvmlTemperatureThresholds_enum_NVML_TEMPERATURE_THRESHOLD_ACOUSTIC_MIN:
961 nvmlTemperatureThresholds_enum = 4;
962pub const nvmlTemperatureThresholds_enum_NVML_TEMPERATURE_THRESHOLD_ACOUSTIC_CURR:
963 nvmlTemperatureThresholds_enum = 5;
964pub const nvmlTemperatureThresholds_enum_NVML_TEMPERATURE_THRESHOLD_ACOUSTIC_MAX:
965 nvmlTemperatureThresholds_enum = 6;
966pub const nvmlTemperatureThresholds_enum_NVML_TEMPERATURE_THRESHOLD_GPS_CURR:
967 nvmlTemperatureThresholds_enum = 7;
968pub const nvmlTemperatureThresholds_enum_NVML_TEMPERATURE_THRESHOLD_COUNT:
969 nvmlTemperatureThresholds_enum = 8;
970pub type nvmlTemperatureThresholds_enum = raw::c_uint;
971pub use self::nvmlTemperatureThresholds_enum as nvmlTemperatureThresholds_t;
972pub const nvmlTemperatureSensors_enum_NVML_TEMPERATURE_GPU: nvmlTemperatureSensors_enum = 0;
973pub const nvmlTemperatureSensors_enum_NVML_TEMPERATURE_COUNT: nvmlTemperatureSensors_enum = 1;
974pub type nvmlTemperatureSensors_enum = raw::c_uint;
975pub use self::nvmlTemperatureSensors_enum as nvmlTemperatureSensors_t;
976#[repr(C)]
977#[derive(Debug, Copy, Clone)]
978pub struct nvmlMarginTemperature_v1_t {
979 pub version: raw::c_uint,
980 pub marginTemperature: raw::c_int,
981}
982pub type nvmlMarginTemperature_t = nvmlMarginTemperature_v1_t;
983pub const nvmlComputeMode_enum_NVML_COMPUTEMODE_DEFAULT: nvmlComputeMode_enum = 0;
984pub const nvmlComputeMode_enum_NVML_COMPUTEMODE_EXCLUSIVE_THREAD: nvmlComputeMode_enum = 1;
985pub const nvmlComputeMode_enum_NVML_COMPUTEMODE_PROHIBITED: nvmlComputeMode_enum = 2;
986pub const nvmlComputeMode_enum_NVML_COMPUTEMODE_EXCLUSIVE_PROCESS: nvmlComputeMode_enum = 3;
987pub const nvmlComputeMode_enum_NVML_COMPUTEMODE_COUNT: nvmlComputeMode_enum = 4;
988pub type nvmlComputeMode_enum = raw::c_uint;
989pub use self::nvmlComputeMode_enum as nvmlComputeMode_t;
990#[repr(C)]
991#[derive(Debug, Copy, Clone)]
992pub struct nvmlClkMonFaultInfo_struct {
993 pub clkApiDomain: raw::c_uint,
994 pub clkDomainFaultMask: raw::c_uint,
995}
996pub type nvmlClkMonFaultInfo_t = nvmlClkMonFaultInfo_struct;
997#[repr(C)]
998#[derive(Debug, Copy, Clone)]
999pub struct nvmlClkMonStatus_status {
1000 pub bGlobalStatus: raw::c_uint,
1001 pub clkMonListSize: raw::c_uint,
1002 pub clkMonList: [nvmlClkMonFaultInfo_t; 32usize],
1003}
1004pub type nvmlClkMonStatus_t = nvmlClkMonStatus_status;
1005pub const nvmlMemoryErrorType_enum_NVML_MEMORY_ERROR_TYPE_CORRECTED: nvmlMemoryErrorType_enum = 0;
1006pub const nvmlMemoryErrorType_enum_NVML_MEMORY_ERROR_TYPE_UNCORRECTED: nvmlMemoryErrorType_enum = 1;
1007pub const nvmlMemoryErrorType_enum_NVML_MEMORY_ERROR_TYPE_COUNT: nvmlMemoryErrorType_enum = 2;
1008pub type nvmlMemoryErrorType_enum = raw::c_uint;
1009pub use self::nvmlMemoryErrorType_enum as nvmlMemoryErrorType_t;
1010pub const nvmlNvlinkVersion_enum_NVML_NVLINK_VERSION_INVALID: nvmlNvlinkVersion_enum = 0;
1011pub const nvmlNvlinkVersion_enum_NVML_NVLINK_VERSION_1_0: nvmlNvlinkVersion_enum = 1;
1012pub const nvmlNvlinkVersion_enum_NVML_NVLINK_VERSION_2_0: nvmlNvlinkVersion_enum = 2;
1013pub const nvmlNvlinkVersion_enum_NVML_NVLINK_VERSION_2_2: nvmlNvlinkVersion_enum = 3;
1014pub const nvmlNvlinkVersion_enum_NVML_NVLINK_VERSION_3_0: nvmlNvlinkVersion_enum = 4;
1015pub const nvmlNvlinkVersion_enum_NVML_NVLINK_VERSION_3_1: nvmlNvlinkVersion_enum = 5;
1016pub const nvmlNvlinkVersion_enum_NVML_NVLINK_VERSION_4_0: nvmlNvlinkVersion_enum = 6;
1017pub const nvmlNvlinkVersion_enum_NVML_NVLINK_VERSION_5_0: nvmlNvlinkVersion_enum = 7;
1018pub type nvmlNvlinkVersion_enum = raw::c_uint;
1019pub use self::nvmlNvlinkVersion_enum as nvmlNvlinkVersion_t;
1020pub const nvmlEccCounterType_enum_NVML_VOLATILE_ECC: nvmlEccCounterType_enum = 0;
1021pub const nvmlEccCounterType_enum_NVML_AGGREGATE_ECC: nvmlEccCounterType_enum = 1;
1022pub const nvmlEccCounterType_enum_NVML_ECC_COUNTER_TYPE_COUNT: nvmlEccCounterType_enum = 2;
1023pub type nvmlEccCounterType_enum = raw::c_uint;
1024pub use self::nvmlEccCounterType_enum as nvmlEccCounterType_t;
1025pub const nvmlClockType_enum_NVML_CLOCK_GRAPHICS: nvmlClockType_enum = 0;
1026pub const nvmlClockType_enum_NVML_CLOCK_SM: nvmlClockType_enum = 1;
1027pub const nvmlClockType_enum_NVML_CLOCK_MEM: nvmlClockType_enum = 2;
1028pub const nvmlClockType_enum_NVML_CLOCK_VIDEO: nvmlClockType_enum = 3;
1029pub const nvmlClockType_enum_NVML_CLOCK_COUNT: nvmlClockType_enum = 4;
1030pub type nvmlClockType_enum = raw::c_uint;
1031pub use self::nvmlClockType_enum as nvmlClockType_t;
1032pub const nvmlClockId_enum_NVML_CLOCK_ID_CURRENT: nvmlClockId_enum = 0;
1033pub const nvmlClockId_enum_NVML_CLOCK_ID_APP_CLOCK_TARGET: nvmlClockId_enum = 1;
1034pub const nvmlClockId_enum_NVML_CLOCK_ID_APP_CLOCK_DEFAULT: nvmlClockId_enum = 2;
1035pub const nvmlClockId_enum_NVML_CLOCK_ID_CUSTOMER_BOOST_MAX: nvmlClockId_enum = 3;
1036pub const nvmlClockId_enum_NVML_CLOCK_ID_COUNT: nvmlClockId_enum = 4;
1037pub type nvmlClockId_enum = raw::c_uint;
1038pub use self::nvmlClockId_enum as nvmlClockId_t;
1039pub const nvmlDriverModel_enum_NVML_DRIVER_WDDM: nvmlDriverModel_enum = 0;
1040pub const nvmlDriverModel_enum_NVML_DRIVER_WDM: nvmlDriverModel_enum = 1;
1041pub const nvmlDriverModel_enum_NVML_DRIVER_MCDM: nvmlDriverModel_enum = 2;
1042pub type nvmlDriverModel_enum = raw::c_uint;
1043pub use self::nvmlDriverModel_enum as nvmlDriverModel_t;
1044pub const nvmlPStates_enum_NVML_PSTATE_0: nvmlPStates_enum = 0;
1045pub const nvmlPStates_enum_NVML_PSTATE_1: nvmlPStates_enum = 1;
1046pub const nvmlPStates_enum_NVML_PSTATE_2: nvmlPStates_enum = 2;
1047pub const nvmlPStates_enum_NVML_PSTATE_3: nvmlPStates_enum = 3;
1048pub const nvmlPStates_enum_NVML_PSTATE_4: nvmlPStates_enum = 4;
1049pub const nvmlPStates_enum_NVML_PSTATE_5: nvmlPStates_enum = 5;
1050pub const nvmlPStates_enum_NVML_PSTATE_6: nvmlPStates_enum = 6;
1051pub const nvmlPStates_enum_NVML_PSTATE_7: nvmlPStates_enum = 7;
1052pub const nvmlPStates_enum_NVML_PSTATE_8: nvmlPStates_enum = 8;
1053pub const nvmlPStates_enum_NVML_PSTATE_9: nvmlPStates_enum = 9;
1054pub const nvmlPStates_enum_NVML_PSTATE_10: nvmlPStates_enum = 10;
1055pub const nvmlPStates_enum_NVML_PSTATE_11: nvmlPStates_enum = 11;
1056pub const nvmlPStates_enum_NVML_PSTATE_12: nvmlPStates_enum = 12;
1057pub const nvmlPStates_enum_NVML_PSTATE_13: nvmlPStates_enum = 13;
1058pub const nvmlPStates_enum_NVML_PSTATE_14: nvmlPStates_enum = 14;
1059pub const nvmlPStates_enum_NVML_PSTATE_15: nvmlPStates_enum = 15;
1060pub const nvmlPStates_enum_NVML_PSTATE_UNKNOWN: nvmlPStates_enum = 32;
1061pub type nvmlPStates_enum = raw::c_uint;
1062pub use self::nvmlPStates_enum as nvmlPstates_t;
1063#[repr(C)]
1064#[derive(Debug, Copy, Clone)]
1065pub struct nvmlClockOffset_v1_t {
1066 pub version: raw::c_uint,
1067 pub type_: nvmlClockType_t,
1068 pub pstate: nvmlPstates_t,
1069 pub clockOffsetMHz: raw::c_int,
1070 pub minClockOffsetMHz: raw::c_int,
1071 pub maxClockOffsetMHz: raw::c_int,
1072}
1073pub type nvmlClockOffset_t = nvmlClockOffset_v1_t;
1074#[repr(C)]
1075#[derive(Debug, Copy, Clone)]
1076pub struct nvmlFanSpeedInfo_v1_t {
1077 pub version: raw::c_uint,
1078 pub fan: raw::c_uint,
1079 pub speed: raw::c_uint,
1080}
1081pub type nvmlFanSpeedInfo_t = nvmlFanSpeedInfo_v1_t;
1082#[repr(C)]
1083#[derive(Debug, Copy, Clone)]
1084pub struct nvmlDevicePerfModes_v1_t {
1085 pub version: raw::c_uint,
1086 pub str_: [raw::c_char; 2048usize],
1087}
1088pub type nvmlDevicePerfModes_t = nvmlDevicePerfModes_v1_t;
1089#[repr(C)]
1090#[derive(Debug, Copy, Clone)]
1091pub struct nvmlDeviceCurrentClockFreqs_v1_t {
1092 pub version: raw::c_uint,
1093 pub str_: [raw::c_char; 2048usize],
1094}
1095pub type nvmlDeviceCurrentClockFreqs_t = nvmlDeviceCurrentClockFreqs_v1_t;
1096pub const nvmlGom_enum_NVML_GOM_ALL_ON: nvmlGom_enum = 0;
1097pub const nvmlGom_enum_NVML_GOM_COMPUTE: nvmlGom_enum = 1;
1098pub const nvmlGom_enum_NVML_GOM_LOW_DP: nvmlGom_enum = 2;
1099pub type nvmlGom_enum = raw::c_uint;
1100pub use self::nvmlGom_enum as nvmlGpuOperationMode_t;
1101pub const nvmlInforomObject_enum_NVML_INFOROM_OEM: nvmlInforomObject_enum = 0;
1102pub const nvmlInforomObject_enum_NVML_INFOROM_ECC: nvmlInforomObject_enum = 1;
1103pub const nvmlInforomObject_enum_NVML_INFOROM_POWER: nvmlInforomObject_enum = 2;
1104pub const nvmlInforomObject_enum_NVML_INFOROM_DEN: nvmlInforomObject_enum = 3;
1105pub const nvmlInforomObject_enum_NVML_INFOROM_COUNT: nvmlInforomObject_enum = 4;
1106pub type nvmlInforomObject_enum = raw::c_uint;
1107pub use self::nvmlInforomObject_enum as nvmlInforomObject_t;
1108pub const nvmlReturn_enum_NVML_SUCCESS: nvmlReturn_enum = 0;
1109pub const nvmlReturn_enum_NVML_ERROR_UNINITIALIZED: nvmlReturn_enum = 1;
1110pub const nvmlReturn_enum_NVML_ERROR_INVALID_ARGUMENT: nvmlReturn_enum = 2;
1111pub const nvmlReturn_enum_NVML_ERROR_NOT_SUPPORTED: nvmlReturn_enum = 3;
1112pub const nvmlReturn_enum_NVML_ERROR_NO_PERMISSION: nvmlReturn_enum = 4;
1113pub const nvmlReturn_enum_NVML_ERROR_ALREADY_INITIALIZED: nvmlReturn_enum = 5;
1114pub const nvmlReturn_enum_NVML_ERROR_NOT_FOUND: nvmlReturn_enum = 6;
1115pub const nvmlReturn_enum_NVML_ERROR_INSUFFICIENT_SIZE: nvmlReturn_enum = 7;
1116pub const nvmlReturn_enum_NVML_ERROR_INSUFFICIENT_POWER: nvmlReturn_enum = 8;
1117pub const nvmlReturn_enum_NVML_ERROR_DRIVER_NOT_LOADED: nvmlReturn_enum = 9;
1118pub const nvmlReturn_enum_NVML_ERROR_TIMEOUT: nvmlReturn_enum = 10;
1119pub const nvmlReturn_enum_NVML_ERROR_IRQ_ISSUE: nvmlReturn_enum = 11;
1120pub const nvmlReturn_enum_NVML_ERROR_LIBRARY_NOT_FOUND: nvmlReturn_enum = 12;
1121pub const nvmlReturn_enum_NVML_ERROR_FUNCTION_NOT_FOUND: nvmlReturn_enum = 13;
1122pub const nvmlReturn_enum_NVML_ERROR_CORRUPTED_INFOROM: nvmlReturn_enum = 14;
1123pub const nvmlReturn_enum_NVML_ERROR_GPU_IS_LOST: nvmlReturn_enum = 15;
1124pub const nvmlReturn_enum_NVML_ERROR_RESET_REQUIRED: nvmlReturn_enum = 16;
1125pub const nvmlReturn_enum_NVML_ERROR_OPERATING_SYSTEM: nvmlReturn_enum = 17;
1126pub const nvmlReturn_enum_NVML_ERROR_LIB_RM_VERSION_MISMATCH: nvmlReturn_enum = 18;
1127pub const nvmlReturn_enum_NVML_ERROR_IN_USE: nvmlReturn_enum = 19;
1128pub const nvmlReturn_enum_NVML_ERROR_MEMORY: nvmlReturn_enum = 20;
1129pub const nvmlReturn_enum_NVML_ERROR_NO_DATA: nvmlReturn_enum = 21;
1130pub const nvmlReturn_enum_NVML_ERROR_VGPU_ECC_NOT_SUPPORTED: nvmlReturn_enum = 22;
1131pub const nvmlReturn_enum_NVML_ERROR_INSUFFICIENT_RESOURCES: nvmlReturn_enum = 23;
1132pub const nvmlReturn_enum_NVML_ERROR_FREQ_NOT_SUPPORTED: nvmlReturn_enum = 24;
1133pub const nvmlReturn_enum_NVML_ERROR_ARGUMENT_VERSION_MISMATCH: nvmlReturn_enum = 25;
1134pub const nvmlReturn_enum_NVML_ERROR_DEPRECATED: nvmlReturn_enum = 26;
1135pub const nvmlReturn_enum_NVML_ERROR_NOT_READY: nvmlReturn_enum = 27;
1136pub const nvmlReturn_enum_NVML_ERROR_GPU_NOT_FOUND: nvmlReturn_enum = 28;
1137pub const nvmlReturn_enum_NVML_ERROR_INVALID_STATE: nvmlReturn_enum = 29;
1138pub const nvmlReturn_enum_NVML_ERROR_UNKNOWN: nvmlReturn_enum = 999;
1139pub type nvmlReturn_enum = raw::c_uint;
1140pub use self::nvmlReturn_enum as nvmlReturn_t;
1141pub const nvmlMemoryLocation_enum_NVML_MEMORY_LOCATION_L1_CACHE: nvmlMemoryLocation_enum = 0;
1142pub const nvmlMemoryLocation_enum_NVML_MEMORY_LOCATION_L2_CACHE: nvmlMemoryLocation_enum = 1;
1143pub const nvmlMemoryLocation_enum_NVML_MEMORY_LOCATION_DRAM: nvmlMemoryLocation_enum = 2;
1144pub const nvmlMemoryLocation_enum_NVML_MEMORY_LOCATION_DEVICE_MEMORY: nvmlMemoryLocation_enum = 2;
1145pub const nvmlMemoryLocation_enum_NVML_MEMORY_LOCATION_REGISTER_FILE: nvmlMemoryLocation_enum = 3;
1146pub const nvmlMemoryLocation_enum_NVML_MEMORY_LOCATION_TEXTURE_MEMORY: nvmlMemoryLocation_enum = 4;
1147pub const nvmlMemoryLocation_enum_NVML_MEMORY_LOCATION_TEXTURE_SHM: nvmlMemoryLocation_enum = 5;
1148pub const nvmlMemoryLocation_enum_NVML_MEMORY_LOCATION_CBU: nvmlMemoryLocation_enum = 6;
1149pub const nvmlMemoryLocation_enum_NVML_MEMORY_LOCATION_SRAM: nvmlMemoryLocation_enum = 7;
1150pub const nvmlMemoryLocation_enum_NVML_MEMORY_LOCATION_COUNT: nvmlMemoryLocation_enum = 8;
1151pub type nvmlMemoryLocation_enum = raw::c_uint;
1152pub use self::nvmlMemoryLocation_enum as nvmlMemoryLocation_t;
1153pub const nvmlPageRetirementCause_enum_NVML_PAGE_RETIREMENT_CAUSE_MULTIPLE_SINGLE_BIT_ECC_ERRORS:
1154 nvmlPageRetirementCause_enum = 0;
1155pub const nvmlPageRetirementCause_enum_NVML_PAGE_RETIREMENT_CAUSE_DOUBLE_BIT_ECC_ERROR:
1156 nvmlPageRetirementCause_enum = 1;
1157pub const nvmlPageRetirementCause_enum_NVML_PAGE_RETIREMENT_CAUSE_COUNT:
1158 nvmlPageRetirementCause_enum = 2;
1159pub type nvmlPageRetirementCause_enum = raw::c_uint;
1160pub use self::nvmlPageRetirementCause_enum as nvmlPageRetirementCause_t;
1161pub const nvmlRestrictedAPI_enum_NVML_RESTRICTED_API_SET_APPLICATION_CLOCKS:
1162 nvmlRestrictedAPI_enum = 0;
1163pub const nvmlRestrictedAPI_enum_NVML_RESTRICTED_API_SET_AUTO_BOOSTED_CLOCKS:
1164 nvmlRestrictedAPI_enum = 1;
1165pub const nvmlRestrictedAPI_enum_NVML_RESTRICTED_API_COUNT: nvmlRestrictedAPI_enum = 2;
1166pub type nvmlRestrictedAPI_enum = raw::c_uint;
1167pub use self::nvmlRestrictedAPI_enum as nvmlRestrictedAPI_t;
1168#[repr(C)]
1169#[derive(Debug, Copy, Clone)]
1170pub struct nvmlProcessUtilizationSample_st {
1171 pub pid: raw::c_uint,
1172 pub timeStamp: raw::c_ulonglong,
1173 pub smUtil: raw::c_uint,
1174 pub memUtil: raw::c_uint,
1175 pub encUtil: raw::c_uint,
1176 pub decUtil: raw::c_uint,
1177}
1178pub type nvmlProcessUtilizationSample_t = nvmlProcessUtilizationSample_st;
1179#[repr(C)]
1180#[derive(Debug, Copy, Clone)]
1181pub struct nvmlProcessUtilizationInfo_v1_t {
1182 pub timeStamp: raw::c_ulonglong,
1183 pub pid: raw::c_uint,
1184 pub smUtil: raw::c_uint,
1185 pub memUtil: raw::c_uint,
1186 pub encUtil: raw::c_uint,
1187 pub decUtil: raw::c_uint,
1188 pub jpgUtil: raw::c_uint,
1189 pub ofaUtil: raw::c_uint,
1190}
1191#[repr(C)]
1192#[derive(Debug, Copy, Clone)]
1193pub struct nvmlProcessesUtilizationInfo_v1_t {
1194 pub version: raw::c_uint,
1195 pub processSamplesCount: raw::c_uint,
1196 pub lastSeenTimeStamp: raw::c_ulonglong,
1197 pub procUtilArray: *mut nvmlProcessUtilizationInfo_v1_t,
1198}
1199pub type nvmlProcessesUtilizationInfo_t = nvmlProcessesUtilizationInfo_v1_t;
1200#[repr(C)]
1201#[derive(Debug, Copy, Clone)]
1202pub struct nvmlEccSramErrorStatus_v1_t {
1203 pub version: raw::c_uint,
1204 pub aggregateUncParity: raw::c_ulonglong,
1205 pub aggregateUncSecDed: raw::c_ulonglong,
1206 pub aggregateCor: raw::c_ulonglong,
1207 pub volatileUncParity: raw::c_ulonglong,
1208 pub volatileUncSecDed: raw::c_ulonglong,
1209 pub volatileCor: raw::c_ulonglong,
1210 pub aggregateUncBucketL2: raw::c_ulonglong,
1211 pub aggregateUncBucketSm: raw::c_ulonglong,
1212 pub aggregateUncBucketPcie: raw::c_ulonglong,
1213 pub aggregateUncBucketMcu: raw::c_ulonglong,
1214 pub aggregateUncBucketOther: raw::c_ulonglong,
1215 pub bThresholdExceeded: raw::c_uint,
1216}
1217pub type nvmlEccSramErrorStatus_t = nvmlEccSramErrorStatus_v1_t;
1218#[repr(C)]
1219#[derive(Debug, Copy, Clone)]
1220pub struct nvmlPlatformInfo_v1_t {
1221 pub version: raw::c_uint,
1222 pub ibGuid: [raw::c_uchar; 16usize],
1223 pub rackGuid: [raw::c_uchar; 16usize],
1224 pub chassisPhysicalSlotNumber: raw::c_uchar,
1225 pub computeSlotIndex: raw::c_uchar,
1226 pub nodeIndex: raw::c_uchar,
1227 pub peerType: raw::c_uchar,
1228 pub moduleId: raw::c_uchar,
1229}
1230#[repr(C)]
1231#[derive(Debug, Copy, Clone)]
1232pub struct nvmlPlatformInfo_v2_t {
1233 pub version: raw::c_uint,
1234 pub ibGuid: [raw::c_uchar; 16usize],
1235 pub chassisSerialNumber: [raw::c_uchar; 16usize],
1236 pub slotNumber: raw::c_uchar,
1237 pub trayIndex: raw::c_uchar,
1238 pub hostId: raw::c_uchar,
1239 pub peerType: raw::c_uchar,
1240 pub moduleId: raw::c_uchar,
1241}
1242pub type nvmlPlatformInfo_t = nvmlPlatformInfo_v2_t;
1243pub type nvmlDeviceArchitecture_t = raw::c_uint;
1244pub type nvmlBusType_t = raw::c_uint;
1245pub type nvmlFanControlPolicy_t = raw::c_uint;
1246pub type nvmlPowerSource_t = raw::c_uint;
1247pub const nvmlGpuUtilizationDomainId_t_NVML_GPU_UTILIZATION_DOMAIN_GPU:
1248 nvmlGpuUtilizationDomainId_t = 0;
1249pub const nvmlGpuUtilizationDomainId_t_NVML_GPU_UTILIZATION_DOMAIN_FB:
1250 nvmlGpuUtilizationDomainId_t = 1;
1251pub const nvmlGpuUtilizationDomainId_t_NVML_GPU_UTILIZATION_DOMAIN_VID:
1252 nvmlGpuUtilizationDomainId_t = 2;
1253pub const nvmlGpuUtilizationDomainId_t_NVML_GPU_UTILIZATION_DOMAIN_BUS:
1254 nvmlGpuUtilizationDomainId_t = 3;
1255pub type nvmlGpuUtilizationDomainId_t = raw::c_uint;
1256#[repr(C)]
1257#[derive(Debug, Copy, Clone)]
1258pub struct nvmlGpuDynamicPstatesInfo_st {
1259 pub flags: raw::c_uint,
1260 pub utilization: [nvmlGpuDynamicPstatesInfo_st__bindgen_ty_1; 8usize],
1261}
1262#[repr(C)]
1263#[derive(Debug, Copy, Clone)]
1264pub struct nvmlGpuDynamicPstatesInfo_st__bindgen_ty_1 {
1265 pub bIsPresent: raw::c_uint,
1266 pub percentage: raw::c_uint,
1267 pub incThreshold: raw::c_uint,
1268 pub decThreshold: raw::c_uint,
1269}
1270pub type nvmlGpuDynamicPstatesInfo_t = nvmlGpuDynamicPstatesInfo_st;
1271pub type nvmlPowerScopeType_t = raw::c_uchar;
1272#[repr(C)]
1273#[derive(Debug, Copy, Clone)]
1274pub struct nvmlPowerValue_v2_t {
1275 pub version: raw::c_uint,
1276 pub powerScope: nvmlPowerScopeType_t,
1277 pub powerValueMw: raw::c_uint,
1278}
1279pub const nvmlGpuVirtualizationMode_NVML_GPU_VIRTUALIZATION_MODE_NONE: nvmlGpuVirtualizationMode =
1280 0;
1281pub const nvmlGpuVirtualizationMode_NVML_GPU_VIRTUALIZATION_MODE_PASSTHROUGH:
1282 nvmlGpuVirtualizationMode = 1;
1283pub const nvmlGpuVirtualizationMode_NVML_GPU_VIRTUALIZATION_MODE_VGPU: nvmlGpuVirtualizationMode =
1284 2;
1285pub const nvmlGpuVirtualizationMode_NVML_GPU_VIRTUALIZATION_MODE_HOST_VGPU:
1286 nvmlGpuVirtualizationMode = 3;
1287pub const nvmlGpuVirtualizationMode_NVML_GPU_VIRTUALIZATION_MODE_HOST_VSGA:
1288 nvmlGpuVirtualizationMode = 4;
1289pub type nvmlGpuVirtualizationMode = raw::c_uint;
1290pub use self::nvmlGpuVirtualizationMode as nvmlGpuVirtualizationMode_t;
1291pub const nvmlHostVgpuMode_enum_NVML_HOST_VGPU_MODE_NON_SRIOV: nvmlHostVgpuMode_enum = 0;
1292pub const nvmlHostVgpuMode_enum_NVML_HOST_VGPU_MODE_SRIOV: nvmlHostVgpuMode_enum = 1;
1293pub type nvmlHostVgpuMode_enum = raw::c_uint;
1294pub use self::nvmlHostVgpuMode_enum as nvmlHostVgpuMode_t;
1295pub const nvmlVgpuVmIdType_NVML_VGPU_VM_ID_DOMAIN_ID: nvmlVgpuVmIdType = 0;
1296pub const nvmlVgpuVmIdType_NVML_VGPU_VM_ID_UUID: nvmlVgpuVmIdType = 1;
1297pub type nvmlVgpuVmIdType = raw::c_uint;
1298pub use self::nvmlVgpuVmIdType as nvmlVgpuVmIdType_t;
1299pub const nvmlVgpuGuestInfoState_enum_NVML_VGPU_INSTANCE_GUEST_INFO_STATE_UNINITIALIZED:
1300 nvmlVgpuGuestInfoState_enum = 0;
1301pub const nvmlVgpuGuestInfoState_enum_NVML_VGPU_INSTANCE_GUEST_INFO_STATE_INITIALIZED:
1302 nvmlVgpuGuestInfoState_enum = 1;
1303pub type nvmlVgpuGuestInfoState_enum = raw::c_uint;
1304pub use self::nvmlVgpuGuestInfoState_enum as nvmlVgpuGuestInfoState_t;
1305pub const nvmlGridLicenseFeatureCode_t_NVML_GRID_LICENSE_FEATURE_CODE_UNKNOWN:
1306 nvmlGridLicenseFeatureCode_t = 0;
1307pub const nvmlGridLicenseFeatureCode_t_NVML_GRID_LICENSE_FEATURE_CODE_VGPU:
1308 nvmlGridLicenseFeatureCode_t = 1;
1309pub const nvmlGridLicenseFeatureCode_t_NVML_GRID_LICENSE_FEATURE_CODE_NVIDIA_RTX:
1310 nvmlGridLicenseFeatureCode_t = 2;
1311pub const nvmlGridLicenseFeatureCode_t_NVML_GRID_LICENSE_FEATURE_CODE_VWORKSTATION:
1312 nvmlGridLicenseFeatureCode_t = 2;
1313pub const nvmlGridLicenseFeatureCode_t_NVML_GRID_LICENSE_FEATURE_CODE_GAMING:
1314 nvmlGridLicenseFeatureCode_t = 3;
1315pub const nvmlGridLicenseFeatureCode_t_NVML_GRID_LICENSE_FEATURE_CODE_COMPUTE:
1316 nvmlGridLicenseFeatureCode_t = 4;
1317pub type nvmlGridLicenseFeatureCode_t = raw::c_uint;
1318pub const nvmlVgpuCapability_enum_NVML_VGPU_CAP_NVLINK_P2P: nvmlVgpuCapability_enum = 0;
1319pub const nvmlVgpuCapability_enum_NVML_VGPU_CAP_GPUDIRECT: nvmlVgpuCapability_enum = 1;
1320pub const nvmlVgpuCapability_enum_NVML_VGPU_CAP_MULTI_VGPU_EXCLUSIVE: nvmlVgpuCapability_enum = 2;
1321pub const nvmlVgpuCapability_enum_NVML_VGPU_CAP_EXCLUSIVE_TYPE: nvmlVgpuCapability_enum = 3;
1322pub const nvmlVgpuCapability_enum_NVML_VGPU_CAP_EXCLUSIVE_SIZE: nvmlVgpuCapability_enum = 4;
1323pub const nvmlVgpuCapability_enum_NVML_VGPU_CAP_COUNT: nvmlVgpuCapability_enum = 5;
1324pub type nvmlVgpuCapability_enum = raw::c_uint;
1325pub use self::nvmlVgpuCapability_enum as nvmlVgpuCapability_t;
1326pub const nvmlVgpuDriverCapability_enum_NVML_VGPU_DRIVER_CAP_HETEROGENEOUS_MULTI_VGPU:
1327 nvmlVgpuDriverCapability_enum = 0;
1328pub const nvmlVgpuDriverCapability_enum_NVML_VGPU_DRIVER_CAP_WARM_UPDATE:
1329 nvmlVgpuDriverCapability_enum = 1;
1330pub const nvmlVgpuDriverCapability_enum_NVML_VGPU_DRIVER_CAP_COUNT: nvmlVgpuDriverCapability_enum =
1331 2;
1332pub type nvmlVgpuDriverCapability_enum = raw::c_uint;
1333pub use self::nvmlVgpuDriverCapability_enum as nvmlVgpuDriverCapability_t;
1334pub const nvmlDeviceVgpuCapability_enum_NVML_DEVICE_VGPU_CAP_FRACTIONAL_MULTI_VGPU:
1335 nvmlDeviceVgpuCapability_enum = 0;
1336pub const nvmlDeviceVgpuCapability_enum_NVML_DEVICE_VGPU_CAP_HETEROGENEOUS_TIMESLICE_PROFILES:
1337 nvmlDeviceVgpuCapability_enum = 1;
1338pub const nvmlDeviceVgpuCapability_enum_NVML_DEVICE_VGPU_CAP_HETEROGENEOUS_TIMESLICE_SIZES:
1339 nvmlDeviceVgpuCapability_enum = 2;
1340pub const nvmlDeviceVgpuCapability_enum_NVML_DEVICE_VGPU_CAP_READ_DEVICE_BUFFER_BW:
1341 nvmlDeviceVgpuCapability_enum = 3;
1342pub const nvmlDeviceVgpuCapability_enum_NVML_DEVICE_VGPU_CAP_WRITE_DEVICE_BUFFER_BW:
1343 nvmlDeviceVgpuCapability_enum = 4;
1344pub const nvmlDeviceVgpuCapability_enum_NVML_DEVICE_VGPU_CAP_DEVICE_STREAMING:
1345 nvmlDeviceVgpuCapability_enum = 5;
1346pub const nvmlDeviceVgpuCapability_enum_NVML_DEVICE_VGPU_CAP_MINI_QUARTER_GPU:
1347 nvmlDeviceVgpuCapability_enum = 6;
1348pub const nvmlDeviceVgpuCapability_enum_NVML_DEVICE_VGPU_CAP_COMPUTE_MEDIA_ENGINE_GPU:
1349 nvmlDeviceVgpuCapability_enum = 7;
1350pub const nvmlDeviceVgpuCapability_enum_NVML_DEVICE_VGPU_CAP_WARM_UPDATE:
1351 nvmlDeviceVgpuCapability_enum = 8;
1352pub const nvmlDeviceVgpuCapability_enum_NVML_DEVICE_VGPU_CAP_HOMOGENEOUS_PLACEMENTS:
1353 nvmlDeviceVgpuCapability_enum = 9;
1354pub const nvmlDeviceVgpuCapability_enum_NVML_DEVICE_VGPU_CAP_COUNT: nvmlDeviceVgpuCapability_enum =
1355 10;
1356pub type nvmlDeviceVgpuCapability_enum = raw::c_uint;
1357pub use self::nvmlDeviceVgpuCapability_enum as nvmlDeviceVgpuCapability_t;
1358pub type nvmlVgpuTypeId_t = raw::c_uint;
1359pub type nvmlVgpuInstance_t = raw::c_uint;
1360#[repr(C)]
1361#[derive(Debug, Copy, Clone)]
1362pub struct nvmlVgpuHeterogeneousMode_v1_t {
1363 pub version: raw::c_uint,
1364 pub mode: raw::c_uint,
1365}
1366pub type nvmlVgpuHeterogeneousMode_t = nvmlVgpuHeterogeneousMode_v1_t;
1367#[repr(C)]
1368#[derive(Debug, Copy, Clone)]
1369pub struct nvmlVgpuPlacementId_v1_t {
1370 pub version: raw::c_uint,
1371 pub placementId: raw::c_uint,
1372}
1373pub type nvmlVgpuPlacementId_t = nvmlVgpuPlacementId_v1_t;
1374#[repr(C)]
1375#[derive(Debug, Copy, Clone)]
1376pub struct nvmlVgpuPlacementList_v1_t {
1377 pub version: raw::c_uint,
1378 pub placementSize: raw::c_uint,
1379 pub count: raw::c_uint,
1380 pub placementIds: *mut raw::c_uint,
1381}
1382#[repr(C)]
1383#[derive(Debug, Copy, Clone)]
1384pub struct nvmlVgpuPlacementList_v2_t {
1385 pub version: raw::c_uint,
1386 pub placementSize: raw::c_uint,
1387 pub count: raw::c_uint,
1388 pub placementIds: *mut raw::c_uint,
1389 pub mode: raw::c_uint,
1390}
1391pub type nvmlVgpuPlacementList_t = nvmlVgpuPlacementList_v2_t;
1392#[repr(C)]
1393#[derive(Debug, Copy, Clone)]
1394pub struct nvmlVgpuTypeBar1Info_v1_t {
1395 pub version: raw::c_uint,
1396 pub bar1Size: raw::c_ulonglong,
1397}
1398pub type nvmlVgpuTypeBar1Info_t = nvmlVgpuTypeBar1Info_v1_t;
1399#[repr(C)]
1400#[derive(Copy, Clone)]
1401pub struct nvmlVgpuInstanceUtilizationSample_st {
1402 pub vgpuInstance: nvmlVgpuInstance_t,
1403 pub timeStamp: raw::c_ulonglong,
1404 pub smUtil: nvmlValue_t,
1405 pub memUtil: nvmlValue_t,
1406 pub encUtil: nvmlValue_t,
1407 pub decUtil: nvmlValue_t,
1408}
1409pub type nvmlVgpuInstanceUtilizationSample_t = nvmlVgpuInstanceUtilizationSample_st;
1410#[repr(C)]
1411#[derive(Copy, Clone)]
1412pub struct nvmlVgpuInstanceUtilizationInfo_v1_t {
1413 pub timeStamp: raw::c_ulonglong,
1414 pub vgpuInstance: nvmlVgpuInstance_t,
1415 pub smUtil: nvmlValue_t,
1416 pub memUtil: nvmlValue_t,
1417 pub encUtil: nvmlValue_t,
1418 pub decUtil: nvmlValue_t,
1419 pub jpgUtil: nvmlValue_t,
1420 pub ofaUtil: nvmlValue_t,
1421}
1422#[repr(C)]
1423#[derive(Debug, Copy, Clone)]
1424pub struct nvmlVgpuInstancesUtilizationInfo_v1_t {
1425 pub version: raw::c_uint,
1426 pub sampleValType: nvmlValueType_t,
1427 pub vgpuInstanceCount: raw::c_uint,
1428 pub lastSeenTimeStamp: raw::c_ulonglong,
1429 pub vgpuUtilArray: *mut nvmlVgpuInstanceUtilizationInfo_v1_t,
1430}
1431pub type nvmlVgpuInstancesUtilizationInfo_t = nvmlVgpuInstancesUtilizationInfo_v1_t;
1432#[repr(C)]
1433#[derive(Debug, Copy, Clone)]
1434pub struct nvmlVgpuProcessUtilizationSample_st {
1435 pub vgpuInstance: nvmlVgpuInstance_t,
1436 pub pid: raw::c_uint,
1437 pub processName: [raw::c_char; 64usize],
1438 pub timeStamp: raw::c_ulonglong,
1439 pub smUtil: raw::c_uint,
1440 pub memUtil: raw::c_uint,
1441 pub encUtil: raw::c_uint,
1442 pub decUtil: raw::c_uint,
1443}
1444pub type nvmlVgpuProcessUtilizationSample_t = nvmlVgpuProcessUtilizationSample_st;
1445#[repr(C)]
1446#[derive(Debug, Copy, Clone)]
1447pub struct nvmlVgpuProcessUtilizationInfo_v1_t {
1448 pub processName: [raw::c_char; 64usize],
1449 pub timeStamp: raw::c_ulonglong,
1450 pub vgpuInstance: nvmlVgpuInstance_t,
1451 pub pid: raw::c_uint,
1452 pub smUtil: raw::c_uint,
1453 pub memUtil: raw::c_uint,
1454 pub encUtil: raw::c_uint,
1455 pub decUtil: raw::c_uint,
1456 pub jpgUtil: raw::c_uint,
1457 pub ofaUtil: raw::c_uint,
1458}
1459#[repr(C)]
1460#[derive(Debug, Copy, Clone)]
1461pub struct nvmlVgpuProcessesUtilizationInfo_v1_t {
1462 pub version: raw::c_uint,
1463 pub vgpuProcessCount: raw::c_uint,
1464 pub lastSeenTimeStamp: raw::c_ulonglong,
1465 pub vgpuProcUtilArray: *mut nvmlVgpuProcessUtilizationInfo_v1_t,
1466}
1467pub type nvmlVgpuProcessesUtilizationInfo_t = nvmlVgpuProcessesUtilizationInfo_v1_t;
1468#[repr(C)]
1469#[derive(Debug, Copy, Clone)]
1470pub struct nvmlVgpuRuntimeState_v1_t {
1471 pub version: raw::c_uint,
1472 pub size: raw::c_ulonglong,
1473}
1474pub type nvmlVgpuRuntimeState_t = nvmlVgpuRuntimeState_v1_t;
1475#[repr(C)]
1476#[derive(Copy, Clone)]
1477pub union nvmlVgpuSchedulerParams_t {
1478 pub vgpuSchedDataWithARR: nvmlVgpuSchedulerParams_t__bindgen_ty_1,
1479 pub vgpuSchedData: nvmlVgpuSchedulerParams_t__bindgen_ty_2,
1480}
1481#[repr(C)]
1482#[derive(Debug, Copy, Clone)]
1483pub struct nvmlVgpuSchedulerParams_t__bindgen_ty_1 {
1484 pub avgFactor: raw::c_uint,
1485 pub timeslice: raw::c_uint,
1486}
1487#[repr(C)]
1488#[derive(Debug, Copy, Clone)]
1489pub struct nvmlVgpuSchedulerParams_t__bindgen_ty_2 {
1490 pub timeslice: raw::c_uint,
1491}
1492#[repr(C)]
1493#[derive(Debug, Copy, Clone)]
1494pub struct nvmlVgpuSchedulerLogEntries_st {
1495 pub timestamp: raw::c_ulonglong,
1496 pub timeRunTotal: raw::c_ulonglong,
1497 pub timeRun: raw::c_ulonglong,
1498 pub swRunlistId: raw::c_uint,
1499 pub targetTimeSlice: raw::c_ulonglong,
1500 pub cumulativePreemptionTime: raw::c_ulonglong,
1501}
1502pub type nvmlVgpuSchedulerLogEntry_t = nvmlVgpuSchedulerLogEntries_st;
1503#[repr(C)]
1504#[derive(Copy, Clone)]
1505pub struct nvmlVgpuSchedulerLog_st {
1506 pub engineId: raw::c_uint,
1507 pub schedulerPolicy: raw::c_uint,
1508 pub arrMode: raw::c_uint,
1509 pub schedulerParams: nvmlVgpuSchedulerParams_t,
1510 pub entriesCount: raw::c_uint,
1511 pub logEntries: [nvmlVgpuSchedulerLogEntry_t; 200usize],
1512}
1513pub type nvmlVgpuSchedulerLog_t = nvmlVgpuSchedulerLog_st;
1514#[repr(C)]
1515#[derive(Copy, Clone)]
1516pub struct nvmlVgpuSchedulerGetState_st {
1517 pub schedulerPolicy: raw::c_uint,
1518 pub arrMode: raw::c_uint,
1519 pub schedulerParams: nvmlVgpuSchedulerParams_t,
1520}
1521pub type nvmlVgpuSchedulerGetState_t = nvmlVgpuSchedulerGetState_st;
1522#[repr(C)]
1523#[derive(Copy, Clone)]
1524pub union nvmlVgpuSchedulerSetParams_t {
1525 pub vgpuSchedDataWithARR: nvmlVgpuSchedulerSetParams_t__bindgen_ty_1,
1526 pub vgpuSchedData: nvmlVgpuSchedulerSetParams_t__bindgen_ty_2,
1527}
1528#[repr(C)]
1529#[derive(Debug, Copy, Clone)]
1530pub struct nvmlVgpuSchedulerSetParams_t__bindgen_ty_1 {
1531 pub avgFactor: raw::c_uint,
1532 pub frequency: raw::c_uint,
1533}
1534#[repr(C)]
1535#[derive(Debug, Copy, Clone)]
1536pub struct nvmlVgpuSchedulerSetParams_t__bindgen_ty_2 {
1537 pub timeslice: raw::c_uint,
1538}
1539#[repr(C)]
1540#[derive(Copy, Clone)]
1541pub struct nvmlVgpuSchedulerSetState_st {
1542 pub schedulerPolicy: raw::c_uint,
1543 pub enableARRMode: raw::c_uint,
1544 pub schedulerParams: nvmlVgpuSchedulerSetParams_t,
1545}
1546pub type nvmlVgpuSchedulerSetState_t = nvmlVgpuSchedulerSetState_st;
1547#[repr(C)]
1548#[derive(Debug, Copy, Clone)]
1549pub struct nvmlVgpuSchedulerCapabilities_st {
1550 pub supportedSchedulers: [raw::c_uint; 3usize],
1551 pub maxTimeslice: raw::c_uint,
1552 pub minTimeslice: raw::c_uint,
1553 pub isArrModeSupported: raw::c_uint,
1554 pub maxFrequencyForARR: raw::c_uint,
1555 pub minFrequencyForARR: raw::c_uint,
1556 pub maxAvgFactorForARR: raw::c_uint,
1557 pub minAvgFactorForARR: raw::c_uint,
1558}
1559pub type nvmlVgpuSchedulerCapabilities_t = nvmlVgpuSchedulerCapabilities_st;
1560#[repr(C)]
1561#[derive(Debug, Copy, Clone)]
1562pub struct nvmlVgpuLicenseExpiry_st {
1563 pub year: raw::c_uint,
1564 pub month: raw::c_ushort,
1565 pub day: raw::c_ushort,
1566 pub hour: raw::c_ushort,
1567 pub min: raw::c_ushort,
1568 pub sec: raw::c_ushort,
1569 pub status: raw::c_uchar,
1570}
1571pub type nvmlVgpuLicenseExpiry_t = nvmlVgpuLicenseExpiry_st;
1572#[repr(C)]
1573#[derive(Debug, Copy, Clone)]
1574pub struct nvmlVgpuLicenseInfo_st {
1575 pub isLicensed: raw::c_uchar,
1576 pub licenseExpiry: nvmlVgpuLicenseExpiry_t,
1577 pub currentState: raw::c_uint,
1578}
1579pub type nvmlVgpuLicenseInfo_t = nvmlVgpuLicenseInfo_st;
1580#[repr(C)]
1581#[derive(Debug, Copy, Clone)]
1582pub struct nvmlGridLicenseExpiry_st {
1583 pub year: raw::c_uint,
1584 pub month: raw::c_ushort,
1585 pub day: raw::c_ushort,
1586 pub hour: raw::c_ushort,
1587 pub min: raw::c_ushort,
1588 pub sec: raw::c_ushort,
1589 pub status: raw::c_uchar,
1590}
1591pub type nvmlGridLicenseExpiry_t = nvmlGridLicenseExpiry_st;
1592#[repr(C)]
1593#[derive(Debug, Copy, Clone)]
1594pub struct nvmlGridLicensableFeature_st {
1595 pub featureCode: nvmlGridLicenseFeatureCode_t,
1596 pub featureState: raw::c_uint,
1597 pub licenseInfo: [raw::c_char; 128usize],
1598 pub productName: [raw::c_char; 128usize],
1599 pub featureEnabled: raw::c_uint,
1600 pub licenseExpiry: nvmlGridLicenseExpiry_t,
1601}
1602pub type nvmlGridLicensableFeature_t = nvmlGridLicensableFeature_st;
1603#[repr(C)]
1604#[derive(Debug, Copy, Clone)]
1605pub struct nvmlGridLicensableFeatures_st {
1606 pub isGridLicenseSupported: raw::c_int,
1607 pub licensableFeaturesCount: raw::c_uint,
1608 pub gridLicensableFeatures: [nvmlGridLicensableFeature_t; 3usize],
1609}
1610pub type nvmlGridLicensableFeatures_t = nvmlGridLicensableFeatures_st;
1611pub const nvmlDeviceGpuRecoveryAction_s_NVML_GPU_RECOVERY_ACTION_NONE:
1612 nvmlDeviceGpuRecoveryAction_s = 0;
1613pub const nvmlDeviceGpuRecoveryAction_s_NVML_GPU_RECOVERY_ACTION_GPU_RESET:
1614 nvmlDeviceGpuRecoveryAction_s = 1;
1615pub const nvmlDeviceGpuRecoveryAction_s_NVML_GPU_RECOVERY_ACTION_NODE_REBOOT:
1616 nvmlDeviceGpuRecoveryAction_s = 2;
1617pub const nvmlDeviceGpuRecoveryAction_s_NVML_GPU_RECOVERY_ACTION_DRAIN_P2P:
1618 nvmlDeviceGpuRecoveryAction_s = 3;
1619pub const nvmlDeviceGpuRecoveryAction_s_NVML_GPU_RECOVERY_ACTION_DRAIN_AND_RESET:
1620 nvmlDeviceGpuRecoveryAction_s = 4;
1621pub type nvmlDeviceGpuRecoveryAction_s = raw::c_uint;
1622pub use self::nvmlDeviceGpuRecoveryAction_s as nvmlDeviceGpuRecoveryAction_t;
1623#[repr(C)]
1624#[derive(Debug, Copy, Clone)]
1625pub struct nvmlNvLinkPowerThres_st {
1626 pub lowPwrThreshold: raw::c_uint,
1627}
1628pub type nvmlNvLinkPowerThres_t = nvmlNvLinkPowerThres_st;
1629#[repr(C)]
1630#[derive(Copy, Clone)]
1631pub struct nvmlFieldValue_st {
1632 pub fieldId: raw::c_uint,
1633 pub scopeId: raw::c_uint,
1634 pub timestamp: raw::c_longlong,
1635 pub latencyUsec: raw::c_longlong,
1636 pub valueType: nvmlValueType_t,
1637 pub nvmlReturn: nvmlReturn_t,
1638 pub value: nvmlValue_t,
1639}
1640pub type nvmlFieldValue_t = nvmlFieldValue_st;
1641#[repr(C)]
1642#[derive(Debug, Copy, Clone)]
1643pub struct nvmlUnit_st {
1644 _unused: [u8; 0],
1645}
1646pub type nvmlUnit_t = *mut nvmlUnit_st;
1647#[repr(C)]
1648#[derive(Debug, Copy, Clone)]
1649pub struct nvmlHwbcEntry_st {
1650 pub hwbcId: raw::c_uint,
1651 pub firmwareVersion: [raw::c_char; 32usize],
1652}
1653pub type nvmlHwbcEntry_t = nvmlHwbcEntry_st;
1654pub const nvmlFanState_enum_NVML_FAN_NORMAL: nvmlFanState_enum = 0;
1655pub const nvmlFanState_enum_NVML_FAN_FAILED: nvmlFanState_enum = 1;
1656pub type nvmlFanState_enum = raw::c_uint;
1657pub use self::nvmlFanState_enum as nvmlFanState_t;
1658pub const nvmlLedColor_enum_NVML_LED_COLOR_GREEN: nvmlLedColor_enum = 0;
1659pub const nvmlLedColor_enum_NVML_LED_COLOR_AMBER: nvmlLedColor_enum = 1;
1660pub type nvmlLedColor_enum = raw::c_uint;
1661pub use self::nvmlLedColor_enum as nvmlLedColor_t;
1662#[repr(C)]
1663#[derive(Debug, Copy, Clone)]
1664pub struct nvmlLedState_st {
1665 pub cause: [raw::c_char; 256usize],
1666 pub color: nvmlLedColor_t,
1667}
1668pub type nvmlLedState_t = nvmlLedState_st;
1669#[repr(C)]
1670#[derive(Debug, Copy, Clone)]
1671pub struct nvmlUnitInfo_st {
1672 pub name: [raw::c_char; 96usize],
1673 pub id: [raw::c_char; 96usize],
1674 pub serial: [raw::c_char; 96usize],
1675 pub firmwareVersion: [raw::c_char; 96usize],
1676}
1677pub type nvmlUnitInfo_t = nvmlUnitInfo_st;
1678#[repr(C)]
1679#[derive(Debug, Copy, Clone)]
1680pub struct nvmlPSUInfo_st {
1681 pub state: [raw::c_char; 256usize],
1682 pub current: raw::c_uint,
1683 pub voltage: raw::c_uint,
1684 pub power: raw::c_uint,
1685}
1686pub type nvmlPSUInfo_t = nvmlPSUInfo_st;
1687#[repr(C)]
1688#[derive(Debug, Copy, Clone)]
1689pub struct nvmlUnitFanInfo_st {
1690 pub speed: raw::c_uint,
1691 pub state: nvmlFanState_t,
1692}
1693pub type nvmlUnitFanInfo_t = nvmlUnitFanInfo_st;
1694#[repr(C)]
1695#[derive(Debug, Copy, Clone)]
1696pub struct nvmlUnitFanSpeeds_st {
1697 pub fans: [nvmlUnitFanInfo_t; 24usize],
1698 pub count: raw::c_uint,
1699}
1700pub type nvmlUnitFanSpeeds_t = nvmlUnitFanSpeeds_st;
1701#[repr(C)]
1702#[derive(Debug, Copy, Clone)]
1703pub struct nvmlEventSet_st {
1704 _unused: [u8; 0],
1705}
1706pub type nvmlEventSet_t = *mut nvmlEventSet_st;
1707#[repr(C)]
1708#[derive(Debug, Copy, Clone)]
1709pub struct nvmlEventData_st {
1710 pub device: nvmlDevice_t,
1711 pub eventType: raw::c_ulonglong,
1712 pub eventData: raw::c_ulonglong,
1713 pub gpuInstanceId: raw::c_uint,
1714 pub computeInstanceId: raw::c_uint,
1715}
1716pub type nvmlEventData_t = nvmlEventData_st;
1717#[repr(C)]
1718#[derive(Debug, Copy, Clone)]
1719pub struct nvmlAccountingStats_st {
1720 pub gpuUtilization: raw::c_uint,
1721 pub memoryUtilization: raw::c_uint,
1722 pub maxMemoryUsage: raw::c_ulonglong,
1723 pub time: raw::c_ulonglong,
1724 pub startTime: raw::c_ulonglong,
1725 pub isRunning: raw::c_uint,
1726 pub reserved: [raw::c_uint; 5usize],
1727}
1728pub type nvmlAccountingStats_t = nvmlAccountingStats_st;
1729pub const nvmlEncoderQueryType_enum_NVML_ENCODER_QUERY_H264: nvmlEncoderQueryType_enum = 0;
1730pub const nvmlEncoderQueryType_enum_NVML_ENCODER_QUERY_HEVC: nvmlEncoderQueryType_enum = 1;
1731pub const nvmlEncoderQueryType_enum_NVML_ENCODER_QUERY_AV1: nvmlEncoderQueryType_enum = 2;
1732pub const nvmlEncoderQueryType_enum_NVML_ENCODER_QUERY_UNKNOWN: nvmlEncoderQueryType_enum = 255;
1733pub type nvmlEncoderQueryType_enum = raw::c_uint;
1734pub use self::nvmlEncoderQueryType_enum as nvmlEncoderType_t;
1735#[repr(C)]
1736#[derive(Debug, Copy, Clone)]
1737pub struct nvmlEncoderSessionInfo_st {
1738 pub sessionId: raw::c_uint,
1739 pub pid: raw::c_uint,
1740 pub vgpuInstance: nvmlVgpuInstance_t,
1741 pub codecType: nvmlEncoderType_t,
1742 pub hResolution: raw::c_uint,
1743 pub vResolution: raw::c_uint,
1744 pub averageFps: raw::c_uint,
1745 pub averageLatency: raw::c_uint,
1746}
1747pub type nvmlEncoderSessionInfo_t = nvmlEncoderSessionInfo_st;
1748pub const nvmlFBCSessionType_enum_NVML_FBC_SESSION_TYPE_UNKNOWN: nvmlFBCSessionType_enum = 0;
1749pub const nvmlFBCSessionType_enum_NVML_FBC_SESSION_TYPE_TOSYS: nvmlFBCSessionType_enum = 1;
1750pub const nvmlFBCSessionType_enum_NVML_FBC_SESSION_TYPE_CUDA: nvmlFBCSessionType_enum = 2;
1751pub const nvmlFBCSessionType_enum_NVML_FBC_SESSION_TYPE_VID: nvmlFBCSessionType_enum = 3;
1752pub const nvmlFBCSessionType_enum_NVML_FBC_SESSION_TYPE_HWENC: nvmlFBCSessionType_enum = 4;
1753pub type nvmlFBCSessionType_enum = raw::c_uint;
1754pub use self::nvmlFBCSessionType_enum as nvmlFBCSessionType_t;
1755#[repr(C)]
1756#[derive(Debug, Copy, Clone)]
1757pub struct nvmlFBCStats_st {
1758 pub sessionsCount: raw::c_uint,
1759 pub averageFPS: raw::c_uint,
1760 pub averageLatency: raw::c_uint,
1761}
1762pub type nvmlFBCStats_t = nvmlFBCStats_st;
1763#[repr(C)]
1764#[derive(Debug, Copy, Clone)]
1765pub struct nvmlFBCSessionInfo_st {
1766 pub sessionId: raw::c_uint,
1767 pub pid: raw::c_uint,
1768 pub vgpuInstance: nvmlVgpuInstance_t,
1769 pub displayOrdinal: raw::c_uint,
1770 pub sessionType: nvmlFBCSessionType_t,
1771 pub sessionFlags: raw::c_uint,
1772 pub hMaxResolution: raw::c_uint,
1773 pub vMaxResolution: raw::c_uint,
1774 pub hResolution: raw::c_uint,
1775 pub vResolution: raw::c_uint,
1776 pub averageFPS: raw::c_uint,
1777 pub averageLatency: raw::c_uint,
1778}
1779pub type nvmlFBCSessionInfo_t = nvmlFBCSessionInfo_st;
1780pub const nvmlDetachGpuState_enum_NVML_DETACH_GPU_KEEP: nvmlDetachGpuState_enum = 0;
1781pub const nvmlDetachGpuState_enum_NVML_DETACH_GPU_REMOVE: nvmlDetachGpuState_enum = 1;
1782pub type nvmlDetachGpuState_enum = raw::c_uint;
1783pub use self::nvmlDetachGpuState_enum as nvmlDetachGpuState_t;
1784pub const nvmlPcieLinkState_enum_NVML_PCIE_LINK_KEEP: nvmlPcieLinkState_enum = 0;
1785pub const nvmlPcieLinkState_enum_NVML_PCIE_LINK_SHUT_DOWN: nvmlPcieLinkState_enum = 1;
1786pub type nvmlPcieLinkState_enum = raw::c_uint;
1787pub use self::nvmlPcieLinkState_enum as nvmlPcieLinkState_t;
1788#[repr(C)]
1789#[derive(Debug, Copy, Clone)]
1790pub struct nvmlConfComputeSystemCaps_st {
1791 pub cpuCaps: raw::c_uint,
1792 pub gpusCaps: raw::c_uint,
1793}
1794pub type nvmlConfComputeSystemCaps_t = nvmlConfComputeSystemCaps_st;
1795#[repr(C)]
1796#[derive(Debug, Copy, Clone)]
1797pub struct nvmlConfComputeSystemState_st {
1798 pub environment: raw::c_uint,
1799 pub ccFeature: raw::c_uint,
1800 pub devToolsMode: raw::c_uint,
1801}
1802pub type nvmlConfComputeSystemState_t = nvmlConfComputeSystemState_st;
1803#[repr(C)]
1804#[derive(Debug, Copy, Clone)]
1805pub struct nvmlSystemConfComputeSettings_v1_t {
1806 pub version: raw::c_uint,
1807 pub environment: raw::c_uint,
1808 pub ccFeature: raw::c_uint,
1809 pub devToolsMode: raw::c_uint,
1810 pub multiGpuMode: raw::c_uint,
1811}
1812pub type nvmlSystemConfComputeSettings_t = nvmlSystemConfComputeSettings_v1_t;
1813#[repr(C)]
1814#[derive(Debug, Copy, Clone)]
1815pub struct nvmlConfComputeMemSizeInfo_st {
1816 pub protectedMemSizeKib: raw::c_ulonglong,
1817 pub unprotectedMemSizeKib: raw::c_ulonglong,
1818}
1819pub type nvmlConfComputeMemSizeInfo_t = nvmlConfComputeMemSizeInfo_st;
1820#[repr(C)]
1821#[derive(Debug, Copy, Clone)]
1822pub struct nvmlConfComputeGpuCertificate_st {
1823 pub certChainSize: raw::c_uint,
1824 pub attestationCertChainSize: raw::c_uint,
1825 pub certChain: [raw::c_uchar; 4096usize],
1826 pub attestationCertChain: [raw::c_uchar; 5120usize],
1827}
1828pub type nvmlConfComputeGpuCertificate_t = nvmlConfComputeGpuCertificate_st;
1829#[repr(C)]
1830#[derive(Debug, Copy, Clone)]
1831pub struct nvmlConfComputeGpuAttestationReport_st {
1832 pub isCecAttestationReportPresent: raw::c_uint,
1833 pub attestationReportSize: raw::c_uint,
1834 pub cecAttestationReportSize: raw::c_uint,
1835 pub nonce: [raw::c_uchar; 32usize],
1836 pub attestationReport: [raw::c_uchar; 8192usize],
1837 pub cecAttestationReport: [raw::c_uchar; 4096usize],
1838}
1839pub type nvmlConfComputeGpuAttestationReport_t = nvmlConfComputeGpuAttestationReport_st;
1840#[repr(C)]
1841#[derive(Debug, Copy, Clone)]
1842pub struct nvmlConfComputeSetKeyRotationThresholdInfo_st {
1843 pub version: raw::c_uint,
1844 pub maxAttackerAdvantage: raw::c_ulonglong,
1845}
1846pub type nvmlConfComputeSetKeyRotationThresholdInfo_v1_t =
1847 nvmlConfComputeSetKeyRotationThresholdInfo_st;
1848pub type nvmlConfComputeSetKeyRotationThresholdInfo_t =
1849 nvmlConfComputeSetKeyRotationThresholdInfo_v1_t;
1850#[repr(C)]
1851#[derive(Debug, Copy, Clone)]
1852pub struct nvmlConfComputeGetKeyRotationThresholdInfo_st {
1853 pub version: raw::c_uint,
1854 pub attackerAdvantage: raw::c_ulonglong,
1855}
1856pub type nvmlConfComputeGetKeyRotationThresholdInfo_v1_t =
1857 nvmlConfComputeGetKeyRotationThresholdInfo_st;
1858pub type nvmlConfComputeGetKeyRotationThresholdInfo_t =
1859 nvmlConfComputeGetKeyRotationThresholdInfo_v1_t;
1860pub type nvmlGpuFabricState_t = raw::c_uchar;
1861#[repr(C)]
1862#[derive(Debug, Copy, Clone)]
1863pub struct nvmlGpuFabricInfo_t {
1864 pub clusterUuid: [raw::c_uchar; 16usize],
1865 pub status: nvmlReturn_t,
1866 pub cliqueId: raw::c_uint,
1867 pub state: nvmlGpuFabricState_t,
1868}
1869#[repr(C)]
1870#[derive(Debug, Copy, Clone)]
1871pub struct nvmlGpuFabricInfo_v2_t {
1872 pub version: raw::c_uint,
1873 pub clusterUuid: [raw::c_uchar; 16usize],
1874 pub status: nvmlReturn_t,
1875 pub cliqueId: raw::c_uint,
1876 pub state: nvmlGpuFabricState_t,
1877 pub healthMask: raw::c_uint,
1878}
1879pub type nvmlGpuFabricInfoV_t = nvmlGpuFabricInfo_v2_t;
1880#[repr(C)]
1881#[derive(Debug, Copy, Clone)]
1882pub struct nvmlSystemDriverBranchInfo_v1_t {
1883 pub version: raw::c_uint,
1884 pub branch: [raw::c_char; 80usize],
1885}
1886pub type nvmlSystemDriverBranchInfo_t = nvmlSystemDriverBranchInfo_v1_t;
1887pub type nvmlAffinityScope_t = raw::c_uint;
1888#[repr(C)]
1889#[derive(Debug, Copy, Clone)]
1890pub struct nvmlTemperature_v1_t {
1891 pub version: raw::c_uint,
1892 pub sensorType: nvmlTemperatureSensors_t,
1893 pub temperature: raw::c_int,
1894}
1895pub type nvmlTemperature_t = nvmlTemperature_v1_t;
1896pub const nvmlClockLimitId_enum_NVML_CLOCK_LIMIT_ID_RANGE_START: nvmlClockLimitId_enum = 4294967040;
1897pub const nvmlClockLimitId_enum_NVML_CLOCK_LIMIT_ID_TDP: nvmlClockLimitId_enum = 4294967041;
1898pub const nvmlClockLimitId_enum_NVML_CLOCK_LIMIT_ID_UNLIMITED: nvmlClockLimitId_enum = 4294967042;
1899pub type nvmlClockLimitId_enum = raw::c_uint;
1900pub use self::nvmlClockLimitId_enum as nvmlClockLimitId_t;
1901#[repr(C)]
1902#[derive(Debug, Copy, Clone)]
1903pub struct nvmlNvlinkSupportedBwModes_v1_t {
1904 pub version: raw::c_uint,
1905 pub bwModes: [raw::c_uchar; 23usize],
1906 pub totalBwModes: raw::c_uchar,
1907}
1908pub type nvmlNvlinkSupportedBwModes_t = nvmlNvlinkSupportedBwModes_v1_t;
1909#[repr(C)]
1910#[derive(Debug, Copy, Clone)]
1911pub struct nvmlNvlinkGetBwMode_v1_t {
1912 pub version: raw::c_uint,
1913 pub bIsBest: raw::c_uint,
1914 pub bwMode: raw::c_uchar,
1915}
1916pub type nvmlNvlinkGetBwMode_t = nvmlNvlinkGetBwMode_v1_t;
1917#[repr(C)]
1918#[derive(Debug, Copy, Clone)]
1919pub struct nvmlNvlinkSetBwMode_v1_t {
1920 pub version: raw::c_uint,
1921 pub bSetBest: raw::c_uint,
1922 pub bwMode: raw::c_uchar,
1923}
1924pub type nvmlNvlinkSetBwMode_t = nvmlNvlinkSetBwMode_v1_t;
1925#[repr(C)]
1926#[derive(Debug, Copy, Clone)]
1927pub struct nvmlVgpuVersion_st {
1928 pub minVersion: raw::c_uint,
1929 pub maxVersion: raw::c_uint,
1930}
1931pub type nvmlVgpuVersion_t = nvmlVgpuVersion_st;
1932#[repr(C)]
1933#[derive(Debug, Copy, Clone)]
1934pub struct nvmlVgpuMetadata_st {
1935 pub version: raw::c_uint,
1936 pub revision: raw::c_uint,
1937 pub guestInfoState: nvmlVgpuGuestInfoState_t,
1938 pub guestDriverVersion: [raw::c_char; 80usize],
1939 pub hostDriverVersion: [raw::c_char; 80usize],
1940 pub reserved: [raw::c_uint; 6usize],
1941 pub vgpuVirtualizationCaps: raw::c_uint,
1942 pub guestVgpuVersion: raw::c_uint,
1943 pub opaqueDataSize: raw::c_uint,
1944 pub opaqueData: [raw::c_char; 4usize],
1945}
1946pub type nvmlVgpuMetadata_t = nvmlVgpuMetadata_st;
1947#[repr(C)]
1948#[derive(Debug, Copy, Clone)]
1949pub struct nvmlVgpuPgpuMetadata_st {
1950 pub version: raw::c_uint,
1951 pub revision: raw::c_uint,
1952 pub hostDriverVersion: [raw::c_char; 80usize],
1953 pub pgpuVirtualizationCaps: raw::c_uint,
1954 pub reserved: [raw::c_uint; 5usize],
1955 pub hostSupportedVgpuRange: nvmlVgpuVersion_t,
1956 pub opaqueDataSize: raw::c_uint,
1957 pub opaqueData: [raw::c_char; 4usize],
1958}
1959pub type nvmlVgpuPgpuMetadata_t = nvmlVgpuPgpuMetadata_st;
1960pub const nvmlVgpuVmCompatibility_enum_NVML_VGPU_VM_COMPATIBILITY_NONE:
1961 nvmlVgpuVmCompatibility_enum = 0;
1962pub const nvmlVgpuVmCompatibility_enum_NVML_VGPU_VM_COMPATIBILITY_COLD:
1963 nvmlVgpuVmCompatibility_enum = 1;
1964pub const nvmlVgpuVmCompatibility_enum_NVML_VGPU_VM_COMPATIBILITY_HIBERNATE:
1965 nvmlVgpuVmCompatibility_enum = 2;
1966pub const nvmlVgpuVmCompatibility_enum_NVML_VGPU_VM_COMPATIBILITY_SLEEP:
1967 nvmlVgpuVmCompatibility_enum = 4;
1968pub const nvmlVgpuVmCompatibility_enum_NVML_VGPU_VM_COMPATIBILITY_LIVE:
1969 nvmlVgpuVmCompatibility_enum = 8;
1970pub type nvmlVgpuVmCompatibility_enum = raw::c_uint;
1971pub use self::nvmlVgpuVmCompatibility_enum as nvmlVgpuVmCompatibility_t;
1972pub const nvmlVgpuPgpuCompatibilityLimitCode_enum_NVML_VGPU_COMPATIBILITY_LIMIT_NONE:
1973 nvmlVgpuPgpuCompatibilityLimitCode_enum = 0;
1974pub const nvmlVgpuPgpuCompatibilityLimitCode_enum_NVML_VGPU_COMPATIBILITY_LIMIT_HOST_DRIVER:
1975 nvmlVgpuPgpuCompatibilityLimitCode_enum = 1;
1976pub const nvmlVgpuPgpuCompatibilityLimitCode_enum_NVML_VGPU_COMPATIBILITY_LIMIT_GUEST_DRIVER:
1977 nvmlVgpuPgpuCompatibilityLimitCode_enum = 2;
1978pub const nvmlVgpuPgpuCompatibilityLimitCode_enum_NVML_VGPU_COMPATIBILITY_LIMIT_GPU:
1979 nvmlVgpuPgpuCompatibilityLimitCode_enum = 4;
1980pub const nvmlVgpuPgpuCompatibilityLimitCode_enum_NVML_VGPU_COMPATIBILITY_LIMIT_OTHER:
1981 nvmlVgpuPgpuCompatibilityLimitCode_enum = 2147483648;
1982pub type nvmlVgpuPgpuCompatibilityLimitCode_enum = raw::c_uint;
1983pub use self::nvmlVgpuPgpuCompatibilityLimitCode_enum as nvmlVgpuPgpuCompatibilityLimitCode_t;
1984#[repr(C)]
1985#[derive(Debug, Copy, Clone)]
1986pub struct nvmlVgpuPgpuCompatibility_st {
1987 pub vgpuVmCompatibility: nvmlVgpuVmCompatibility_t,
1988 pub compatibilityLimitCode: nvmlVgpuPgpuCompatibilityLimitCode_t,
1989}
1990pub type nvmlVgpuPgpuCompatibility_t = nvmlVgpuPgpuCompatibility_st;
1991#[repr(C)]
1992#[derive(Debug, Copy, Clone)]
1993pub struct nvmlExcludedDeviceInfo_st {
1994 pub pciInfo: nvmlPciInfo_t,
1995 pub uuid: [raw::c_char; 80usize],
1996}
1997pub type nvmlExcludedDeviceInfo_t = nvmlExcludedDeviceInfo_st;
1998#[repr(C)]
1999#[derive(Debug, Copy, Clone)]
2000pub struct nvmlGpuInstancePlacement_st {
2001 pub start: raw::c_uint,
2002 pub size: raw::c_uint,
2003}
2004pub type nvmlGpuInstancePlacement_t = nvmlGpuInstancePlacement_st;
2005#[repr(C)]
2006#[derive(Debug, Copy, Clone)]
2007pub struct nvmlGpuInstanceProfileInfo_st {
2008 pub id: raw::c_uint,
2009 pub isP2pSupported: raw::c_uint,
2010 pub sliceCount: raw::c_uint,
2011 pub instanceCount: raw::c_uint,
2012 pub multiprocessorCount: raw::c_uint,
2013 pub copyEngineCount: raw::c_uint,
2014 pub decoderCount: raw::c_uint,
2015 pub encoderCount: raw::c_uint,
2016 pub jpegCount: raw::c_uint,
2017 pub ofaCount: raw::c_uint,
2018 pub memorySizeMB: raw::c_ulonglong,
2019}
2020pub type nvmlGpuInstanceProfileInfo_t = nvmlGpuInstanceProfileInfo_st;
2021#[repr(C)]
2022#[derive(Debug, Copy, Clone)]
2023pub struct nvmlGpuInstanceProfileInfo_v2_st {
2024 pub version: raw::c_uint,
2025 pub id: raw::c_uint,
2026 pub isP2pSupported: raw::c_uint,
2027 pub sliceCount: raw::c_uint,
2028 pub instanceCount: raw::c_uint,
2029 pub multiprocessorCount: raw::c_uint,
2030 pub copyEngineCount: raw::c_uint,
2031 pub decoderCount: raw::c_uint,
2032 pub encoderCount: raw::c_uint,
2033 pub jpegCount: raw::c_uint,
2034 pub ofaCount: raw::c_uint,
2035 pub memorySizeMB: raw::c_ulonglong,
2036 pub name: [raw::c_char; 96usize],
2037}
2038pub type nvmlGpuInstanceProfileInfo_v2_t = nvmlGpuInstanceProfileInfo_v2_st;
2039#[repr(C)]
2040#[derive(Debug, Copy, Clone)]
2041pub struct nvmlGpuInstanceProfileInfo_v3_st {
2042 pub version: raw::c_uint,
2043 pub id: raw::c_uint,
2044 pub sliceCount: raw::c_uint,
2045 pub instanceCount: raw::c_uint,
2046 pub multiprocessorCount: raw::c_uint,
2047 pub copyEngineCount: raw::c_uint,
2048 pub decoderCount: raw::c_uint,
2049 pub encoderCount: raw::c_uint,
2050 pub jpegCount: raw::c_uint,
2051 pub ofaCount: raw::c_uint,
2052 pub memorySizeMB: raw::c_ulonglong,
2053 pub name: [raw::c_char; 96usize],
2054 pub capabilities: raw::c_uint,
2055}
2056pub type nvmlGpuInstanceProfileInfo_v3_t = nvmlGpuInstanceProfileInfo_v3_st;
2057#[repr(C)]
2058#[derive(Debug, Copy, Clone)]
2059pub struct nvmlGpuInstanceInfo_st {
2060 pub device: nvmlDevice_t,
2061 pub id: raw::c_uint,
2062 pub profileId: raw::c_uint,
2063 pub placement: nvmlGpuInstancePlacement_t,
2064}
2065pub type nvmlGpuInstanceInfo_t = nvmlGpuInstanceInfo_st;
2066#[repr(C)]
2067#[derive(Debug, Copy, Clone)]
2068pub struct nvmlGpuInstance_st {
2069 _unused: [u8; 0],
2070}
2071pub type nvmlGpuInstance_t = *mut nvmlGpuInstance_st;
2072#[repr(C)]
2073#[derive(Debug, Copy, Clone)]
2074pub struct nvmlComputeInstancePlacement_st {
2075 pub start: raw::c_uint,
2076 pub size: raw::c_uint,
2077}
2078pub type nvmlComputeInstancePlacement_t = nvmlComputeInstancePlacement_st;
2079#[repr(C)]
2080#[derive(Debug, Copy, Clone)]
2081pub struct nvmlComputeInstanceProfileInfo_st {
2082 pub id: raw::c_uint,
2083 pub sliceCount: raw::c_uint,
2084 pub instanceCount: raw::c_uint,
2085 pub multiprocessorCount: raw::c_uint,
2086 pub sharedCopyEngineCount: raw::c_uint,
2087 pub sharedDecoderCount: raw::c_uint,
2088 pub sharedEncoderCount: raw::c_uint,
2089 pub sharedJpegCount: raw::c_uint,
2090 pub sharedOfaCount: raw::c_uint,
2091}
2092pub type nvmlComputeInstanceProfileInfo_t = nvmlComputeInstanceProfileInfo_st;
2093#[repr(C)]
2094#[derive(Debug, Copy, Clone)]
2095pub struct nvmlComputeInstanceProfileInfo_v2_st {
2096 pub version: raw::c_uint,
2097 pub id: raw::c_uint,
2098 pub sliceCount: raw::c_uint,
2099 pub instanceCount: raw::c_uint,
2100 pub multiprocessorCount: raw::c_uint,
2101 pub sharedCopyEngineCount: raw::c_uint,
2102 pub sharedDecoderCount: raw::c_uint,
2103 pub sharedEncoderCount: raw::c_uint,
2104 pub sharedJpegCount: raw::c_uint,
2105 pub sharedOfaCount: raw::c_uint,
2106 pub name: [raw::c_char; 96usize],
2107}
2108pub type nvmlComputeInstanceProfileInfo_v2_t = nvmlComputeInstanceProfileInfo_v2_st;
2109#[repr(C)]
2110#[derive(Debug, Copy, Clone)]
2111pub struct nvmlComputeInstanceProfileInfo_v3_st {
2112 pub version: raw::c_uint,
2113 pub id: raw::c_uint,
2114 pub sliceCount: raw::c_uint,
2115 pub instanceCount: raw::c_uint,
2116 pub multiprocessorCount: raw::c_uint,
2117 pub sharedCopyEngineCount: raw::c_uint,
2118 pub sharedDecoderCount: raw::c_uint,
2119 pub sharedEncoderCount: raw::c_uint,
2120 pub sharedJpegCount: raw::c_uint,
2121 pub sharedOfaCount: raw::c_uint,
2122 pub name: [raw::c_char; 96usize],
2123 pub capabilities: raw::c_uint,
2124}
2125pub type nvmlComputeInstanceProfileInfo_v3_t = nvmlComputeInstanceProfileInfo_v3_st;
2126#[repr(C)]
2127#[derive(Debug, Copy, Clone)]
2128pub struct nvmlComputeInstanceInfo_st {
2129 pub device: nvmlDevice_t,
2130 pub gpuInstance: nvmlGpuInstance_t,
2131 pub id: raw::c_uint,
2132 pub profileId: raw::c_uint,
2133 pub placement: nvmlComputeInstancePlacement_t,
2134}
2135pub type nvmlComputeInstanceInfo_t = nvmlComputeInstanceInfo_st;
2136#[repr(C)]
2137#[derive(Debug, Copy, Clone)]
2138pub struct nvmlComputeInstance_st {
2139 _unused: [u8; 0],
2140}
2141pub type nvmlComputeInstance_t = *mut nvmlComputeInstance_st;
2142pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_GRAPHICS_UTIL: nvmlGpmMetricId_t = 1;
2143pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_SM_UTIL: nvmlGpmMetricId_t = 2;
2144pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_SM_OCCUPANCY: nvmlGpmMetricId_t = 3;
2145pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_INTEGER_UTIL: nvmlGpmMetricId_t = 4;
2146pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_ANY_TENSOR_UTIL: nvmlGpmMetricId_t = 5;
2147pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_DFMA_TENSOR_UTIL: nvmlGpmMetricId_t = 6;
2148pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_HMMA_TENSOR_UTIL: nvmlGpmMetricId_t = 7;
2149pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_IMMA_TENSOR_UTIL: nvmlGpmMetricId_t = 9;
2150pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_DRAM_BW_UTIL: nvmlGpmMetricId_t = 10;
2151pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_FP64_UTIL: nvmlGpmMetricId_t = 11;
2152pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_FP32_UTIL: nvmlGpmMetricId_t = 12;
2153pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_FP16_UTIL: nvmlGpmMetricId_t = 13;
2154pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_PCIE_TX_PER_SEC: nvmlGpmMetricId_t = 20;
2155pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_PCIE_RX_PER_SEC: nvmlGpmMetricId_t = 21;
2156pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVDEC_0_UTIL: nvmlGpmMetricId_t = 30;
2157pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVDEC_1_UTIL: nvmlGpmMetricId_t = 31;
2158pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVDEC_2_UTIL: nvmlGpmMetricId_t = 32;
2159pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVDEC_3_UTIL: nvmlGpmMetricId_t = 33;
2160pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVDEC_4_UTIL: nvmlGpmMetricId_t = 34;
2161pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVDEC_5_UTIL: nvmlGpmMetricId_t = 35;
2162pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVDEC_6_UTIL: nvmlGpmMetricId_t = 36;
2163pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVDEC_7_UTIL: nvmlGpmMetricId_t = 37;
2164pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVJPG_0_UTIL: nvmlGpmMetricId_t = 40;
2165pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVJPG_1_UTIL: nvmlGpmMetricId_t = 41;
2166pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVJPG_2_UTIL: nvmlGpmMetricId_t = 42;
2167pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVJPG_3_UTIL: nvmlGpmMetricId_t = 43;
2168pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVJPG_4_UTIL: nvmlGpmMetricId_t = 44;
2169pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVJPG_5_UTIL: nvmlGpmMetricId_t = 45;
2170pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVJPG_6_UTIL: nvmlGpmMetricId_t = 46;
2171pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVJPG_7_UTIL: nvmlGpmMetricId_t = 47;
2172pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVOFA_0_UTIL: nvmlGpmMetricId_t = 50;
2173pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVOFA_1_UTIL: nvmlGpmMetricId_t = 51;
2174pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_TOTAL_RX_PER_SEC: nvmlGpmMetricId_t = 60;
2175pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_TOTAL_TX_PER_SEC: nvmlGpmMetricId_t = 61;
2176pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L0_RX_PER_SEC: nvmlGpmMetricId_t = 62;
2177pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L0_TX_PER_SEC: nvmlGpmMetricId_t = 63;
2178pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L1_RX_PER_SEC: nvmlGpmMetricId_t = 64;
2179pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L1_TX_PER_SEC: nvmlGpmMetricId_t = 65;
2180pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L2_RX_PER_SEC: nvmlGpmMetricId_t = 66;
2181pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L2_TX_PER_SEC: nvmlGpmMetricId_t = 67;
2182pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L3_RX_PER_SEC: nvmlGpmMetricId_t = 68;
2183pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L3_TX_PER_SEC: nvmlGpmMetricId_t = 69;
2184pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L4_RX_PER_SEC: nvmlGpmMetricId_t = 70;
2185pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L4_TX_PER_SEC: nvmlGpmMetricId_t = 71;
2186pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L5_RX_PER_SEC: nvmlGpmMetricId_t = 72;
2187pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L5_TX_PER_SEC: nvmlGpmMetricId_t = 73;
2188pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L6_RX_PER_SEC: nvmlGpmMetricId_t = 74;
2189pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L6_TX_PER_SEC: nvmlGpmMetricId_t = 75;
2190pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L7_RX_PER_SEC: nvmlGpmMetricId_t = 76;
2191pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L7_TX_PER_SEC: nvmlGpmMetricId_t = 77;
2192pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L8_RX_PER_SEC: nvmlGpmMetricId_t = 78;
2193pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L8_TX_PER_SEC: nvmlGpmMetricId_t = 79;
2194pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L9_RX_PER_SEC: nvmlGpmMetricId_t = 80;
2195pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L9_TX_PER_SEC: nvmlGpmMetricId_t = 81;
2196pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L10_RX_PER_SEC: nvmlGpmMetricId_t = 82;
2197pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L10_TX_PER_SEC: nvmlGpmMetricId_t = 83;
2198pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L11_RX_PER_SEC: nvmlGpmMetricId_t = 84;
2199pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L11_TX_PER_SEC: nvmlGpmMetricId_t = 85;
2200pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L12_RX_PER_SEC: nvmlGpmMetricId_t = 86;
2201pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L12_TX_PER_SEC: nvmlGpmMetricId_t = 87;
2202pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L13_RX_PER_SEC: nvmlGpmMetricId_t = 88;
2203pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L13_TX_PER_SEC: nvmlGpmMetricId_t = 89;
2204pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L14_RX_PER_SEC: nvmlGpmMetricId_t = 90;
2205pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L14_TX_PER_SEC: nvmlGpmMetricId_t = 91;
2206pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L15_RX_PER_SEC: nvmlGpmMetricId_t = 92;
2207pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L15_TX_PER_SEC: nvmlGpmMetricId_t = 93;
2208pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L16_RX_PER_SEC: nvmlGpmMetricId_t = 94;
2209pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L16_TX_PER_SEC: nvmlGpmMetricId_t = 95;
2210pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L17_RX_PER_SEC: nvmlGpmMetricId_t = 96;
2211pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_NVLINK_L17_TX_PER_SEC: nvmlGpmMetricId_t = 97;
2212pub const nvmlGpmMetricId_t_NVML_GPM_METRIC_MAX: nvmlGpmMetricId_t = 98;
2213pub type nvmlGpmMetricId_t = raw::c_uint;
2214#[repr(C)]
2215#[derive(Debug, Copy, Clone)]
2216pub struct nvmlGpmSample_st {
2217 _unused: [u8; 0],
2218}
2219pub type nvmlGpmSample_t = *mut nvmlGpmSample_st;
2220#[repr(C)]
2221#[derive(Debug, Copy, Clone)]
2222pub struct nvmlGpmMetric_t {
2223 pub metricId: raw::c_uint,
2224 pub nvmlReturn: nvmlReturn_t,
2225 pub value: f64,
2226 pub metricInfo: nvmlGpmMetric_t__bindgen_ty_1,
2227}
2228#[repr(C)]
2229#[derive(Debug, Copy, Clone)]
2230pub struct nvmlGpmMetric_t__bindgen_ty_1 {
2231 pub shortName: *mut raw::c_char,
2232 pub longName: *mut raw::c_char,
2233 pub unit: *mut raw::c_char,
2234}
2235#[repr(C)]
2236#[derive(Debug, Copy, Clone)]
2237pub struct nvmlGpmMetricsGet_t {
2238 pub version: raw::c_uint,
2239 pub numMetrics: raw::c_uint,
2240 pub sample1: nvmlGpmSample_t,
2241 pub sample2: nvmlGpmSample_t,
2242 pub metrics: [nvmlGpmMetric_t; 98usize],
2243}
2244#[repr(C)]
2245#[derive(Debug, Copy, Clone)]
2246pub struct nvmlGpmSupport_t {
2247 pub version: raw::c_uint,
2248 pub isSupportedDevice: raw::c_uint,
2249}
2250#[repr(C)]
2251#[derive(Debug, Copy, Clone)]
2252pub struct nvmlDeviceCapabilities_v1_t {
2253 pub version: raw::c_uint,
2254 pub capMask: raw::c_uint,
2255}
2256pub type nvmlDeviceCapabilities_t = nvmlDeviceCapabilities_v1_t;
2257#[repr(C)]
2258#[derive(Debug, Copy, Clone)]
2259pub struct nvmlMask255_t {
2260 pub mask: [raw::c_uint; 8usize],
2261}
2262pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_MAX_P: nvmlPowerProfileType_t = 0;
2263pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_MAX_Q: nvmlPowerProfileType_t = 1;
2264pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_COMPUTE: nvmlPowerProfileType_t = 2;
2265pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_MEMORY_BOUND: nvmlPowerProfileType_t = 3;
2266pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_NETWORK: nvmlPowerProfileType_t = 4;
2267pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_BALANCED: nvmlPowerProfileType_t = 5;
2268pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_LLM_INFERENCE: nvmlPowerProfileType_t = 6;
2269pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_LLM_TRAINING: nvmlPowerProfileType_t = 7;
2270pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_RBM: nvmlPowerProfileType_t = 8;
2271pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_DCPCIE: nvmlPowerProfileType_t = 9;
2272pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_HMMA_SPARSE: nvmlPowerProfileType_t = 10;
2273pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_HMMA_DENSE: nvmlPowerProfileType_t = 11;
2274pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_SYNC_BALANCED: nvmlPowerProfileType_t = 12;
2275pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_HPC: nvmlPowerProfileType_t = 13;
2276pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_MIG: nvmlPowerProfileType_t = 14;
2277pub const nvmlPowerProfileType_t_NVML_POWER_PROFILE_MAX: nvmlPowerProfileType_t = 15;
2278pub type nvmlPowerProfileType_t = raw::c_uint;
2279#[repr(C)]
2280#[derive(Debug, Copy, Clone)]
2281pub struct nvmlWorkloadPowerProfileInfo_v1_t {
2282 pub version: raw::c_uint,
2283 pub profileId: raw::c_uint,
2284 pub priority: raw::c_uint,
2285 pub conflictingMask: nvmlMask255_t,
2286}
2287pub type nvmlWorkloadPowerProfileInfo_t = nvmlWorkloadPowerProfileInfo_v1_t;
2288#[repr(C)]
2289#[derive(Debug, Copy, Clone)]
2290pub struct nvmlWorkloadPowerProfileProfilesInfo_v1_t {
2291 pub version: raw::c_uint,
2292 pub perfProfilesMask: nvmlMask255_t,
2293 pub perfProfile: [nvmlWorkloadPowerProfileInfo_t; 255usize],
2294}
2295pub type nvmlWorkloadPowerProfileProfilesInfo_t = nvmlWorkloadPowerProfileProfilesInfo_v1_t;
2296#[repr(C)]
2297#[derive(Debug, Copy, Clone)]
2298pub struct nvmlWorkloadPowerProfileCurrentProfiles_v1_t {
2299 pub version: raw::c_uint,
2300 pub perfProfilesMask: nvmlMask255_t,
2301 pub requestedProfilesMask: nvmlMask255_t,
2302 pub enforcedProfilesMask: nvmlMask255_t,
2303}
2304pub type nvmlWorkloadPowerProfileCurrentProfiles_t = nvmlWorkloadPowerProfileCurrentProfiles_v1_t;
2305#[repr(C)]
2306#[derive(Debug, Copy, Clone)]
2307pub struct nvmlWorkloadPowerProfileRequestedProfiles_v1_t {
2308 pub version: raw::c_uint,
2309 pub requestedProfilesMask: nvmlMask255_t,
2310}
2311pub type nvmlWorkloadPowerProfileRequestedProfiles_t =
2312 nvmlWorkloadPowerProfileRequestedProfiles_v1_t;
2313#[repr(C)]
2314#[derive(Debug, Copy, Clone)]
2315pub struct nvmlPowerSmoothingProfile_v1_t {
2316 pub version: raw::c_uint,
2317 pub profileId: raw::c_uint,
2318 pub paramId: raw::c_uint,
2319 pub value: f64,
2320}
2321pub type nvmlPowerSmoothingProfile_t = nvmlPowerSmoothingProfile_v1_t;
2322#[repr(C)]
2323#[derive(Debug, Copy, Clone)]
2324pub struct nvmlPowerSmoothingState_v1_t {
2325 pub version: raw::c_uint,
2326 pub state: nvmlEnableState_t,
2327}
2328pub type nvmlPowerSmoothingState_t = nvmlPowerSmoothingState_v1_t;
2329pub struct NvmlLib {
2330 pub __library: ::libloading::Library,
2331 pub nvmlInit_v2: Result<unsafe extern "C" fn() -> nvmlReturn_t, ::libloading::Error>,
2332 pub nvmlInitWithFlags:
2333 Result<unsafe extern "C" fn(flags: raw::c_uint) -> nvmlReturn_t, ::libloading::Error>,
2334 pub nvmlShutdown: Result<unsafe extern "C" fn() -> nvmlReturn_t, ::libloading::Error>,
2335 pub nvmlErrorString: Result<
2336 unsafe extern "C" fn(result: nvmlReturn_t) -> *const raw::c_char,
2337 ::libloading::Error,
2338 >,
2339 pub nvmlSystemGetDriverVersion: Result<
2340 unsafe extern "C" fn(version: *mut raw::c_char, length: raw::c_uint) -> nvmlReturn_t,
2341 ::libloading::Error,
2342 >,
2343 pub nvmlSystemGetNVMLVersion: Result<
2344 unsafe extern "C" fn(version: *mut raw::c_char, length: raw::c_uint) -> nvmlReturn_t,
2345 ::libloading::Error,
2346 >,
2347 pub nvmlSystemGetCudaDriverVersion: Result<
2348 unsafe extern "C" fn(cudaDriverVersion: *mut raw::c_int) -> nvmlReturn_t,
2349 ::libloading::Error,
2350 >,
2351 pub nvmlSystemGetCudaDriverVersion_v2: Result<
2352 unsafe extern "C" fn(cudaDriverVersion: *mut raw::c_int) -> nvmlReturn_t,
2353 ::libloading::Error,
2354 >,
2355 pub nvmlSystemGetProcessName: Result<
2356 unsafe extern "C" fn(
2357 pid: raw::c_uint,
2358 name: *mut raw::c_char,
2359 length: raw::c_uint,
2360 ) -> nvmlReturn_t,
2361 ::libloading::Error,
2362 >,
2363 pub nvmlSystemGetHicVersion: Result<
2364 unsafe extern "C" fn(
2365 hwbcCount: *mut raw::c_uint,
2366 hwbcEntries: *mut nvmlHwbcEntry_t,
2367 ) -> nvmlReturn_t,
2368 ::libloading::Error,
2369 >,
2370 pub nvmlSystemGetTopologyGpuSet: Result<
2371 unsafe extern "C" fn(
2372 cpuNumber: raw::c_uint,
2373 count: *mut raw::c_uint,
2374 deviceArray: *mut nvmlDevice_t,
2375 ) -> nvmlReturn_t,
2376 ::libloading::Error,
2377 >,
2378 pub nvmlSystemGetDriverBranch: Result<
2379 unsafe extern "C" fn(
2380 branchInfo: *mut nvmlSystemDriverBranchInfo_t,
2381 length: raw::c_uint,
2382 ) -> nvmlReturn_t,
2383 ::libloading::Error,
2384 >,
2385 pub nvmlUnitGetCount: Result<
2386 unsafe extern "C" fn(unitCount: *mut raw::c_uint) -> nvmlReturn_t,
2387 ::libloading::Error,
2388 >,
2389 pub nvmlUnitGetHandleByIndex: Result<
2390 unsafe extern "C" fn(index: raw::c_uint, unit: *mut nvmlUnit_t) -> nvmlReturn_t,
2391 ::libloading::Error,
2392 >,
2393 pub nvmlUnitGetUnitInfo: Result<
2394 unsafe extern "C" fn(unit: nvmlUnit_t, info: *mut nvmlUnitInfo_t) -> nvmlReturn_t,
2395 ::libloading::Error,
2396 >,
2397 pub nvmlUnitGetLedState: Result<
2398 unsafe extern "C" fn(unit: nvmlUnit_t, state: *mut nvmlLedState_t) -> nvmlReturn_t,
2399 ::libloading::Error,
2400 >,
2401 pub nvmlUnitGetPsuInfo: Result<
2402 unsafe extern "C" fn(unit: nvmlUnit_t, psu: *mut nvmlPSUInfo_t) -> nvmlReturn_t,
2403 ::libloading::Error,
2404 >,
2405 pub nvmlUnitGetTemperature: Result<
2406 unsafe extern "C" fn(
2407 unit: nvmlUnit_t,
2408 type_: raw::c_uint,
2409 temp: *mut raw::c_uint,
2410 ) -> nvmlReturn_t,
2411 ::libloading::Error,
2412 >,
2413 pub nvmlUnitGetFanSpeedInfo: Result<
2414 unsafe extern "C" fn(unit: nvmlUnit_t, fanSpeeds: *mut nvmlUnitFanSpeeds_t) -> nvmlReturn_t,
2415 ::libloading::Error,
2416 >,
2417 pub nvmlUnitGetDevices: Result<
2418 unsafe extern "C" fn(
2419 unit: nvmlUnit_t,
2420 deviceCount: *mut raw::c_uint,
2421 devices: *mut nvmlDevice_t,
2422 ) -> nvmlReturn_t,
2423 ::libloading::Error,
2424 >,
2425 pub nvmlDeviceGetCount_v2: Result<
2426 unsafe extern "C" fn(deviceCount: *mut raw::c_uint) -> nvmlReturn_t,
2427 ::libloading::Error,
2428 >,
2429 pub nvmlDeviceGetAttributes_v2: Result<
2430 unsafe extern "C" fn(
2431 device: nvmlDevice_t,
2432 attributes: *mut nvmlDeviceAttributes_t,
2433 ) -> nvmlReturn_t,
2434 ::libloading::Error,
2435 >,
2436 pub nvmlDeviceGetHandleByIndex_v2: Result<
2437 unsafe extern "C" fn(index: raw::c_uint, device: *mut nvmlDevice_t) -> nvmlReturn_t,
2438 ::libloading::Error,
2439 >,
2440 pub nvmlDeviceGetHandleBySerial: Result<
2441 unsafe extern "C" fn(serial: *const raw::c_char, device: *mut nvmlDevice_t) -> nvmlReturn_t,
2442 ::libloading::Error,
2443 >,
2444 pub nvmlDeviceGetHandleByUUID: Result<
2445 unsafe extern "C" fn(uuid: *const raw::c_char, device: *mut nvmlDevice_t) -> nvmlReturn_t,
2446 ::libloading::Error,
2447 >,
2448 pub nvmlDeviceGetHandleByPciBusId_v2: Result<
2449 unsafe extern "C" fn(
2450 pciBusId: *const raw::c_char,
2451 device: *mut nvmlDevice_t,
2452 ) -> nvmlReturn_t,
2453 ::libloading::Error,
2454 >,
2455 pub nvmlDeviceGetName: Result<
2456 unsafe extern "C" fn(
2457 device: nvmlDevice_t,
2458 name: *mut raw::c_char,
2459 length: raw::c_uint,
2460 ) -> nvmlReturn_t,
2461 ::libloading::Error,
2462 >,
2463 pub nvmlDeviceGetBrand: Result<
2464 unsafe extern "C" fn(device: nvmlDevice_t, type_: *mut nvmlBrandType_t) -> nvmlReturn_t,
2465 ::libloading::Error,
2466 >,
2467 pub nvmlDeviceGetIndex: Result<
2468 unsafe extern "C" fn(device: nvmlDevice_t, index: *mut raw::c_uint) -> nvmlReturn_t,
2469 ::libloading::Error,
2470 >,
2471 pub nvmlDeviceGetSerial: Result<
2472 unsafe extern "C" fn(
2473 device: nvmlDevice_t,
2474 serial: *mut raw::c_char,
2475 length: raw::c_uint,
2476 ) -> nvmlReturn_t,
2477 ::libloading::Error,
2478 >,
2479 pub nvmlDeviceGetModuleId: Result<
2480 unsafe extern "C" fn(device: nvmlDevice_t, moduleId: *mut raw::c_uint) -> nvmlReturn_t,
2481 ::libloading::Error,
2482 >,
2483 pub nvmlDeviceGetC2cModeInfoV: Result<
2484 unsafe extern "C" fn(
2485 device: nvmlDevice_t,
2486 c2cModeInfo: *mut nvmlC2cModeInfo_v1_t,
2487 ) -> nvmlReturn_t,
2488 ::libloading::Error,
2489 >,
2490 pub nvmlDeviceGetMemoryAffinity: Result<
2491 unsafe extern "C" fn(
2492 device: nvmlDevice_t,
2493 nodeSetSize: raw::c_uint,
2494 nodeSet: *mut raw::c_ulong,
2495 scope: nvmlAffinityScope_t,
2496 ) -> nvmlReturn_t,
2497 ::libloading::Error,
2498 >,
2499 pub nvmlDeviceGetCpuAffinityWithinScope: Result<
2500 unsafe extern "C" fn(
2501 device: nvmlDevice_t,
2502 cpuSetSize: raw::c_uint,
2503 cpuSet: *mut raw::c_ulong,
2504 scope: nvmlAffinityScope_t,
2505 ) -> nvmlReturn_t,
2506 ::libloading::Error,
2507 >,
2508 pub nvmlDeviceGetCpuAffinity: Result<
2509 unsafe extern "C" fn(
2510 device: nvmlDevice_t,
2511 cpuSetSize: raw::c_uint,
2512 cpuSet: *mut raw::c_ulong,
2513 ) -> nvmlReturn_t,
2514 ::libloading::Error,
2515 >,
2516 pub nvmlDeviceSetCpuAffinity:
2517 Result<unsafe extern "C" fn(device: nvmlDevice_t) -> nvmlReturn_t, ::libloading::Error>,
2518 pub nvmlDeviceClearCpuAffinity:
2519 Result<unsafe extern "C" fn(device: nvmlDevice_t) -> nvmlReturn_t, ::libloading::Error>,
2520 pub nvmlDeviceGetNumaNodeId: Result<
2521 unsafe extern "C" fn(device: nvmlDevice_t, node: *mut raw::c_uint) -> nvmlReturn_t,
2522 ::libloading::Error,
2523 >,
2524 pub nvmlDeviceGetTopologyCommonAncestor: Result<
2525 unsafe extern "C" fn(
2526 device1: nvmlDevice_t,
2527 device2: nvmlDevice_t,
2528 pathInfo: *mut nvmlGpuTopologyLevel_t,
2529 ) -> nvmlReturn_t,
2530 ::libloading::Error,
2531 >,
2532 pub nvmlDeviceGetTopologyNearestGpus: Result<
2533 unsafe extern "C" fn(
2534 device: nvmlDevice_t,
2535 level: nvmlGpuTopologyLevel_t,
2536 count: *mut raw::c_uint,
2537 deviceArray: *mut nvmlDevice_t,
2538 ) -> nvmlReturn_t,
2539 ::libloading::Error,
2540 >,
2541 pub nvmlDeviceGetP2PStatus: Result<
2542 unsafe extern "C" fn(
2543 device1: nvmlDevice_t,
2544 device2: nvmlDevice_t,
2545 p2pIndex: nvmlGpuP2PCapsIndex_t,
2546 p2pStatus: *mut nvmlGpuP2PStatus_t,
2547 ) -> nvmlReturn_t,
2548 ::libloading::Error,
2549 >,
2550 pub nvmlDeviceGetUUID: Result<
2551 unsafe extern "C" fn(
2552 device: nvmlDevice_t,
2553 uuid: *mut raw::c_char,
2554 length: raw::c_uint,
2555 ) -> nvmlReturn_t,
2556 ::libloading::Error,
2557 >,
2558 pub nvmlDeviceGetMinorNumber: Result<
2559 unsafe extern "C" fn(device: nvmlDevice_t, minorNumber: *mut raw::c_uint) -> nvmlReturn_t,
2560 ::libloading::Error,
2561 >,
2562 pub nvmlDeviceGetBoardPartNumber: Result<
2563 unsafe extern "C" fn(
2564 device: nvmlDevice_t,
2565 partNumber: *mut raw::c_char,
2566 length: raw::c_uint,
2567 ) -> nvmlReturn_t,
2568 ::libloading::Error,
2569 >,
2570 pub nvmlDeviceGetInforomVersion: Result<
2571 unsafe extern "C" fn(
2572 device: nvmlDevice_t,
2573 object: nvmlInforomObject_t,
2574 version: *mut raw::c_char,
2575 length: raw::c_uint,
2576 ) -> nvmlReturn_t,
2577 ::libloading::Error,
2578 >,
2579 pub nvmlDeviceGetInforomImageVersion: Result<
2580 unsafe extern "C" fn(
2581 device: nvmlDevice_t,
2582 version: *mut raw::c_char,
2583 length: raw::c_uint,
2584 ) -> nvmlReturn_t,
2585 ::libloading::Error,
2586 >,
2587 pub nvmlDeviceGetInforomConfigurationChecksum: Result<
2588 unsafe extern "C" fn(device: nvmlDevice_t, checksum: *mut raw::c_uint) -> nvmlReturn_t,
2589 ::libloading::Error,
2590 >,
2591 pub nvmlDeviceValidateInforom:
2592 Result<unsafe extern "C" fn(device: nvmlDevice_t) -> nvmlReturn_t, ::libloading::Error>,
2593 pub nvmlDeviceGetLastBBXFlushTime: Result<
2594 unsafe extern "C" fn(
2595 device: nvmlDevice_t,
2596 timestamp: *mut raw::c_ulonglong,
2597 durationUs: *mut raw::c_ulong,
2598 ) -> nvmlReturn_t,
2599 ::libloading::Error,
2600 >,
2601 pub nvmlDeviceGetDisplayMode: Result<
2602 unsafe extern "C" fn(device: nvmlDevice_t, display: *mut nvmlEnableState_t) -> nvmlReturn_t,
2603 ::libloading::Error,
2604 >,
2605 pub nvmlDeviceGetDisplayActive: Result<
2606 unsafe extern "C" fn(
2607 device: nvmlDevice_t,
2608 isActive: *mut nvmlEnableState_t,
2609 ) -> nvmlReturn_t,
2610 ::libloading::Error,
2611 >,
2612 pub nvmlDeviceGetPersistenceMode: Result<
2613 unsafe extern "C" fn(device: nvmlDevice_t, mode: *mut nvmlEnableState_t) -> nvmlReturn_t,
2614 ::libloading::Error,
2615 >,
2616 pub nvmlDeviceGetPciInfoExt: Result<
2617 unsafe extern "C" fn(device: nvmlDevice_t, pci: *mut nvmlPciInfoExt_t) -> nvmlReturn_t,
2618 ::libloading::Error,
2619 >,
2620 pub nvmlDeviceGetPciInfo_v3: Result<
2621 unsafe extern "C" fn(device: nvmlDevice_t, pci: *mut nvmlPciInfo_t) -> nvmlReturn_t,
2622 ::libloading::Error,
2623 >,
2624 pub nvmlDeviceGetMaxPcieLinkGeneration: Result<
2625 unsafe extern "C" fn(device: nvmlDevice_t, maxLinkGen: *mut raw::c_uint) -> nvmlReturn_t,
2626 ::libloading::Error,
2627 >,
2628 pub nvmlDeviceGetGpuMaxPcieLinkGeneration: Result<
2629 unsafe extern "C" fn(
2630 device: nvmlDevice_t,
2631 maxLinkGenDevice: *mut raw::c_uint,
2632 ) -> nvmlReturn_t,
2633 ::libloading::Error,
2634 >,
2635 pub nvmlDeviceGetMaxPcieLinkWidth: Result<
2636 unsafe extern "C" fn(device: nvmlDevice_t, maxLinkWidth: *mut raw::c_uint) -> nvmlReturn_t,
2637 ::libloading::Error,
2638 >,
2639 pub nvmlDeviceGetCurrPcieLinkGeneration: Result<
2640 unsafe extern "C" fn(device: nvmlDevice_t, currLinkGen: *mut raw::c_uint) -> nvmlReturn_t,
2641 ::libloading::Error,
2642 >,
2643 pub nvmlDeviceGetCurrPcieLinkWidth: Result<
2644 unsafe extern "C" fn(device: nvmlDevice_t, currLinkWidth: *mut raw::c_uint) -> nvmlReturn_t,
2645 ::libloading::Error,
2646 >,
2647 pub nvmlDeviceGetPcieThroughput: Result<
2648 unsafe extern "C" fn(
2649 device: nvmlDevice_t,
2650 counter: nvmlPcieUtilCounter_t,
2651 value: *mut raw::c_uint,
2652 ) -> nvmlReturn_t,
2653 ::libloading::Error,
2654 >,
2655 pub nvmlDeviceGetPcieReplayCounter: Result<
2656 unsafe extern "C" fn(device: nvmlDevice_t, value: *mut raw::c_uint) -> nvmlReturn_t,
2657 ::libloading::Error,
2658 >,
2659 pub nvmlDeviceGetClockInfo: Result<
2660 unsafe extern "C" fn(
2661 device: nvmlDevice_t,
2662 type_: nvmlClockType_t,
2663 clock: *mut raw::c_uint,
2664 ) -> nvmlReturn_t,
2665 ::libloading::Error,
2666 >,
2667 pub nvmlDeviceGetMaxClockInfo: Result<
2668 unsafe extern "C" fn(
2669 device: nvmlDevice_t,
2670 type_: nvmlClockType_t,
2671 clock: *mut raw::c_uint,
2672 ) -> nvmlReturn_t,
2673 ::libloading::Error,
2674 >,
2675 pub nvmlDeviceGetGpcClkVfOffset: Result<
2676 unsafe extern "C" fn(device: nvmlDevice_t, offset: *mut raw::c_int) -> nvmlReturn_t,
2677 ::libloading::Error,
2678 >,
2679 pub nvmlDeviceGetApplicationsClock: Result<
2680 unsafe extern "C" fn(
2681 device: nvmlDevice_t,
2682 clockType: nvmlClockType_t,
2683 clockMHz: *mut raw::c_uint,
2684 ) -> nvmlReturn_t,
2685 ::libloading::Error,
2686 >,
2687 pub nvmlDeviceGetDefaultApplicationsClock: Result<
2688 unsafe extern "C" fn(
2689 device: nvmlDevice_t,
2690 clockType: nvmlClockType_t,
2691 clockMHz: *mut raw::c_uint,
2692 ) -> nvmlReturn_t,
2693 ::libloading::Error,
2694 >,
2695 pub nvmlDeviceGetClock: Result<
2696 unsafe extern "C" fn(
2697 device: nvmlDevice_t,
2698 clockType: nvmlClockType_t,
2699 clockId: nvmlClockId_t,
2700 clockMHz: *mut raw::c_uint,
2701 ) -> nvmlReturn_t,
2702 ::libloading::Error,
2703 >,
2704 pub nvmlDeviceGetMaxCustomerBoostClock: Result<
2705 unsafe extern "C" fn(
2706 device: nvmlDevice_t,
2707 clockType: nvmlClockType_t,
2708 clockMHz: *mut raw::c_uint,
2709 ) -> nvmlReturn_t,
2710 ::libloading::Error,
2711 >,
2712 pub nvmlDeviceGetSupportedMemoryClocks: Result<
2713 unsafe extern "C" fn(
2714 device: nvmlDevice_t,
2715 count: *mut raw::c_uint,
2716 clocksMHz: *mut raw::c_uint,
2717 ) -> nvmlReturn_t,
2718 ::libloading::Error,
2719 >,
2720 pub nvmlDeviceGetSupportedGraphicsClocks: Result<
2721 unsafe extern "C" fn(
2722 device: nvmlDevice_t,
2723 memoryClockMHz: raw::c_uint,
2724 count: *mut raw::c_uint,
2725 clocksMHz: *mut raw::c_uint,
2726 ) -> nvmlReturn_t,
2727 ::libloading::Error,
2728 >,
2729 pub nvmlDeviceGetAutoBoostedClocksEnabled: Result<
2730 unsafe extern "C" fn(
2731 device: nvmlDevice_t,
2732 isEnabled: *mut nvmlEnableState_t,
2733 defaultIsEnabled: *mut nvmlEnableState_t,
2734 ) -> nvmlReturn_t,
2735 ::libloading::Error,
2736 >,
2737 pub nvmlDeviceGetFanSpeed: Result<
2738 unsafe extern "C" fn(device: nvmlDevice_t, speed: *mut raw::c_uint) -> nvmlReturn_t,
2739 ::libloading::Error,
2740 >,
2741 pub nvmlDeviceGetFanSpeed_v2: Result<
2742 unsafe extern "C" fn(
2743 device: nvmlDevice_t,
2744 fan: raw::c_uint,
2745 speed: *mut raw::c_uint,
2746 ) -> nvmlReturn_t,
2747 ::libloading::Error,
2748 >,
2749 pub nvmlDeviceGetFanSpeedRPM: Result<
2750 unsafe extern "C" fn(
2751 device: nvmlDevice_t,
2752 fanSpeed: *mut nvmlFanSpeedInfo_t,
2753 ) -> nvmlReturn_t,
2754 ::libloading::Error,
2755 >,
2756 pub nvmlDeviceGetTargetFanSpeed: Result<
2757 unsafe extern "C" fn(
2758 device: nvmlDevice_t,
2759 fan: raw::c_uint,
2760 targetSpeed: *mut raw::c_uint,
2761 ) -> nvmlReturn_t,
2762 ::libloading::Error,
2763 >,
2764 pub nvmlDeviceGetMinMaxFanSpeed: Result<
2765 unsafe extern "C" fn(
2766 device: nvmlDevice_t,
2767 minSpeed: *mut raw::c_uint,
2768 maxSpeed: *mut raw::c_uint,
2769 ) -> nvmlReturn_t,
2770 ::libloading::Error,
2771 >,
2772 pub nvmlDeviceGetFanControlPolicy_v2: Result<
2773 unsafe extern "C" fn(
2774 device: nvmlDevice_t,
2775 fan: raw::c_uint,
2776 policy: *mut nvmlFanControlPolicy_t,
2777 ) -> nvmlReturn_t,
2778 ::libloading::Error,
2779 >,
2780 pub nvmlDeviceGetNumFans: Result<
2781 unsafe extern "C" fn(device: nvmlDevice_t, numFans: *mut raw::c_uint) -> nvmlReturn_t,
2782 ::libloading::Error,
2783 >,
2784 pub nvmlDeviceGetTemperature: Result<
2785 unsafe extern "C" fn(
2786 device: nvmlDevice_t,
2787 sensorType: nvmlTemperatureSensors_t,
2788 temp: *mut raw::c_uint,
2789 ) -> nvmlReturn_t,
2790 ::libloading::Error,
2791 >,
2792 pub nvmlDeviceGetCoolerInfo: Result<
2793 unsafe extern "C" fn(
2794 device: nvmlDevice_t,
2795 coolerInfo: *mut nvmlCoolerInfo_t,
2796 ) -> nvmlReturn_t,
2797 ::libloading::Error,
2798 >,
2799 pub nvmlDeviceGetTemperatureV: Result<
2800 unsafe extern "C" fn(
2801 device: nvmlDevice_t,
2802 temperature: *mut nvmlTemperature_t,
2803 ) -> nvmlReturn_t,
2804 ::libloading::Error,
2805 >,
2806 pub nvmlDeviceGetTemperatureThreshold: Result<
2807 unsafe extern "C" fn(
2808 device: nvmlDevice_t,
2809 thresholdType: nvmlTemperatureThresholds_t,
2810 temp: *mut raw::c_uint,
2811 ) -> nvmlReturn_t,
2812 ::libloading::Error,
2813 >,
2814 pub nvmlDeviceGetMarginTemperature: Result<
2815 unsafe extern "C" fn(
2816 device: nvmlDevice_t,
2817 marginTempInfo: *mut nvmlMarginTemperature_t,
2818 ) -> nvmlReturn_t,
2819 ::libloading::Error,
2820 >,
2821 pub nvmlDeviceGetThermalSettings: Result<
2822 unsafe extern "C" fn(
2823 device: nvmlDevice_t,
2824 sensorIndex: raw::c_uint,
2825 pThermalSettings: *mut nvmlGpuThermalSettings_t,
2826 ) -> nvmlReturn_t,
2827 ::libloading::Error,
2828 >,
2829 pub nvmlDeviceGetPerformanceState: Result<
2830 unsafe extern "C" fn(device: nvmlDevice_t, pState: *mut nvmlPstates_t) -> nvmlReturn_t,
2831 ::libloading::Error,
2832 >,
2833 pub nvmlDeviceGetCurrentClocksEventReasons: Result<
2834 unsafe extern "C" fn(
2835 device: nvmlDevice_t,
2836 clocksEventReasons: *mut raw::c_ulonglong,
2837 ) -> nvmlReturn_t,
2838 ::libloading::Error,
2839 >,
2840 pub nvmlDeviceGetCurrentClocksThrottleReasons: Result<
2841 unsafe extern "C" fn(
2842 device: nvmlDevice_t,
2843 clocksThrottleReasons: *mut raw::c_ulonglong,
2844 ) -> nvmlReturn_t,
2845 ::libloading::Error,
2846 >,
2847 pub nvmlDeviceGetSupportedClocksEventReasons: Result<
2848 unsafe extern "C" fn(
2849 device: nvmlDevice_t,
2850 supportedClocksEventReasons: *mut raw::c_ulonglong,
2851 ) -> nvmlReturn_t,
2852 ::libloading::Error,
2853 >,
2854 pub nvmlDeviceGetSupportedClocksThrottleReasons: Result<
2855 unsafe extern "C" fn(
2856 device: nvmlDevice_t,
2857 supportedClocksThrottleReasons: *mut raw::c_ulonglong,
2858 ) -> nvmlReturn_t,
2859 ::libloading::Error,
2860 >,
2861 pub nvmlDeviceGetPowerState: Result<
2862 unsafe extern "C" fn(device: nvmlDevice_t, pState: *mut nvmlPstates_t) -> nvmlReturn_t,
2863 ::libloading::Error,
2864 >,
2865 pub nvmlDeviceGetDynamicPstatesInfo: Result<
2866 unsafe extern "C" fn(
2867 device: nvmlDevice_t,
2868 pDynamicPstatesInfo: *mut nvmlGpuDynamicPstatesInfo_t,
2869 ) -> nvmlReturn_t,
2870 ::libloading::Error,
2871 >,
2872 pub nvmlDeviceGetMemClkVfOffset: Result<
2873 unsafe extern "C" fn(device: nvmlDevice_t, offset: *mut raw::c_int) -> nvmlReturn_t,
2874 ::libloading::Error,
2875 >,
2876 pub nvmlDeviceGetMinMaxClockOfPState: Result<
2877 unsafe extern "C" fn(
2878 device: nvmlDevice_t,
2879 type_: nvmlClockType_t,
2880 pstate: nvmlPstates_t,
2881 minClockMHz: *mut raw::c_uint,
2882 maxClockMHz: *mut raw::c_uint,
2883 ) -> nvmlReturn_t,
2884 ::libloading::Error,
2885 >,
2886 pub nvmlDeviceGetSupportedPerformanceStates: Result<
2887 unsafe extern "C" fn(
2888 device: nvmlDevice_t,
2889 pstates: *mut nvmlPstates_t,
2890 size: raw::c_uint,
2891 ) -> nvmlReturn_t,
2892 ::libloading::Error,
2893 >,
2894 pub nvmlDeviceGetGpcClkMinMaxVfOffset: Result<
2895 unsafe extern "C" fn(
2896 device: nvmlDevice_t,
2897 minOffset: *mut raw::c_int,
2898 maxOffset: *mut raw::c_int,
2899 ) -> nvmlReturn_t,
2900 ::libloading::Error,
2901 >,
2902 pub nvmlDeviceGetMemClkMinMaxVfOffset: Result<
2903 unsafe extern "C" fn(
2904 device: nvmlDevice_t,
2905 minOffset: *mut raw::c_int,
2906 maxOffset: *mut raw::c_int,
2907 ) -> nvmlReturn_t,
2908 ::libloading::Error,
2909 >,
2910 pub nvmlDeviceGetClockOffsets: Result<
2911 unsafe extern "C" fn(device: nvmlDevice_t, info: *mut nvmlClockOffset_t) -> nvmlReturn_t,
2912 ::libloading::Error,
2913 >,
2914 pub nvmlDeviceSetClockOffsets: Result<
2915 unsafe extern "C" fn(device: nvmlDevice_t, info: *mut nvmlClockOffset_t) -> nvmlReturn_t,
2916 ::libloading::Error,
2917 >,
2918 pub nvmlDeviceGetPerformanceModes: Result<
2919 unsafe extern "C" fn(
2920 device: nvmlDevice_t,
2921 perfModes: *mut nvmlDevicePerfModes_t,
2922 ) -> nvmlReturn_t,
2923 ::libloading::Error,
2924 >,
2925 pub nvmlDeviceGetCurrentClockFreqs: Result<
2926 unsafe extern "C" fn(
2927 device: nvmlDevice_t,
2928 currentClockFreqs: *mut nvmlDeviceCurrentClockFreqs_t,
2929 ) -> nvmlReturn_t,
2930 ::libloading::Error,
2931 >,
2932 pub nvmlDeviceGetPowerManagementMode: Result<
2933 unsafe extern "C" fn(device: nvmlDevice_t, mode: *mut nvmlEnableState_t) -> nvmlReturn_t,
2934 ::libloading::Error,
2935 >,
2936 pub nvmlDeviceGetPowerManagementLimit: Result<
2937 unsafe extern "C" fn(device: nvmlDevice_t, limit: *mut raw::c_uint) -> nvmlReturn_t,
2938 ::libloading::Error,
2939 >,
2940 pub nvmlDeviceGetPowerManagementLimitConstraints: Result<
2941 unsafe extern "C" fn(
2942 device: nvmlDevice_t,
2943 minLimit: *mut raw::c_uint,
2944 maxLimit: *mut raw::c_uint,
2945 ) -> nvmlReturn_t,
2946 ::libloading::Error,
2947 >,
2948 pub nvmlDeviceGetPowerManagementDefaultLimit: Result<
2949 unsafe extern "C" fn(device: nvmlDevice_t, defaultLimit: *mut raw::c_uint) -> nvmlReturn_t,
2950 ::libloading::Error,
2951 >,
2952 pub nvmlDeviceGetPowerUsage: Result<
2953 unsafe extern "C" fn(device: nvmlDevice_t, power: *mut raw::c_uint) -> nvmlReturn_t,
2954 ::libloading::Error,
2955 >,
2956 pub nvmlDeviceGetTotalEnergyConsumption: Result<
2957 unsafe extern "C" fn(device: nvmlDevice_t, energy: *mut raw::c_ulonglong) -> nvmlReturn_t,
2958 ::libloading::Error,
2959 >,
2960 pub nvmlDeviceGetEnforcedPowerLimit: Result<
2961 unsafe extern "C" fn(device: nvmlDevice_t, limit: *mut raw::c_uint) -> nvmlReturn_t,
2962 ::libloading::Error,
2963 >,
2964 pub nvmlDeviceGetGpuOperationMode: Result<
2965 unsafe extern "C" fn(
2966 device: nvmlDevice_t,
2967 current: *mut nvmlGpuOperationMode_t,
2968 pending: *mut nvmlGpuOperationMode_t,
2969 ) -> nvmlReturn_t,
2970 ::libloading::Error,
2971 >,
2972 pub nvmlDeviceGetMemoryInfo: Result<
2973 unsafe extern "C" fn(device: nvmlDevice_t, memory: *mut nvmlMemory_t) -> nvmlReturn_t,
2974 ::libloading::Error,
2975 >,
2976 pub nvmlDeviceGetMemoryInfo_v2: Result<
2977 unsafe extern "C" fn(device: nvmlDevice_t, memory: *mut nvmlMemory_v2_t) -> nvmlReturn_t,
2978 ::libloading::Error,
2979 >,
2980 pub nvmlDeviceGetComputeMode: Result<
2981 unsafe extern "C" fn(device: nvmlDevice_t, mode: *mut nvmlComputeMode_t) -> nvmlReturn_t,
2982 ::libloading::Error,
2983 >,
2984 pub nvmlDeviceGetCudaComputeCapability: Result<
2985 unsafe extern "C" fn(
2986 device: nvmlDevice_t,
2987 major: *mut raw::c_int,
2988 minor: *mut raw::c_int,
2989 ) -> nvmlReturn_t,
2990 ::libloading::Error,
2991 >,
2992 pub nvmlDeviceGetDramEncryptionMode: Result<
2993 unsafe extern "C" fn(
2994 device: nvmlDevice_t,
2995 current: *mut nvmlDramEncryptionInfo_t,
2996 pending: *mut nvmlDramEncryptionInfo_t,
2997 ) -> nvmlReturn_t,
2998 ::libloading::Error,
2999 >,
3000 pub nvmlDeviceSetDramEncryptionMode: Result<
3001 unsafe extern "C" fn(
3002 device: nvmlDevice_t,
3003 dramEncryption: *const nvmlDramEncryptionInfo_t,
3004 ) -> nvmlReturn_t,
3005 ::libloading::Error,
3006 >,
3007 pub nvmlDeviceGetEccMode: Result<
3008 unsafe extern "C" fn(
3009 device: nvmlDevice_t,
3010 current: *mut nvmlEnableState_t,
3011 pending: *mut nvmlEnableState_t,
3012 ) -> nvmlReturn_t,
3013 ::libloading::Error,
3014 >,
3015 pub nvmlDeviceGetDefaultEccMode: Result<
3016 unsafe extern "C" fn(
3017 device: nvmlDevice_t,
3018 defaultMode: *mut nvmlEnableState_t,
3019 ) -> nvmlReturn_t,
3020 ::libloading::Error,
3021 >,
3022 pub nvmlDeviceGetBoardId: Result<
3023 unsafe extern "C" fn(device: nvmlDevice_t, boardId: *mut raw::c_uint) -> nvmlReturn_t,
3024 ::libloading::Error,
3025 >,
3026 pub nvmlDeviceGetMultiGpuBoard: Result<
3027 unsafe extern "C" fn(device: nvmlDevice_t, multiGpuBool: *mut raw::c_uint) -> nvmlReturn_t,
3028 ::libloading::Error,
3029 >,
3030 pub nvmlDeviceGetTotalEccErrors: Result<
3031 unsafe extern "C" fn(
3032 device: nvmlDevice_t,
3033 errorType: nvmlMemoryErrorType_t,
3034 counterType: nvmlEccCounterType_t,
3035 eccCounts: *mut raw::c_ulonglong,
3036 ) -> nvmlReturn_t,
3037 ::libloading::Error,
3038 >,
3039 pub nvmlDeviceGetDetailedEccErrors: Result<
3040 unsafe extern "C" fn(
3041 device: nvmlDevice_t,
3042 errorType: nvmlMemoryErrorType_t,
3043 counterType: nvmlEccCounterType_t,
3044 eccCounts: *mut nvmlEccErrorCounts_t,
3045 ) -> nvmlReturn_t,
3046 ::libloading::Error,
3047 >,
3048 pub nvmlDeviceGetMemoryErrorCounter: Result<
3049 unsafe extern "C" fn(
3050 device: nvmlDevice_t,
3051 errorType: nvmlMemoryErrorType_t,
3052 counterType: nvmlEccCounterType_t,
3053 locationType: nvmlMemoryLocation_t,
3054 count: *mut raw::c_ulonglong,
3055 ) -> nvmlReturn_t,
3056 ::libloading::Error,
3057 >,
3058 pub nvmlDeviceGetUtilizationRates: Result<
3059 unsafe extern "C" fn(
3060 device: nvmlDevice_t,
3061 utilization: *mut nvmlUtilization_t,
3062 ) -> nvmlReturn_t,
3063 ::libloading::Error,
3064 >,
3065 pub nvmlDeviceGetEncoderUtilization: Result<
3066 unsafe extern "C" fn(
3067 device: nvmlDevice_t,
3068 utilization: *mut raw::c_uint,
3069 samplingPeriodUs: *mut raw::c_uint,
3070 ) -> nvmlReturn_t,
3071 ::libloading::Error,
3072 >,
3073 pub nvmlDeviceGetEncoderCapacity: Result<
3074 unsafe extern "C" fn(
3075 device: nvmlDevice_t,
3076 encoderQueryType: nvmlEncoderType_t,
3077 encoderCapacity: *mut raw::c_uint,
3078 ) -> nvmlReturn_t,
3079 ::libloading::Error,
3080 >,
3081 pub nvmlDeviceGetEncoderStats: Result<
3082 unsafe extern "C" fn(
3083 device: nvmlDevice_t,
3084 sessionCount: *mut raw::c_uint,
3085 averageFps: *mut raw::c_uint,
3086 averageLatency: *mut raw::c_uint,
3087 ) -> nvmlReturn_t,
3088 ::libloading::Error,
3089 >,
3090 pub nvmlDeviceGetEncoderSessions: Result<
3091 unsafe extern "C" fn(
3092 device: nvmlDevice_t,
3093 sessionCount: *mut raw::c_uint,
3094 sessionInfos: *mut nvmlEncoderSessionInfo_t,
3095 ) -> nvmlReturn_t,
3096 ::libloading::Error,
3097 >,
3098 pub nvmlDeviceGetDecoderUtilization: Result<
3099 unsafe extern "C" fn(
3100 device: nvmlDevice_t,
3101 utilization: *mut raw::c_uint,
3102 samplingPeriodUs: *mut raw::c_uint,
3103 ) -> nvmlReturn_t,
3104 ::libloading::Error,
3105 >,
3106 pub nvmlDeviceGetJpgUtilization: Result<
3107 unsafe extern "C" fn(
3108 device: nvmlDevice_t,
3109 utilization: *mut raw::c_uint,
3110 samplingPeriodUs: *mut raw::c_uint,
3111 ) -> nvmlReturn_t,
3112 ::libloading::Error,
3113 >,
3114 pub nvmlDeviceGetOfaUtilization: Result<
3115 unsafe extern "C" fn(
3116 device: nvmlDevice_t,
3117 utilization: *mut raw::c_uint,
3118 samplingPeriodUs: *mut raw::c_uint,
3119 ) -> nvmlReturn_t,
3120 ::libloading::Error,
3121 >,
3122 pub nvmlDeviceGetFBCStats: Result<
3123 unsafe extern "C" fn(device: nvmlDevice_t, fbcStats: *mut nvmlFBCStats_t) -> nvmlReturn_t,
3124 ::libloading::Error,
3125 >,
3126 pub nvmlDeviceGetFBCSessions: Result<
3127 unsafe extern "C" fn(
3128 device: nvmlDevice_t,
3129 sessionCount: *mut raw::c_uint,
3130 sessionInfo: *mut nvmlFBCSessionInfo_t,
3131 ) -> nvmlReturn_t,
3132 ::libloading::Error,
3133 >,
3134 pub nvmlDeviceGetDriverModel_v2: Result<
3135 unsafe extern "C" fn(
3136 device: nvmlDevice_t,
3137 current: *mut nvmlDriverModel_t,
3138 pending: *mut nvmlDriverModel_t,
3139 ) -> nvmlReturn_t,
3140 ::libloading::Error,
3141 >,
3142 pub nvmlDeviceGetVbiosVersion: Result<
3143 unsafe extern "C" fn(
3144 device: nvmlDevice_t,
3145 version: *mut raw::c_char,
3146 length: raw::c_uint,
3147 ) -> nvmlReturn_t,
3148 ::libloading::Error,
3149 >,
3150 pub nvmlDeviceGetBridgeChipInfo: Result<
3151 unsafe extern "C" fn(
3152 device: nvmlDevice_t,
3153 bridgeHierarchy: *mut nvmlBridgeChipHierarchy_t,
3154 ) -> nvmlReturn_t,
3155 ::libloading::Error,
3156 >,
3157 pub nvmlDeviceGetComputeRunningProcesses_v3: Result<
3158 unsafe extern "C" fn(
3159 device: nvmlDevice_t,
3160 infoCount: *mut raw::c_uint,
3161 infos: *mut nvmlProcessInfo_t,
3162 ) -> nvmlReturn_t,
3163 ::libloading::Error,
3164 >,
3165 pub nvmlDeviceGetGraphicsRunningProcesses_v3: Result<
3166 unsafe extern "C" fn(
3167 device: nvmlDevice_t,
3168 infoCount: *mut raw::c_uint,
3169 infos: *mut nvmlProcessInfo_t,
3170 ) -> nvmlReturn_t,
3171 ::libloading::Error,
3172 >,
3173 pub nvmlDeviceGetMPSComputeRunningProcesses_v3: Result<
3174 unsafe extern "C" fn(
3175 device: nvmlDevice_t,
3176 infoCount: *mut raw::c_uint,
3177 infos: *mut nvmlProcessInfo_t,
3178 ) -> nvmlReturn_t,
3179 ::libloading::Error,
3180 >,
3181 pub nvmlDeviceGetRunningProcessDetailList: Result<
3182 unsafe extern "C" fn(
3183 device: nvmlDevice_t,
3184 plist: *mut nvmlProcessDetailList_t,
3185 ) -> nvmlReturn_t,
3186 ::libloading::Error,
3187 >,
3188 pub nvmlDeviceOnSameBoard: Result<
3189 unsafe extern "C" fn(
3190 device1: nvmlDevice_t,
3191 device2: nvmlDevice_t,
3192 onSameBoard: *mut raw::c_int,
3193 ) -> nvmlReturn_t,
3194 ::libloading::Error,
3195 >,
3196 pub nvmlDeviceGetAPIRestriction: Result<
3197 unsafe extern "C" fn(
3198 device: nvmlDevice_t,
3199 apiType: nvmlRestrictedAPI_t,
3200 isRestricted: *mut nvmlEnableState_t,
3201 ) -> nvmlReturn_t,
3202 ::libloading::Error,
3203 >,
3204 pub nvmlDeviceGetSamples: Result<
3205 unsafe extern "C" fn(
3206 device: nvmlDevice_t,
3207 type_: nvmlSamplingType_t,
3208 lastSeenTimeStamp: raw::c_ulonglong,
3209 sampleValType: *mut nvmlValueType_t,
3210 sampleCount: *mut raw::c_uint,
3211 samples: *mut nvmlSample_t,
3212 ) -> nvmlReturn_t,
3213 ::libloading::Error,
3214 >,
3215 pub nvmlDeviceGetBAR1MemoryInfo: Result<
3216 unsafe extern "C" fn(
3217 device: nvmlDevice_t,
3218 bar1Memory: *mut nvmlBAR1Memory_t,
3219 ) -> nvmlReturn_t,
3220 ::libloading::Error,
3221 >,
3222 pub nvmlDeviceGetViolationStatus: Result<
3223 unsafe extern "C" fn(
3224 device: nvmlDevice_t,
3225 perfPolicyType: nvmlPerfPolicyType_t,
3226 violTime: *mut nvmlViolationTime_t,
3227 ) -> nvmlReturn_t,
3228 ::libloading::Error,
3229 >,
3230 pub nvmlDeviceGetIrqNum: Result<
3231 unsafe extern "C" fn(device: nvmlDevice_t, irqNum: *mut raw::c_uint) -> nvmlReturn_t,
3232 ::libloading::Error,
3233 >,
3234 pub nvmlDeviceGetNumGpuCores: Result<
3235 unsafe extern "C" fn(device: nvmlDevice_t, numCores: *mut raw::c_uint) -> nvmlReturn_t,
3236 ::libloading::Error,
3237 >,
3238 pub nvmlDeviceGetPowerSource: Result<
3239 unsafe extern "C" fn(
3240 device: nvmlDevice_t,
3241 powerSource: *mut nvmlPowerSource_t,
3242 ) -> nvmlReturn_t,
3243 ::libloading::Error,
3244 >,
3245 pub nvmlDeviceGetMemoryBusWidth: Result<
3246 unsafe extern "C" fn(device: nvmlDevice_t, busWidth: *mut raw::c_uint) -> nvmlReturn_t,
3247 ::libloading::Error,
3248 >,
3249 pub nvmlDeviceGetPcieLinkMaxSpeed: Result<
3250 unsafe extern "C" fn(device: nvmlDevice_t, maxSpeed: *mut raw::c_uint) -> nvmlReturn_t,
3251 ::libloading::Error,
3252 >,
3253 pub nvmlDeviceGetPcieSpeed: Result<
3254 unsafe extern "C" fn(device: nvmlDevice_t, pcieSpeed: *mut raw::c_uint) -> nvmlReturn_t,
3255 ::libloading::Error,
3256 >,
3257 pub nvmlDeviceGetAdaptiveClockInfoStatus: Result<
3258 unsafe extern "C" fn(
3259 device: nvmlDevice_t,
3260 adaptiveClockStatus: *mut raw::c_uint,
3261 ) -> nvmlReturn_t,
3262 ::libloading::Error,
3263 >,
3264 pub nvmlDeviceGetBusType: Result<
3265 unsafe extern "C" fn(device: nvmlDevice_t, type_: *mut nvmlBusType_t) -> nvmlReturn_t,
3266 ::libloading::Error,
3267 >,
3268 pub nvmlDeviceGetGpuFabricInfo: Result<
3269 unsafe extern "C" fn(
3270 device: nvmlDevice_t,
3271 gpuFabricInfo: *mut nvmlGpuFabricInfo_t,
3272 ) -> nvmlReturn_t,
3273 ::libloading::Error,
3274 >,
3275 pub nvmlDeviceGetGpuFabricInfoV: Result<
3276 unsafe extern "C" fn(
3277 device: nvmlDevice_t,
3278 gpuFabricInfo: *mut nvmlGpuFabricInfoV_t,
3279 ) -> nvmlReturn_t,
3280 ::libloading::Error,
3281 >,
3282 pub nvmlSystemGetConfComputeCapabilities: Result<
3283 unsafe extern "C" fn(capabilities: *mut nvmlConfComputeSystemCaps_t) -> nvmlReturn_t,
3284 ::libloading::Error,
3285 >,
3286 pub nvmlSystemGetConfComputeState: Result<
3287 unsafe extern "C" fn(state: *mut nvmlConfComputeSystemState_t) -> nvmlReturn_t,
3288 ::libloading::Error,
3289 >,
3290 pub nvmlDeviceGetConfComputeMemSizeInfo: Result<
3291 unsafe extern "C" fn(
3292 device: nvmlDevice_t,
3293 memInfo: *mut nvmlConfComputeMemSizeInfo_t,
3294 ) -> nvmlReturn_t,
3295 ::libloading::Error,
3296 >,
3297 pub nvmlSystemGetConfComputeGpusReadyState: Result<
3298 unsafe extern "C" fn(isAcceptingWork: *mut raw::c_uint) -> nvmlReturn_t,
3299 ::libloading::Error,
3300 >,
3301 pub nvmlDeviceGetConfComputeProtectedMemoryUsage: Result<
3302 unsafe extern "C" fn(device: nvmlDevice_t, memory: *mut nvmlMemory_t) -> nvmlReturn_t,
3303 ::libloading::Error,
3304 >,
3305 pub nvmlDeviceGetConfComputeGpuCertificate: Result<
3306 unsafe extern "C" fn(
3307 device: nvmlDevice_t,
3308 gpuCert: *mut nvmlConfComputeGpuCertificate_t,
3309 ) -> nvmlReturn_t,
3310 ::libloading::Error,
3311 >,
3312 pub nvmlDeviceGetConfComputeGpuAttestationReport: Result<
3313 unsafe extern "C" fn(
3314 device: nvmlDevice_t,
3315 gpuAtstReport: *mut nvmlConfComputeGpuAttestationReport_t,
3316 ) -> nvmlReturn_t,
3317 ::libloading::Error,
3318 >,
3319 pub nvmlSystemGetConfComputeKeyRotationThresholdInfo: Result<
3320 unsafe extern "C" fn(
3321 pKeyRotationThrInfo: *mut nvmlConfComputeGetKeyRotationThresholdInfo_t,
3322 ) -> nvmlReturn_t,
3323 ::libloading::Error,
3324 >,
3325 pub nvmlDeviceSetConfComputeUnprotectedMemSize: Result<
3326 unsafe extern "C" fn(device: nvmlDevice_t, sizeKiB: raw::c_ulonglong) -> nvmlReturn_t,
3327 ::libloading::Error,
3328 >,
3329 pub nvmlSystemSetConfComputeGpusReadyState: Result<
3330 unsafe extern "C" fn(isAcceptingWork: raw::c_uint) -> nvmlReturn_t,
3331 ::libloading::Error,
3332 >,
3333 pub nvmlSystemSetConfComputeKeyRotationThresholdInfo: Result<
3334 unsafe extern "C" fn(
3335 pKeyRotationThrInfo: *mut nvmlConfComputeSetKeyRotationThresholdInfo_t,
3336 ) -> nvmlReturn_t,
3337 ::libloading::Error,
3338 >,
3339 pub nvmlSystemGetConfComputeSettings: Result<
3340 unsafe extern "C" fn(settings: *mut nvmlSystemConfComputeSettings_t) -> nvmlReturn_t,
3341 ::libloading::Error,
3342 >,
3343 pub nvmlDeviceGetGspFirmwareVersion: Result<
3344 unsafe extern "C" fn(device: nvmlDevice_t, version: *mut raw::c_char) -> nvmlReturn_t,
3345 ::libloading::Error,
3346 >,
3347 pub nvmlDeviceGetGspFirmwareMode: Result<
3348 unsafe extern "C" fn(
3349 device: nvmlDevice_t,
3350 isEnabled: *mut raw::c_uint,
3351 defaultMode: *mut raw::c_uint,
3352 ) -> nvmlReturn_t,
3353 ::libloading::Error,
3354 >,
3355 pub nvmlDeviceGetSramEccErrorStatus: Result<
3356 unsafe extern "C" fn(
3357 device: nvmlDevice_t,
3358 status: *mut nvmlEccSramErrorStatus_t,
3359 ) -> nvmlReturn_t,
3360 ::libloading::Error,
3361 >,
3362 pub nvmlDeviceGetAccountingMode: Result<
3363 unsafe extern "C" fn(device: nvmlDevice_t, mode: *mut nvmlEnableState_t) -> nvmlReturn_t,
3364 ::libloading::Error,
3365 >,
3366 pub nvmlDeviceGetAccountingStats: Result<
3367 unsafe extern "C" fn(
3368 device: nvmlDevice_t,
3369 pid: raw::c_uint,
3370 stats: *mut nvmlAccountingStats_t,
3371 ) -> nvmlReturn_t,
3372 ::libloading::Error,
3373 >,
3374 pub nvmlDeviceGetAccountingPids: Result<
3375 unsafe extern "C" fn(
3376 device: nvmlDevice_t,
3377 count: *mut raw::c_uint,
3378 pids: *mut raw::c_uint,
3379 ) -> nvmlReturn_t,
3380 ::libloading::Error,
3381 >,
3382 pub nvmlDeviceGetAccountingBufferSize: Result<
3383 unsafe extern "C" fn(device: nvmlDevice_t, bufferSize: *mut raw::c_uint) -> nvmlReturn_t,
3384 ::libloading::Error,
3385 >,
3386 pub nvmlDeviceGetRetiredPages: Result<
3387 unsafe extern "C" fn(
3388 device: nvmlDevice_t,
3389 cause: nvmlPageRetirementCause_t,
3390 pageCount: *mut raw::c_uint,
3391 addresses: *mut raw::c_ulonglong,
3392 ) -> nvmlReturn_t,
3393 ::libloading::Error,
3394 >,
3395 pub nvmlDeviceGetRetiredPages_v2: Result<
3396 unsafe extern "C" fn(
3397 device: nvmlDevice_t,
3398 cause: nvmlPageRetirementCause_t,
3399 pageCount: *mut raw::c_uint,
3400 addresses: *mut raw::c_ulonglong,
3401 timestamps: *mut raw::c_ulonglong,
3402 ) -> nvmlReturn_t,
3403 ::libloading::Error,
3404 >,
3405 pub nvmlDeviceGetRetiredPagesPendingStatus: Result<
3406 unsafe extern "C" fn(
3407 device: nvmlDevice_t,
3408 isPending: *mut nvmlEnableState_t,
3409 ) -> nvmlReturn_t,
3410 ::libloading::Error,
3411 >,
3412 pub nvmlDeviceGetRemappedRows: Result<
3413 unsafe extern "C" fn(
3414 device: nvmlDevice_t,
3415 corrRows: *mut raw::c_uint,
3416 uncRows: *mut raw::c_uint,
3417 isPending: *mut raw::c_uint,
3418 failureOccurred: *mut raw::c_uint,
3419 ) -> nvmlReturn_t,
3420 ::libloading::Error,
3421 >,
3422 pub nvmlDeviceGetRowRemapperHistogram: Result<
3423 unsafe extern "C" fn(
3424 device: nvmlDevice_t,
3425 values: *mut nvmlRowRemapperHistogramValues_t,
3426 ) -> nvmlReturn_t,
3427 ::libloading::Error,
3428 >,
3429 pub nvmlDeviceGetArchitecture: Result<
3430 unsafe extern "C" fn(
3431 device: nvmlDevice_t,
3432 arch: *mut nvmlDeviceArchitecture_t,
3433 ) -> nvmlReturn_t,
3434 ::libloading::Error,
3435 >,
3436 pub nvmlDeviceGetClkMonStatus: Result<
3437 unsafe extern "C" fn(device: nvmlDevice_t, status: *mut nvmlClkMonStatus_t) -> nvmlReturn_t,
3438 ::libloading::Error,
3439 >,
3440 pub nvmlDeviceGetProcessUtilization: Result<
3441 unsafe extern "C" fn(
3442 device: nvmlDevice_t,
3443 utilization: *mut nvmlProcessUtilizationSample_t,
3444 processSamplesCount: *mut raw::c_uint,
3445 lastSeenTimeStamp: raw::c_ulonglong,
3446 ) -> nvmlReturn_t,
3447 ::libloading::Error,
3448 >,
3449 pub nvmlDeviceGetProcessesUtilizationInfo: Result<
3450 unsafe extern "C" fn(
3451 device: nvmlDevice_t,
3452 procesesUtilInfo: *mut nvmlProcessesUtilizationInfo_t,
3453 ) -> nvmlReturn_t,
3454 ::libloading::Error,
3455 >,
3456 pub nvmlDeviceGetPlatformInfo: Result<
3457 unsafe extern "C" fn(
3458 device: nvmlDevice_t,
3459 platformInfo: *mut nvmlPlatformInfo_t,
3460 ) -> nvmlReturn_t,
3461 ::libloading::Error,
3462 >,
3463 pub nvmlUnitSetLedState: Result<
3464 unsafe extern "C" fn(unit: nvmlUnit_t, color: nvmlLedColor_t) -> nvmlReturn_t,
3465 ::libloading::Error,
3466 >,
3467 pub nvmlDeviceSetPersistenceMode: Result<
3468 unsafe extern "C" fn(device: nvmlDevice_t, mode: nvmlEnableState_t) -> nvmlReturn_t,
3469 ::libloading::Error,
3470 >,
3471 pub nvmlDeviceSetComputeMode: Result<
3472 unsafe extern "C" fn(device: nvmlDevice_t, mode: nvmlComputeMode_t) -> nvmlReturn_t,
3473 ::libloading::Error,
3474 >,
3475 pub nvmlDeviceSetEccMode: Result<
3476 unsafe extern "C" fn(device: nvmlDevice_t, ecc: nvmlEnableState_t) -> nvmlReturn_t,
3477 ::libloading::Error,
3478 >,
3479 pub nvmlDeviceClearEccErrorCounts: Result<
3480 unsafe extern "C" fn(
3481 device: nvmlDevice_t,
3482 counterType: nvmlEccCounterType_t,
3483 ) -> nvmlReturn_t,
3484 ::libloading::Error,
3485 >,
3486 pub nvmlDeviceSetDriverModel: Result<
3487 unsafe extern "C" fn(
3488 device: nvmlDevice_t,
3489 driverModel: nvmlDriverModel_t,
3490 flags: raw::c_uint,
3491 ) -> nvmlReturn_t,
3492 ::libloading::Error,
3493 >,
3494 pub nvmlDeviceSetGpuLockedClocks: Result<
3495 unsafe extern "C" fn(
3496 device: nvmlDevice_t,
3497 minGpuClockMHz: raw::c_uint,
3498 maxGpuClockMHz: raw::c_uint,
3499 ) -> nvmlReturn_t,
3500 ::libloading::Error,
3501 >,
3502 pub nvmlDeviceResetGpuLockedClocks:
3503 Result<unsafe extern "C" fn(device: nvmlDevice_t) -> nvmlReturn_t, ::libloading::Error>,
3504 pub nvmlDeviceSetMemoryLockedClocks: Result<
3505 unsafe extern "C" fn(
3506 device: nvmlDevice_t,
3507 minMemClockMHz: raw::c_uint,
3508 maxMemClockMHz: raw::c_uint,
3509 ) -> nvmlReturn_t,
3510 ::libloading::Error,
3511 >,
3512 pub nvmlDeviceResetMemoryLockedClocks:
3513 Result<unsafe extern "C" fn(device: nvmlDevice_t) -> nvmlReturn_t, ::libloading::Error>,
3514 pub nvmlDeviceSetApplicationsClocks: Result<
3515 unsafe extern "C" fn(
3516 device: nvmlDevice_t,
3517 memClockMHz: raw::c_uint,
3518 graphicsClockMHz: raw::c_uint,
3519 ) -> nvmlReturn_t,
3520 ::libloading::Error,
3521 >,
3522 pub nvmlDeviceResetApplicationsClocks:
3523 Result<unsafe extern "C" fn(device: nvmlDevice_t) -> nvmlReturn_t, ::libloading::Error>,
3524 pub nvmlDeviceSetAutoBoostedClocksEnabled: Result<
3525 unsafe extern "C" fn(device: nvmlDevice_t, enabled: nvmlEnableState_t) -> nvmlReturn_t,
3526 ::libloading::Error,
3527 >,
3528 pub nvmlDeviceSetDefaultAutoBoostedClocksEnabled: Result<
3529 unsafe extern "C" fn(
3530 device: nvmlDevice_t,
3531 enabled: nvmlEnableState_t,
3532 flags: raw::c_uint,
3533 ) -> nvmlReturn_t,
3534 ::libloading::Error,
3535 >,
3536 pub nvmlDeviceSetDefaultFanSpeed_v2: Result<
3537 unsafe extern "C" fn(device: nvmlDevice_t, fan: raw::c_uint) -> nvmlReturn_t,
3538 ::libloading::Error,
3539 >,
3540 pub nvmlDeviceSetFanControlPolicy: Result<
3541 unsafe extern "C" fn(
3542 device: nvmlDevice_t,
3543 fan: raw::c_uint,
3544 policy: nvmlFanControlPolicy_t,
3545 ) -> nvmlReturn_t,
3546 ::libloading::Error,
3547 >,
3548 pub nvmlDeviceSetTemperatureThreshold: Result<
3549 unsafe extern "C" fn(
3550 device: nvmlDevice_t,
3551 thresholdType: nvmlTemperatureThresholds_t,
3552 temp: *mut raw::c_int,
3553 ) -> nvmlReturn_t,
3554 ::libloading::Error,
3555 >,
3556 pub nvmlDeviceSetPowerManagementLimit: Result<
3557 unsafe extern "C" fn(device: nvmlDevice_t, limit: raw::c_uint) -> nvmlReturn_t,
3558 ::libloading::Error,
3559 >,
3560 pub nvmlDeviceSetGpuOperationMode: Result<
3561 unsafe extern "C" fn(device: nvmlDevice_t, mode: nvmlGpuOperationMode_t) -> nvmlReturn_t,
3562 ::libloading::Error,
3563 >,
3564 pub nvmlDeviceSetAPIRestriction: Result<
3565 unsafe extern "C" fn(
3566 device: nvmlDevice_t,
3567 apiType: nvmlRestrictedAPI_t,
3568 isRestricted: nvmlEnableState_t,
3569 ) -> nvmlReturn_t,
3570 ::libloading::Error,
3571 >,
3572 pub nvmlDeviceSetFanSpeed_v2: Result<
3573 unsafe extern "C" fn(
3574 device: nvmlDevice_t,
3575 fan: raw::c_uint,
3576 speed: raw::c_uint,
3577 ) -> nvmlReturn_t,
3578 ::libloading::Error,
3579 >,
3580 pub nvmlDeviceSetGpcClkVfOffset: Result<
3581 unsafe extern "C" fn(device: nvmlDevice_t, offset: raw::c_int) -> nvmlReturn_t,
3582 ::libloading::Error,
3583 >,
3584 pub nvmlDeviceSetMemClkVfOffset: Result<
3585 unsafe extern "C" fn(device: nvmlDevice_t, offset: raw::c_int) -> nvmlReturn_t,
3586 ::libloading::Error,
3587 >,
3588 pub nvmlDeviceSetAccountingMode: Result<
3589 unsafe extern "C" fn(device: nvmlDevice_t, mode: nvmlEnableState_t) -> nvmlReturn_t,
3590 ::libloading::Error,
3591 >,
3592 pub nvmlDeviceClearAccountingPids:
3593 Result<unsafe extern "C" fn(device: nvmlDevice_t) -> nvmlReturn_t, ::libloading::Error>,
3594 pub nvmlDeviceSetPowerManagementLimit_v2: Result<
3595 unsafe extern "C" fn(
3596 device: nvmlDevice_t,
3597 powerValue: *mut nvmlPowerValue_v2_t,
3598 ) -> nvmlReturn_t,
3599 ::libloading::Error,
3600 >,
3601 pub nvmlDeviceGetNvLinkState: Result<
3602 unsafe extern "C" fn(
3603 device: nvmlDevice_t,
3604 link: raw::c_uint,
3605 isActive: *mut nvmlEnableState_t,
3606 ) -> nvmlReturn_t,
3607 ::libloading::Error,
3608 >,
3609 pub nvmlDeviceGetNvLinkVersion: Result<
3610 unsafe extern "C" fn(
3611 device: nvmlDevice_t,
3612 link: raw::c_uint,
3613 version: *mut raw::c_uint,
3614 ) -> nvmlReturn_t,
3615 ::libloading::Error,
3616 >,
3617 pub nvmlDeviceGetNvLinkCapability: Result<
3618 unsafe extern "C" fn(
3619 device: nvmlDevice_t,
3620 link: raw::c_uint,
3621 capability: nvmlNvLinkCapability_t,
3622 capResult: *mut raw::c_uint,
3623 ) -> nvmlReturn_t,
3624 ::libloading::Error,
3625 >,
3626 pub nvmlDeviceGetNvLinkRemotePciInfo_v2: Result<
3627 unsafe extern "C" fn(
3628 device: nvmlDevice_t,
3629 link: raw::c_uint,
3630 pci: *mut nvmlPciInfo_t,
3631 ) -> nvmlReturn_t,
3632 ::libloading::Error,
3633 >,
3634 pub nvmlDeviceGetNvLinkErrorCounter: Result<
3635 unsafe extern "C" fn(
3636 device: nvmlDevice_t,
3637 link: raw::c_uint,
3638 counter: nvmlNvLinkErrorCounter_t,
3639 counterValue: *mut raw::c_ulonglong,
3640 ) -> nvmlReturn_t,
3641 ::libloading::Error,
3642 >,
3643 pub nvmlDeviceResetNvLinkErrorCounters: Result<
3644 unsafe extern "C" fn(device: nvmlDevice_t, link: raw::c_uint) -> nvmlReturn_t,
3645 ::libloading::Error,
3646 >,
3647 pub nvmlDeviceSetNvLinkUtilizationControl: Result<
3648 unsafe extern "C" fn(
3649 device: nvmlDevice_t,
3650 link: raw::c_uint,
3651 counter: raw::c_uint,
3652 control: *mut nvmlNvLinkUtilizationControl_t,
3653 reset: raw::c_uint,
3654 ) -> nvmlReturn_t,
3655 ::libloading::Error,
3656 >,
3657 pub nvmlDeviceGetNvLinkUtilizationControl: Result<
3658 unsafe extern "C" fn(
3659 device: nvmlDevice_t,
3660 link: raw::c_uint,
3661 counter: raw::c_uint,
3662 control: *mut nvmlNvLinkUtilizationControl_t,
3663 ) -> nvmlReturn_t,
3664 ::libloading::Error,
3665 >,
3666 pub nvmlDeviceGetNvLinkUtilizationCounter: Result<
3667 unsafe extern "C" fn(
3668 device: nvmlDevice_t,
3669 link: raw::c_uint,
3670 counter: raw::c_uint,
3671 rxcounter: *mut raw::c_ulonglong,
3672 txcounter: *mut raw::c_ulonglong,
3673 ) -> nvmlReturn_t,
3674 ::libloading::Error,
3675 >,
3676 pub nvmlDeviceFreezeNvLinkUtilizationCounter: Result<
3677 unsafe extern "C" fn(
3678 device: nvmlDevice_t,
3679 link: raw::c_uint,
3680 counter: raw::c_uint,
3681 freeze: nvmlEnableState_t,
3682 ) -> nvmlReturn_t,
3683 ::libloading::Error,
3684 >,
3685 pub nvmlDeviceResetNvLinkUtilizationCounter: Result<
3686 unsafe extern "C" fn(
3687 device: nvmlDevice_t,
3688 link: raw::c_uint,
3689 counter: raw::c_uint,
3690 ) -> nvmlReturn_t,
3691 ::libloading::Error,
3692 >,
3693 pub nvmlDeviceGetNvLinkRemoteDeviceType: Result<
3694 unsafe extern "C" fn(
3695 device: nvmlDevice_t,
3696 link: raw::c_uint,
3697 pNvLinkDeviceType: *mut nvmlIntNvLinkDeviceType_t,
3698 ) -> nvmlReturn_t,
3699 ::libloading::Error,
3700 >,
3701 pub nvmlDeviceSetNvLinkDeviceLowPowerThreshold: Result<
3702 unsafe extern "C" fn(
3703 device: nvmlDevice_t,
3704 info: *mut nvmlNvLinkPowerThres_t,
3705 ) -> nvmlReturn_t,
3706 ::libloading::Error,
3707 >,
3708 pub nvmlSystemSetNvlinkBwMode: Result<
3709 unsafe extern "C" fn(nvlinkBwMode: raw::c_uint) -> nvmlReturn_t,
3710 ::libloading::Error,
3711 >,
3712 pub nvmlSystemGetNvlinkBwMode: Result<
3713 unsafe extern "C" fn(nvlinkBwMode: *mut raw::c_uint) -> nvmlReturn_t,
3714 ::libloading::Error,
3715 >,
3716 pub nvmlDeviceGetNvlinkSupportedBwModes: Result<
3717 unsafe extern "C" fn(
3718 device: nvmlDevice_t,
3719 supportedBwMode: *mut nvmlNvlinkSupportedBwModes_t,
3720 ) -> nvmlReturn_t,
3721 ::libloading::Error,
3722 >,
3723 pub nvmlDeviceGetNvlinkBwMode: Result<
3724 unsafe extern "C" fn(
3725 device: nvmlDevice_t,
3726 getBwMode: *mut nvmlNvlinkGetBwMode_t,
3727 ) -> nvmlReturn_t,
3728 ::libloading::Error,
3729 >,
3730 pub nvmlDeviceSetNvlinkBwMode: Result<
3731 unsafe extern "C" fn(
3732 device: nvmlDevice_t,
3733 setBwMode: *mut nvmlNvlinkSetBwMode_t,
3734 ) -> nvmlReturn_t,
3735 ::libloading::Error,
3736 >,
3737 pub nvmlEventSetCreate:
3738 Result<unsafe extern "C" fn(set: *mut nvmlEventSet_t) -> nvmlReturn_t, ::libloading::Error>,
3739 pub nvmlDeviceRegisterEvents: Result<
3740 unsafe extern "C" fn(
3741 device: nvmlDevice_t,
3742 eventTypes: raw::c_ulonglong,
3743 set: nvmlEventSet_t,
3744 ) -> nvmlReturn_t,
3745 ::libloading::Error,
3746 >,
3747 pub nvmlDeviceGetSupportedEventTypes: Result<
3748 unsafe extern "C" fn(
3749 device: nvmlDevice_t,
3750 eventTypes: *mut raw::c_ulonglong,
3751 ) -> nvmlReturn_t,
3752 ::libloading::Error,
3753 >,
3754 pub nvmlEventSetWait_v2: Result<
3755 unsafe extern "C" fn(
3756 set: nvmlEventSet_t,
3757 data: *mut nvmlEventData_t,
3758 timeoutms: raw::c_uint,
3759 ) -> nvmlReturn_t,
3760 ::libloading::Error,
3761 >,
3762 pub nvmlEventSetFree:
3763 Result<unsafe extern "C" fn(set: nvmlEventSet_t) -> nvmlReturn_t, ::libloading::Error>,
3764 pub nvmlDeviceModifyDrainState: Result<
3765 unsafe extern "C" fn(
3766 pciInfo: *mut nvmlPciInfo_t,
3767 newState: nvmlEnableState_t,
3768 ) -> nvmlReturn_t,
3769 ::libloading::Error,
3770 >,
3771 pub nvmlDeviceQueryDrainState: Result<
3772 unsafe extern "C" fn(
3773 pciInfo: *mut nvmlPciInfo_t,
3774 currentState: *mut nvmlEnableState_t,
3775 ) -> nvmlReturn_t,
3776 ::libloading::Error,
3777 >,
3778 pub nvmlDeviceRemoveGpu_v2: Result<
3779 unsafe extern "C" fn(
3780 pciInfo: *mut nvmlPciInfo_t,
3781 gpuState: nvmlDetachGpuState_t,
3782 linkState: nvmlPcieLinkState_t,
3783 ) -> nvmlReturn_t,
3784 ::libloading::Error,
3785 >,
3786 pub nvmlDeviceDiscoverGpus: Result<
3787 unsafe extern "C" fn(pciInfo: *mut nvmlPciInfo_t) -> nvmlReturn_t,
3788 ::libloading::Error,
3789 >,
3790 pub nvmlDeviceGetFieldValues: Result<
3791 unsafe extern "C" fn(
3792 device: nvmlDevice_t,
3793 valuesCount: raw::c_int,
3794 values: *mut nvmlFieldValue_t,
3795 ) -> nvmlReturn_t,
3796 ::libloading::Error,
3797 >,
3798 pub nvmlDeviceClearFieldValues: Result<
3799 unsafe extern "C" fn(
3800 device: nvmlDevice_t,
3801 valuesCount: raw::c_int,
3802 values: *mut nvmlFieldValue_t,
3803 ) -> nvmlReturn_t,
3804 ::libloading::Error,
3805 >,
3806 pub nvmlDeviceGetVirtualizationMode: Result<
3807 unsafe extern "C" fn(
3808 device: nvmlDevice_t,
3809 pVirtualMode: *mut nvmlGpuVirtualizationMode_t,
3810 ) -> nvmlReturn_t,
3811 ::libloading::Error,
3812 >,
3813 pub nvmlDeviceGetHostVgpuMode: Result<
3814 unsafe extern "C" fn(
3815 device: nvmlDevice_t,
3816 pHostVgpuMode: *mut nvmlHostVgpuMode_t,
3817 ) -> nvmlReturn_t,
3818 ::libloading::Error,
3819 >,
3820 pub nvmlDeviceSetVirtualizationMode: Result<
3821 unsafe extern "C" fn(
3822 device: nvmlDevice_t,
3823 virtualMode: nvmlGpuVirtualizationMode_t,
3824 ) -> nvmlReturn_t,
3825 ::libloading::Error,
3826 >,
3827 pub nvmlDeviceGetVgpuHeterogeneousMode: Result<
3828 unsafe extern "C" fn(
3829 device: nvmlDevice_t,
3830 pHeterogeneousMode: *mut nvmlVgpuHeterogeneousMode_t,
3831 ) -> nvmlReturn_t,
3832 ::libloading::Error,
3833 >,
3834 pub nvmlDeviceSetVgpuHeterogeneousMode: Result<
3835 unsafe extern "C" fn(
3836 device: nvmlDevice_t,
3837 pHeterogeneousMode: *const nvmlVgpuHeterogeneousMode_t,
3838 ) -> nvmlReturn_t,
3839 ::libloading::Error,
3840 >,
3841 pub nvmlVgpuInstanceGetPlacementId: Result<
3842 unsafe extern "C" fn(
3843 vgpuInstance: nvmlVgpuInstance_t,
3844 pPlacement: *mut nvmlVgpuPlacementId_t,
3845 ) -> nvmlReturn_t,
3846 ::libloading::Error,
3847 >,
3848 pub nvmlDeviceGetVgpuTypeSupportedPlacements: Result<
3849 unsafe extern "C" fn(
3850 device: nvmlDevice_t,
3851 vgpuTypeId: nvmlVgpuTypeId_t,
3852 pPlacementList: *mut nvmlVgpuPlacementList_t,
3853 ) -> nvmlReturn_t,
3854 ::libloading::Error,
3855 >,
3856 pub nvmlDeviceGetVgpuTypeCreatablePlacements: Result<
3857 unsafe extern "C" fn(
3858 device: nvmlDevice_t,
3859 vgpuTypeId: nvmlVgpuTypeId_t,
3860 pPlacementList: *mut nvmlVgpuPlacementList_t,
3861 ) -> nvmlReturn_t,
3862 ::libloading::Error,
3863 >,
3864 pub nvmlVgpuTypeGetGspHeapSize: Result<
3865 unsafe extern "C" fn(
3866 vgpuTypeId: nvmlVgpuTypeId_t,
3867 gspHeapSize: *mut raw::c_ulonglong,
3868 ) -> nvmlReturn_t,
3869 ::libloading::Error,
3870 >,
3871 pub nvmlVgpuTypeGetFbReservation: Result<
3872 unsafe extern "C" fn(
3873 vgpuTypeId: nvmlVgpuTypeId_t,
3874 fbReservation: *mut raw::c_ulonglong,
3875 ) -> nvmlReturn_t,
3876 ::libloading::Error,
3877 >,
3878 pub nvmlVgpuInstanceGetRuntimeStateSize: Result<
3879 unsafe extern "C" fn(
3880 vgpuInstance: nvmlVgpuInstance_t,
3881 pState: *mut nvmlVgpuRuntimeState_t,
3882 ) -> nvmlReturn_t,
3883 ::libloading::Error,
3884 >,
3885 pub nvmlDeviceSetVgpuCapabilities: Result<
3886 unsafe extern "C" fn(
3887 device: nvmlDevice_t,
3888 capability: nvmlDeviceVgpuCapability_t,
3889 state: nvmlEnableState_t,
3890 ) -> nvmlReturn_t,
3891 ::libloading::Error,
3892 >,
3893 pub nvmlDeviceGetGridLicensableFeatures_v4: Result<
3894 unsafe extern "C" fn(
3895 device: nvmlDevice_t,
3896 pGridLicensableFeatures: *mut nvmlGridLicensableFeatures_t,
3897 ) -> nvmlReturn_t,
3898 ::libloading::Error,
3899 >,
3900 pub nvmlGetVgpuDriverCapabilities: Result<
3901 unsafe extern "C" fn(
3902 capability: nvmlVgpuDriverCapability_t,
3903 capResult: *mut raw::c_uint,
3904 ) -> nvmlReturn_t,
3905 ::libloading::Error,
3906 >,
3907 pub nvmlDeviceGetVgpuCapabilities: Result<
3908 unsafe extern "C" fn(
3909 device: nvmlDevice_t,
3910 capability: nvmlDeviceVgpuCapability_t,
3911 capResult: *mut raw::c_uint,
3912 ) -> nvmlReturn_t,
3913 ::libloading::Error,
3914 >,
3915 pub nvmlDeviceGetSupportedVgpus: Result<
3916 unsafe extern "C" fn(
3917 device: nvmlDevice_t,
3918 vgpuCount: *mut raw::c_uint,
3919 vgpuTypeIds: *mut nvmlVgpuTypeId_t,
3920 ) -> nvmlReturn_t,
3921 ::libloading::Error,
3922 >,
3923 pub nvmlDeviceGetCreatableVgpus: Result<
3924 unsafe extern "C" fn(
3925 device: nvmlDevice_t,
3926 vgpuCount: *mut raw::c_uint,
3927 vgpuTypeIds: *mut nvmlVgpuTypeId_t,
3928 ) -> nvmlReturn_t,
3929 ::libloading::Error,
3930 >,
3931 pub nvmlVgpuTypeGetClass: Result<
3932 unsafe extern "C" fn(
3933 vgpuTypeId: nvmlVgpuTypeId_t,
3934 vgpuTypeClass: *mut raw::c_char,
3935 size: *mut raw::c_uint,
3936 ) -> nvmlReturn_t,
3937 ::libloading::Error,
3938 >,
3939 pub nvmlVgpuTypeGetName: Result<
3940 unsafe extern "C" fn(
3941 vgpuTypeId: nvmlVgpuTypeId_t,
3942 vgpuTypeName: *mut raw::c_char,
3943 size: *mut raw::c_uint,
3944 ) -> nvmlReturn_t,
3945 ::libloading::Error,
3946 >,
3947 pub nvmlVgpuTypeGetGpuInstanceProfileId: Result<
3948 unsafe extern "C" fn(
3949 vgpuTypeId: nvmlVgpuTypeId_t,
3950 gpuInstanceProfileId: *mut raw::c_uint,
3951 ) -> nvmlReturn_t,
3952 ::libloading::Error,
3953 >,
3954 pub nvmlVgpuTypeGetDeviceID: Result<
3955 unsafe extern "C" fn(
3956 vgpuTypeId: nvmlVgpuTypeId_t,
3957 deviceID: *mut raw::c_ulonglong,
3958 subsystemID: *mut raw::c_ulonglong,
3959 ) -> nvmlReturn_t,
3960 ::libloading::Error,
3961 >,
3962 pub nvmlVgpuTypeGetFramebufferSize: Result<
3963 unsafe extern "C" fn(
3964 vgpuTypeId: nvmlVgpuTypeId_t,
3965 fbSize: *mut raw::c_ulonglong,
3966 ) -> nvmlReturn_t,
3967 ::libloading::Error,
3968 >,
3969 pub nvmlVgpuTypeGetNumDisplayHeads: Result<
3970 unsafe extern "C" fn(
3971 vgpuTypeId: nvmlVgpuTypeId_t,
3972 numDisplayHeads: *mut raw::c_uint,
3973 ) -> nvmlReturn_t,
3974 ::libloading::Error,
3975 >,
3976 pub nvmlVgpuTypeGetResolution: Result<
3977 unsafe extern "C" fn(
3978 vgpuTypeId: nvmlVgpuTypeId_t,
3979 displayIndex: raw::c_uint,
3980 xdim: *mut raw::c_uint,
3981 ydim: *mut raw::c_uint,
3982 ) -> nvmlReturn_t,
3983 ::libloading::Error,
3984 >,
3985 pub nvmlVgpuTypeGetLicense: Result<
3986 unsafe extern "C" fn(
3987 vgpuTypeId: nvmlVgpuTypeId_t,
3988 vgpuTypeLicenseString: *mut raw::c_char,
3989 size: raw::c_uint,
3990 ) -> nvmlReturn_t,
3991 ::libloading::Error,
3992 >,
3993 pub nvmlVgpuTypeGetFrameRateLimit: Result<
3994 unsafe extern "C" fn(
3995 vgpuTypeId: nvmlVgpuTypeId_t,
3996 frameRateLimit: *mut raw::c_uint,
3997 ) -> nvmlReturn_t,
3998 ::libloading::Error,
3999 >,
4000 pub nvmlVgpuTypeGetMaxInstances: Result<
4001 unsafe extern "C" fn(
4002 device: nvmlDevice_t,
4003 vgpuTypeId: nvmlVgpuTypeId_t,
4004 vgpuInstanceCount: *mut raw::c_uint,
4005 ) -> nvmlReturn_t,
4006 ::libloading::Error,
4007 >,
4008 pub nvmlVgpuTypeGetMaxInstancesPerVm: Result<
4009 unsafe extern "C" fn(
4010 vgpuTypeId: nvmlVgpuTypeId_t,
4011 vgpuInstanceCountPerVm: *mut raw::c_uint,
4012 ) -> nvmlReturn_t,
4013 ::libloading::Error,
4014 >,
4015 pub nvmlVgpuTypeGetBAR1Info: Result<
4016 unsafe extern "C" fn(
4017 vgpuTypeId: nvmlVgpuTypeId_t,
4018 bar1Info: *mut nvmlVgpuTypeBar1Info_t,
4019 ) -> nvmlReturn_t,
4020 ::libloading::Error,
4021 >,
4022 pub nvmlDeviceGetActiveVgpus: Result<
4023 unsafe extern "C" fn(
4024 device: nvmlDevice_t,
4025 vgpuCount: *mut raw::c_uint,
4026 vgpuInstances: *mut nvmlVgpuInstance_t,
4027 ) -> nvmlReturn_t,
4028 ::libloading::Error,
4029 >,
4030 pub nvmlVgpuInstanceGetVmID: Result<
4031 unsafe extern "C" fn(
4032 vgpuInstance: nvmlVgpuInstance_t,
4033 vmId: *mut raw::c_char,
4034 size: raw::c_uint,
4035 vmIdType: *mut nvmlVgpuVmIdType_t,
4036 ) -> nvmlReturn_t,
4037 ::libloading::Error,
4038 >,
4039 pub nvmlVgpuInstanceGetUUID: Result<
4040 unsafe extern "C" fn(
4041 vgpuInstance: nvmlVgpuInstance_t,
4042 uuid: *mut raw::c_char,
4043 size: raw::c_uint,
4044 ) -> nvmlReturn_t,
4045 ::libloading::Error,
4046 >,
4047 pub nvmlVgpuInstanceGetVmDriverVersion: Result<
4048 unsafe extern "C" fn(
4049 vgpuInstance: nvmlVgpuInstance_t,
4050 version: *mut raw::c_char,
4051 length: raw::c_uint,
4052 ) -> nvmlReturn_t,
4053 ::libloading::Error,
4054 >,
4055 pub nvmlVgpuInstanceGetFbUsage: Result<
4056 unsafe extern "C" fn(
4057 vgpuInstance: nvmlVgpuInstance_t,
4058 fbUsage: *mut raw::c_ulonglong,
4059 ) -> nvmlReturn_t,
4060 ::libloading::Error,
4061 >,
4062 pub nvmlVgpuInstanceGetLicenseStatus: Result<
4063 unsafe extern "C" fn(
4064 vgpuInstance: nvmlVgpuInstance_t,
4065 licensed: *mut raw::c_uint,
4066 ) -> nvmlReturn_t,
4067 ::libloading::Error,
4068 >,
4069 pub nvmlVgpuInstanceGetType: Result<
4070 unsafe extern "C" fn(
4071 vgpuInstance: nvmlVgpuInstance_t,
4072 vgpuTypeId: *mut nvmlVgpuTypeId_t,
4073 ) -> nvmlReturn_t,
4074 ::libloading::Error,
4075 >,
4076 pub nvmlVgpuInstanceGetFrameRateLimit: Result<
4077 unsafe extern "C" fn(
4078 vgpuInstance: nvmlVgpuInstance_t,
4079 frameRateLimit: *mut raw::c_uint,
4080 ) -> nvmlReturn_t,
4081 ::libloading::Error,
4082 >,
4083 pub nvmlVgpuInstanceGetEccMode: Result<
4084 unsafe extern "C" fn(
4085 vgpuInstance: nvmlVgpuInstance_t,
4086 eccMode: *mut nvmlEnableState_t,
4087 ) -> nvmlReturn_t,
4088 ::libloading::Error,
4089 >,
4090 pub nvmlVgpuInstanceGetEncoderCapacity: Result<
4091 unsafe extern "C" fn(
4092 vgpuInstance: nvmlVgpuInstance_t,
4093 encoderCapacity: *mut raw::c_uint,
4094 ) -> nvmlReturn_t,
4095 ::libloading::Error,
4096 >,
4097 pub nvmlVgpuInstanceSetEncoderCapacity: Result<
4098 unsafe extern "C" fn(
4099 vgpuInstance: nvmlVgpuInstance_t,
4100 encoderCapacity: raw::c_uint,
4101 ) -> nvmlReturn_t,
4102 ::libloading::Error,
4103 >,
4104 pub nvmlVgpuInstanceGetEncoderStats: Result<
4105 unsafe extern "C" fn(
4106 vgpuInstance: nvmlVgpuInstance_t,
4107 sessionCount: *mut raw::c_uint,
4108 averageFps: *mut raw::c_uint,
4109 averageLatency: *mut raw::c_uint,
4110 ) -> nvmlReturn_t,
4111 ::libloading::Error,
4112 >,
4113 pub nvmlVgpuInstanceGetEncoderSessions: Result<
4114 unsafe extern "C" fn(
4115 vgpuInstance: nvmlVgpuInstance_t,
4116 sessionCount: *mut raw::c_uint,
4117 sessionInfo: *mut nvmlEncoderSessionInfo_t,
4118 ) -> nvmlReturn_t,
4119 ::libloading::Error,
4120 >,
4121 pub nvmlVgpuInstanceGetFBCStats: Result<
4122 unsafe extern "C" fn(
4123 vgpuInstance: nvmlVgpuInstance_t,
4124 fbcStats: *mut nvmlFBCStats_t,
4125 ) -> nvmlReturn_t,
4126 ::libloading::Error,
4127 >,
4128 pub nvmlVgpuInstanceGetFBCSessions: Result<
4129 unsafe extern "C" fn(
4130 vgpuInstance: nvmlVgpuInstance_t,
4131 sessionCount: *mut raw::c_uint,
4132 sessionInfo: *mut nvmlFBCSessionInfo_t,
4133 ) -> nvmlReturn_t,
4134 ::libloading::Error,
4135 >,
4136 pub nvmlVgpuInstanceGetGpuInstanceId: Result<
4137 unsafe extern "C" fn(
4138 vgpuInstance: nvmlVgpuInstance_t,
4139 gpuInstanceId: *mut raw::c_uint,
4140 ) -> nvmlReturn_t,
4141 ::libloading::Error,
4142 >,
4143 pub nvmlVgpuInstanceGetGpuPciId: Result<
4144 unsafe extern "C" fn(
4145 vgpuInstance: nvmlVgpuInstance_t,
4146 vgpuPciId: *mut raw::c_char,
4147 length: *mut raw::c_uint,
4148 ) -> nvmlReturn_t,
4149 ::libloading::Error,
4150 >,
4151 pub nvmlVgpuTypeGetCapabilities: Result<
4152 unsafe extern "C" fn(
4153 vgpuTypeId: nvmlVgpuTypeId_t,
4154 capability: nvmlVgpuCapability_t,
4155 capResult: *mut raw::c_uint,
4156 ) -> nvmlReturn_t,
4157 ::libloading::Error,
4158 >,
4159 pub nvmlVgpuInstanceGetMdevUUID: Result<
4160 unsafe extern "C" fn(
4161 vgpuInstance: nvmlVgpuInstance_t,
4162 mdevUuid: *mut raw::c_char,
4163 size: raw::c_uint,
4164 ) -> nvmlReturn_t,
4165 ::libloading::Error,
4166 >,
4167 pub nvmlVgpuInstanceGetMetadata: Result<
4168 unsafe extern "C" fn(
4169 vgpuInstance: nvmlVgpuInstance_t,
4170 vgpuMetadata: *mut nvmlVgpuMetadata_t,
4171 bufferSize: *mut raw::c_uint,
4172 ) -> nvmlReturn_t,
4173 ::libloading::Error,
4174 >,
4175 pub nvmlDeviceGetVgpuMetadata: Result<
4176 unsafe extern "C" fn(
4177 device: nvmlDevice_t,
4178 pgpuMetadata: *mut nvmlVgpuPgpuMetadata_t,
4179 bufferSize: *mut raw::c_uint,
4180 ) -> nvmlReturn_t,
4181 ::libloading::Error,
4182 >,
4183 pub nvmlGetVgpuCompatibility: Result<
4184 unsafe extern "C" fn(
4185 vgpuMetadata: *mut nvmlVgpuMetadata_t,
4186 pgpuMetadata: *mut nvmlVgpuPgpuMetadata_t,
4187 compatibilityInfo: *mut nvmlVgpuPgpuCompatibility_t,
4188 ) -> nvmlReturn_t,
4189 ::libloading::Error,
4190 >,
4191 pub nvmlDeviceGetPgpuMetadataString: Result<
4192 unsafe extern "C" fn(
4193 device: nvmlDevice_t,
4194 pgpuMetadata: *mut raw::c_char,
4195 bufferSize: *mut raw::c_uint,
4196 ) -> nvmlReturn_t,
4197 ::libloading::Error,
4198 >,
4199 pub nvmlDeviceGetVgpuSchedulerLog: Result<
4200 unsafe extern "C" fn(
4201 device: nvmlDevice_t,
4202 pSchedulerLog: *mut nvmlVgpuSchedulerLog_t,
4203 ) -> nvmlReturn_t,
4204 ::libloading::Error,
4205 >,
4206 pub nvmlDeviceGetVgpuSchedulerState: Result<
4207 unsafe extern "C" fn(
4208 device: nvmlDevice_t,
4209 pSchedulerState: *mut nvmlVgpuSchedulerGetState_t,
4210 ) -> nvmlReturn_t,
4211 ::libloading::Error,
4212 >,
4213 pub nvmlDeviceGetVgpuSchedulerCapabilities: Result<
4214 unsafe extern "C" fn(
4215 device: nvmlDevice_t,
4216 pCapabilities: *mut nvmlVgpuSchedulerCapabilities_t,
4217 ) -> nvmlReturn_t,
4218 ::libloading::Error,
4219 >,
4220 pub nvmlDeviceSetVgpuSchedulerState: Result<
4221 unsafe extern "C" fn(
4222 device: nvmlDevice_t,
4223 pSchedulerState: *mut nvmlVgpuSchedulerSetState_t,
4224 ) -> nvmlReturn_t,
4225 ::libloading::Error,
4226 >,
4227 pub nvmlGetVgpuVersion: Result<
4228 unsafe extern "C" fn(
4229 supported: *mut nvmlVgpuVersion_t,
4230 current: *mut nvmlVgpuVersion_t,
4231 ) -> nvmlReturn_t,
4232 ::libloading::Error,
4233 >,
4234 pub nvmlSetVgpuVersion: Result<
4235 unsafe extern "C" fn(vgpuVersion: *mut nvmlVgpuVersion_t) -> nvmlReturn_t,
4236 ::libloading::Error,
4237 >,
4238 pub nvmlDeviceGetVgpuUtilization: Result<
4239 unsafe extern "C" fn(
4240 device: nvmlDevice_t,
4241 lastSeenTimeStamp: raw::c_ulonglong,
4242 sampleValType: *mut nvmlValueType_t,
4243 vgpuInstanceSamplesCount: *mut raw::c_uint,
4244 utilizationSamples: *mut nvmlVgpuInstanceUtilizationSample_t,
4245 ) -> nvmlReturn_t,
4246 ::libloading::Error,
4247 >,
4248 pub nvmlDeviceGetVgpuInstancesUtilizationInfo: Result<
4249 unsafe extern "C" fn(
4250 device: nvmlDevice_t,
4251 vgpuUtilInfo: *mut nvmlVgpuInstancesUtilizationInfo_t,
4252 ) -> nvmlReturn_t,
4253 ::libloading::Error,
4254 >,
4255 pub nvmlDeviceGetVgpuProcessUtilization: Result<
4256 unsafe extern "C" fn(
4257 device: nvmlDevice_t,
4258 lastSeenTimeStamp: raw::c_ulonglong,
4259 vgpuProcessSamplesCount: *mut raw::c_uint,
4260 utilizationSamples: *mut nvmlVgpuProcessUtilizationSample_t,
4261 ) -> nvmlReturn_t,
4262 ::libloading::Error,
4263 >,
4264 pub nvmlDeviceGetVgpuProcessesUtilizationInfo: Result<
4265 unsafe extern "C" fn(
4266 device: nvmlDevice_t,
4267 vgpuProcUtilInfo: *mut nvmlVgpuProcessesUtilizationInfo_t,
4268 ) -> nvmlReturn_t,
4269 ::libloading::Error,
4270 >,
4271 pub nvmlVgpuInstanceGetAccountingMode: Result<
4272 unsafe extern "C" fn(
4273 vgpuInstance: nvmlVgpuInstance_t,
4274 mode: *mut nvmlEnableState_t,
4275 ) -> nvmlReturn_t,
4276 ::libloading::Error,
4277 >,
4278 pub nvmlVgpuInstanceGetAccountingPids: Result<
4279 unsafe extern "C" fn(
4280 vgpuInstance: nvmlVgpuInstance_t,
4281 count: *mut raw::c_uint,
4282 pids: *mut raw::c_uint,
4283 ) -> nvmlReturn_t,
4284 ::libloading::Error,
4285 >,
4286 pub nvmlVgpuInstanceGetAccountingStats: Result<
4287 unsafe extern "C" fn(
4288 vgpuInstance: nvmlVgpuInstance_t,
4289 pid: raw::c_uint,
4290 stats: *mut nvmlAccountingStats_t,
4291 ) -> nvmlReturn_t,
4292 ::libloading::Error,
4293 >,
4294 pub nvmlVgpuInstanceClearAccountingPids: Result<
4295 unsafe extern "C" fn(vgpuInstance: nvmlVgpuInstance_t) -> nvmlReturn_t,
4296 ::libloading::Error,
4297 >,
4298 pub nvmlVgpuInstanceGetLicenseInfo_v2: Result<
4299 unsafe extern "C" fn(
4300 vgpuInstance: nvmlVgpuInstance_t,
4301 licenseInfo: *mut nvmlVgpuLicenseInfo_t,
4302 ) -> nvmlReturn_t,
4303 ::libloading::Error,
4304 >,
4305 pub nvmlGetExcludedDeviceCount: Result<
4306 unsafe extern "C" fn(deviceCount: *mut raw::c_uint) -> nvmlReturn_t,
4307 ::libloading::Error,
4308 >,
4309 pub nvmlGetExcludedDeviceInfoByIndex: Result<
4310 unsafe extern "C" fn(
4311 index: raw::c_uint,
4312 info: *mut nvmlExcludedDeviceInfo_t,
4313 ) -> nvmlReturn_t,
4314 ::libloading::Error,
4315 >,
4316 pub nvmlDeviceSetMigMode: Result<
4317 unsafe extern "C" fn(
4318 device: nvmlDevice_t,
4319 mode: raw::c_uint,
4320 activationStatus: *mut nvmlReturn_t,
4321 ) -> nvmlReturn_t,
4322 ::libloading::Error,
4323 >,
4324 pub nvmlDeviceGetMigMode: Result<
4325 unsafe extern "C" fn(
4326 device: nvmlDevice_t,
4327 currentMode: *mut raw::c_uint,
4328 pendingMode: *mut raw::c_uint,
4329 ) -> nvmlReturn_t,
4330 ::libloading::Error,
4331 >,
4332 pub nvmlDeviceGetGpuInstanceProfileInfo: Result<
4333 unsafe extern "C" fn(
4334 device: nvmlDevice_t,
4335 profile: raw::c_uint,
4336 info: *mut nvmlGpuInstanceProfileInfo_t,
4337 ) -> nvmlReturn_t,
4338 ::libloading::Error,
4339 >,
4340 pub nvmlDeviceGetGpuInstanceProfileInfoV: Result<
4341 unsafe extern "C" fn(
4342 device: nvmlDevice_t,
4343 profile: raw::c_uint,
4344 info: *mut nvmlGpuInstanceProfileInfo_v2_t,
4345 ) -> nvmlReturn_t,
4346 ::libloading::Error,
4347 >,
4348 pub nvmlDeviceGetGpuInstancePossiblePlacements_v2: Result<
4349 unsafe extern "C" fn(
4350 device: nvmlDevice_t,
4351 profileId: raw::c_uint,
4352 placements: *mut nvmlGpuInstancePlacement_t,
4353 count: *mut raw::c_uint,
4354 ) -> nvmlReturn_t,
4355 ::libloading::Error,
4356 >,
4357 pub nvmlDeviceGetGpuInstanceRemainingCapacity: Result<
4358 unsafe extern "C" fn(
4359 device: nvmlDevice_t,
4360 profileId: raw::c_uint,
4361 count: *mut raw::c_uint,
4362 ) -> nvmlReturn_t,
4363 ::libloading::Error,
4364 >,
4365 pub nvmlDeviceCreateGpuInstance: Result<
4366 unsafe extern "C" fn(
4367 device: nvmlDevice_t,
4368 profileId: raw::c_uint,
4369 gpuInstance: *mut nvmlGpuInstance_t,
4370 ) -> nvmlReturn_t,
4371 ::libloading::Error,
4372 >,
4373 pub nvmlDeviceCreateGpuInstanceWithPlacement: Result<
4374 unsafe extern "C" fn(
4375 device: nvmlDevice_t,
4376 profileId: raw::c_uint,
4377 placement: *const nvmlGpuInstancePlacement_t,
4378 gpuInstance: *mut nvmlGpuInstance_t,
4379 ) -> nvmlReturn_t,
4380 ::libloading::Error,
4381 >,
4382 pub nvmlGpuInstanceDestroy: Result<
4383 unsafe extern "C" fn(gpuInstance: nvmlGpuInstance_t) -> nvmlReturn_t,
4384 ::libloading::Error,
4385 >,
4386 pub nvmlDeviceGetGpuInstances: Result<
4387 unsafe extern "C" fn(
4388 device: nvmlDevice_t,
4389 profileId: raw::c_uint,
4390 gpuInstances: *mut nvmlGpuInstance_t,
4391 count: *mut raw::c_uint,
4392 ) -> nvmlReturn_t,
4393 ::libloading::Error,
4394 >,
4395 pub nvmlDeviceGetGpuInstanceById: Result<
4396 unsafe extern "C" fn(
4397 device: nvmlDevice_t,
4398 id: raw::c_uint,
4399 gpuInstance: *mut nvmlGpuInstance_t,
4400 ) -> nvmlReturn_t,
4401 ::libloading::Error,
4402 >,
4403 pub nvmlGpuInstanceGetInfo: Result<
4404 unsafe extern "C" fn(
4405 gpuInstance: nvmlGpuInstance_t,
4406 info: *mut nvmlGpuInstanceInfo_t,
4407 ) -> nvmlReturn_t,
4408 ::libloading::Error,
4409 >,
4410 pub nvmlGpuInstanceGetComputeInstanceProfileInfo: Result<
4411 unsafe extern "C" fn(
4412 gpuInstance: nvmlGpuInstance_t,
4413 profile: raw::c_uint,
4414 engProfile: raw::c_uint,
4415 info: *mut nvmlComputeInstanceProfileInfo_t,
4416 ) -> nvmlReturn_t,
4417 ::libloading::Error,
4418 >,
4419 pub nvmlGpuInstanceGetComputeInstanceProfileInfoV: Result<
4420 unsafe extern "C" fn(
4421 gpuInstance: nvmlGpuInstance_t,
4422 profile: raw::c_uint,
4423 engProfile: raw::c_uint,
4424 info: *mut nvmlComputeInstanceProfileInfo_v2_t,
4425 ) -> nvmlReturn_t,
4426 ::libloading::Error,
4427 >,
4428 pub nvmlGpuInstanceGetComputeInstanceRemainingCapacity: Result<
4429 unsafe extern "C" fn(
4430 gpuInstance: nvmlGpuInstance_t,
4431 profileId: raw::c_uint,
4432 count: *mut raw::c_uint,
4433 ) -> nvmlReturn_t,
4434 ::libloading::Error,
4435 >,
4436 pub nvmlGpuInstanceGetComputeInstancePossiblePlacements: Result<
4437 unsafe extern "C" fn(
4438 gpuInstance: nvmlGpuInstance_t,
4439 profileId: raw::c_uint,
4440 placements: *mut nvmlComputeInstancePlacement_t,
4441 count: *mut raw::c_uint,
4442 ) -> nvmlReturn_t,
4443 ::libloading::Error,
4444 >,
4445 pub nvmlGpuInstanceCreateComputeInstance: Result<
4446 unsafe extern "C" fn(
4447 gpuInstance: nvmlGpuInstance_t,
4448 profileId: raw::c_uint,
4449 computeInstance: *mut nvmlComputeInstance_t,
4450 ) -> nvmlReturn_t,
4451 ::libloading::Error,
4452 >,
4453 pub nvmlGpuInstanceCreateComputeInstanceWithPlacement: Result<
4454 unsafe extern "C" fn(
4455 gpuInstance: nvmlGpuInstance_t,
4456 profileId: raw::c_uint,
4457 placement: *const nvmlComputeInstancePlacement_t,
4458 computeInstance: *mut nvmlComputeInstance_t,
4459 ) -> nvmlReturn_t,
4460 ::libloading::Error,
4461 >,
4462 pub nvmlComputeInstanceDestroy: Result<
4463 unsafe extern "C" fn(computeInstance: nvmlComputeInstance_t) -> nvmlReturn_t,
4464 ::libloading::Error,
4465 >,
4466 pub nvmlGpuInstanceGetComputeInstances: Result<
4467 unsafe extern "C" fn(
4468 gpuInstance: nvmlGpuInstance_t,
4469 profileId: raw::c_uint,
4470 computeInstances: *mut nvmlComputeInstance_t,
4471 count: *mut raw::c_uint,
4472 ) -> nvmlReturn_t,
4473 ::libloading::Error,
4474 >,
4475 pub nvmlGpuInstanceGetComputeInstanceById: Result<
4476 unsafe extern "C" fn(
4477 gpuInstance: nvmlGpuInstance_t,
4478 id: raw::c_uint,
4479 computeInstance: *mut nvmlComputeInstance_t,
4480 ) -> nvmlReturn_t,
4481 ::libloading::Error,
4482 >,
4483 pub nvmlComputeInstanceGetInfo_v2: Result<
4484 unsafe extern "C" fn(
4485 computeInstance: nvmlComputeInstance_t,
4486 info: *mut nvmlComputeInstanceInfo_t,
4487 ) -> nvmlReturn_t,
4488 ::libloading::Error,
4489 >,
4490 pub nvmlDeviceIsMigDeviceHandle: Result<
4491 unsafe extern "C" fn(device: nvmlDevice_t, isMigDevice: *mut raw::c_uint) -> nvmlReturn_t,
4492 ::libloading::Error,
4493 >,
4494 pub nvmlDeviceGetGpuInstanceId: Result<
4495 unsafe extern "C" fn(device: nvmlDevice_t, id: *mut raw::c_uint) -> nvmlReturn_t,
4496 ::libloading::Error,
4497 >,
4498 pub nvmlDeviceGetComputeInstanceId: Result<
4499 unsafe extern "C" fn(device: nvmlDevice_t, id: *mut raw::c_uint) -> nvmlReturn_t,
4500 ::libloading::Error,
4501 >,
4502 pub nvmlDeviceGetMaxMigDeviceCount: Result<
4503 unsafe extern "C" fn(device: nvmlDevice_t, count: *mut raw::c_uint) -> nvmlReturn_t,
4504 ::libloading::Error,
4505 >,
4506 pub nvmlDeviceGetMigDeviceHandleByIndex: Result<
4507 unsafe extern "C" fn(
4508 device: nvmlDevice_t,
4509 index: raw::c_uint,
4510 migDevice: *mut nvmlDevice_t,
4511 ) -> nvmlReturn_t,
4512 ::libloading::Error,
4513 >,
4514 pub nvmlDeviceGetDeviceHandleFromMigDeviceHandle: Result<
4515 unsafe extern "C" fn(migDevice: nvmlDevice_t, device: *mut nvmlDevice_t) -> nvmlReturn_t,
4516 ::libloading::Error,
4517 >,
4518 pub nvmlGpmMetricsGet: Result<
4519 unsafe extern "C" fn(metricsGet: *mut nvmlGpmMetricsGet_t) -> nvmlReturn_t,
4520 ::libloading::Error,
4521 >,
4522 pub nvmlGpmSampleFree: Result<
4523 unsafe extern "C" fn(gpmSample: nvmlGpmSample_t) -> nvmlReturn_t,
4524 ::libloading::Error,
4525 >,
4526 pub nvmlGpmSampleAlloc: Result<
4527 unsafe extern "C" fn(gpmSample: *mut nvmlGpmSample_t) -> nvmlReturn_t,
4528 ::libloading::Error,
4529 >,
4530 pub nvmlGpmSampleGet: Result<
4531 unsafe extern "C" fn(device: nvmlDevice_t, gpmSample: nvmlGpmSample_t) -> nvmlReturn_t,
4532 ::libloading::Error,
4533 >,
4534 pub nvmlGpmMigSampleGet: Result<
4535 unsafe extern "C" fn(
4536 device: nvmlDevice_t,
4537 gpuInstanceId: raw::c_uint,
4538 gpmSample: nvmlGpmSample_t,
4539 ) -> nvmlReturn_t,
4540 ::libloading::Error,
4541 >,
4542 pub nvmlGpmQueryDeviceSupport: Result<
4543 unsafe extern "C" fn(
4544 device: nvmlDevice_t,
4545 gpmSupport: *mut nvmlGpmSupport_t,
4546 ) -> nvmlReturn_t,
4547 ::libloading::Error,
4548 >,
4549 pub nvmlGpmQueryIfStreamingEnabled: Result<
4550 unsafe extern "C" fn(device: nvmlDevice_t, state: *mut raw::c_uint) -> nvmlReturn_t,
4551 ::libloading::Error,
4552 >,
4553 pub nvmlGpmSetStreamingEnabled: Result<
4554 unsafe extern "C" fn(device: nvmlDevice_t, state: raw::c_uint) -> nvmlReturn_t,
4555 ::libloading::Error,
4556 >,
4557 pub nvmlDeviceGetCapabilities: Result<
4558 unsafe extern "C" fn(
4559 device: nvmlDevice_t,
4560 caps: *mut nvmlDeviceCapabilities_t,
4561 ) -> nvmlReturn_t,
4562 ::libloading::Error,
4563 >,
4564 pub nvmlDeviceWorkloadPowerProfileGetProfilesInfo: Result<
4565 unsafe extern "C" fn(
4566 device: nvmlDevice_t,
4567 profilesInfo: *mut nvmlWorkloadPowerProfileProfilesInfo_t,
4568 ) -> nvmlReturn_t,
4569 ::libloading::Error,
4570 >,
4571 pub nvmlDeviceWorkloadPowerProfileGetCurrentProfiles: Result<
4572 unsafe extern "C" fn(
4573 device: nvmlDevice_t,
4574 currentProfiles: *mut nvmlWorkloadPowerProfileCurrentProfiles_t,
4575 ) -> nvmlReturn_t,
4576 ::libloading::Error,
4577 >,
4578 pub nvmlDeviceWorkloadPowerProfileSetRequestedProfiles: Result<
4579 unsafe extern "C" fn(
4580 device: nvmlDevice_t,
4581 requestedProfiles: *mut nvmlWorkloadPowerProfileRequestedProfiles_t,
4582 ) -> nvmlReturn_t,
4583 ::libloading::Error,
4584 >,
4585 pub nvmlDeviceWorkloadPowerProfileClearRequestedProfiles: Result<
4586 unsafe extern "C" fn(
4587 device: nvmlDevice_t,
4588 requestedProfiles: *mut nvmlWorkloadPowerProfileRequestedProfiles_t,
4589 ) -> nvmlReturn_t,
4590 ::libloading::Error,
4591 >,
4592 pub nvmlDevicePowerSmoothingActivatePresetProfile: Result<
4593 unsafe extern "C" fn(
4594 device: nvmlDevice_t,
4595 profile: *mut nvmlPowerSmoothingProfile_t,
4596 ) -> nvmlReturn_t,
4597 ::libloading::Error,
4598 >,
4599 pub nvmlDevicePowerSmoothingUpdatePresetProfileParam: Result<
4600 unsafe extern "C" fn(
4601 device: nvmlDevice_t,
4602 profile: *mut nvmlPowerSmoothingProfile_t,
4603 ) -> nvmlReturn_t,
4604 ::libloading::Error,
4605 >,
4606 pub nvmlDevicePowerSmoothingSetState: Result<
4607 unsafe extern "C" fn(
4608 device: nvmlDevice_t,
4609 state: *mut nvmlPowerSmoothingState_t,
4610 ) -> nvmlReturn_t,
4611 ::libloading::Error,
4612 >,
4613 #[cfg(feature = "legacy-functions")]
4614 pub nvmlInit: Result<unsafe extern "C" fn() -> nvmlReturn_t, ::libloading::Error>,
4615 #[cfg(feature = "legacy-functions")]
4616 pub nvmlDeviceGetCount: Result<
4617 unsafe extern "C" fn(deviceCount: *mut raw::c_uint) -> nvmlReturn_t,
4618 ::libloading::Error,
4619 >,
4620 #[cfg(feature = "legacy-functions")]
4621 pub nvmlDeviceGetHandleByIndex: Result<
4622 unsafe extern "C" fn(index: raw::c_uint, device: *mut nvmlDevice_t) -> nvmlReturn_t,
4623 ::libloading::Error,
4624 >,
4625 #[cfg(feature = "legacy-functions")]
4626 pub nvmlDeviceGetHandleByPciBusId: Result<
4627 unsafe extern "C" fn(
4628 pciBusId: *const raw::c_char,
4629 device: *mut nvmlDevice_t,
4630 ) -> nvmlReturn_t,
4631 ::libloading::Error,
4632 >,
4633 #[cfg(feature = "legacy-functions")]
4634 pub nvmlDeviceGetPciInfo: Result<
4635 unsafe extern "C" fn(device: nvmlDevice_t, pci: *mut nvmlPciInfo_t) -> nvmlReturn_t,
4636 ::libloading::Error,
4637 >,
4638 #[cfg(feature = "legacy-functions")]
4639 pub nvmlDeviceGetPciInfo_v2: Result<
4640 unsafe extern "C" fn(device: nvmlDevice_t, pci: *mut nvmlPciInfo_t) -> nvmlReturn_t,
4641 ::libloading::Error,
4642 >,
4643 #[cfg(feature = "legacy-functions")]
4644 pub nvmlDeviceGetNvLinkRemotePciInfo: Result<
4645 unsafe extern "C" fn(
4646 device: nvmlDevice_t,
4647 link: raw::c_uint,
4648 pci: *mut nvmlPciInfo_t,
4649 ) -> nvmlReturn_t,
4650 ::libloading::Error,
4651 >,
4652 #[cfg(feature = "legacy-functions")]
4653 pub nvmlDeviceGetGridLicensableFeatures: Result<
4654 unsafe extern "C" fn(
4655 device: nvmlDevice_t,
4656 pGridLicensableFeatures: *mut nvmlGridLicensableFeatures_t,
4657 ) -> nvmlReturn_t,
4658 ::libloading::Error,
4659 >,
4660 #[cfg(feature = "legacy-functions")]
4661 pub nvmlDeviceGetGridLicensableFeatures_v2: Result<
4662 unsafe extern "C" fn(
4663 device: nvmlDevice_t,
4664 pGridLicensableFeatures: *mut nvmlGridLicensableFeatures_t,
4665 ) -> nvmlReturn_t,
4666 ::libloading::Error,
4667 >,
4668 #[cfg(feature = "legacy-functions")]
4669 pub nvmlDeviceGetGridLicensableFeatures_v3: Result<
4670 unsafe extern "C" fn(
4671 device: nvmlDevice_t,
4672 pGridLicensableFeatures: *mut nvmlGridLicensableFeatures_t,
4673 ) -> nvmlReturn_t,
4674 ::libloading::Error,
4675 >,
4676 #[cfg(feature = "legacy-functions")]
4677 pub nvmlDeviceRemoveGpu: Result<
4678 unsafe extern "C" fn(pciInfo: *mut nvmlPciInfo_t) -> nvmlReturn_t,
4679 ::libloading::Error,
4680 >,
4681 #[cfg(feature = "legacy-functions")]
4682 pub nvmlEventSetWait: Result<
4683 unsafe extern "C" fn(
4684 set: nvmlEventSet_t,
4685 data: *mut nvmlEventData_t,
4686 timeoutms: raw::c_uint,
4687 ) -> nvmlReturn_t,
4688 ::libloading::Error,
4689 >,
4690 #[cfg(feature = "legacy-functions")]
4691 pub nvmlDeviceGetAttributes: Result<
4692 unsafe extern "C" fn(
4693 device: nvmlDevice_t,
4694 attributes: *mut nvmlDeviceAttributes_t,
4695 ) -> nvmlReturn_t,
4696 ::libloading::Error,
4697 >,
4698 #[cfg(feature = "legacy-functions")]
4699 pub nvmlComputeInstanceGetInfo: Result<
4700 unsafe extern "C" fn(
4701 computeInstance: nvmlComputeInstance_t,
4702 info: *mut nvmlComputeInstanceInfo_t,
4703 ) -> nvmlReturn_t,
4704 ::libloading::Error,
4705 >,
4706 #[cfg(feature = "legacy-functions")]
4707 pub nvmlDeviceGetComputeRunningProcesses: Result<
4708 unsafe extern "C" fn(
4709 device: nvmlDevice_t,
4710 infoCount: *mut raw::c_uint,
4711 infos: *mut nvmlProcessInfo_v1_t,
4712 ) -> nvmlReturn_t,
4713 ::libloading::Error,
4714 >,
4715 #[cfg(feature = "legacy-functions")]
4716 pub nvmlDeviceGetComputeRunningProcesses_v2: Result<
4717 unsafe extern "C" fn(
4718 device: nvmlDevice_t,
4719 infoCount: *mut raw::c_uint,
4720 infos: *mut nvmlProcessInfo_v2_t,
4721 ) -> nvmlReturn_t,
4722 ::libloading::Error,
4723 >,
4724 #[cfg(feature = "legacy-functions")]
4725 pub nvmlDeviceGetGraphicsRunningProcesses: Result<
4726 unsafe extern "C" fn(
4727 device: nvmlDevice_t,
4728 infoCount: *mut raw::c_uint,
4729 infos: *mut nvmlProcessInfo_v1_t,
4730 ) -> nvmlReturn_t,
4731 ::libloading::Error,
4732 >,
4733 #[cfg(feature = "legacy-functions")]
4734 pub nvmlDeviceGetGraphicsRunningProcesses_v2: Result<
4735 unsafe extern "C" fn(
4736 device: nvmlDevice_t,
4737 infoCount: *mut raw::c_uint,
4738 infos: *mut nvmlProcessInfo_v2_t,
4739 ) -> nvmlReturn_t,
4740 ::libloading::Error,
4741 >,
4742 #[cfg(feature = "legacy-functions")]
4743 pub nvmlDeviceGetMPSComputeRunningProcesses: Result<
4744 unsafe extern "C" fn(
4745 device: nvmlDevice_t,
4746 infoCount: *mut raw::c_uint,
4747 infos: *mut nvmlProcessInfo_v1_t,
4748 ) -> nvmlReturn_t,
4749 ::libloading::Error,
4750 >,
4751 #[cfg(feature = "legacy-functions")]
4752 pub nvmlDeviceGetMPSComputeRunningProcesses_v2: Result<
4753 unsafe extern "C" fn(
4754 device: nvmlDevice_t,
4755 infoCount: *mut raw::c_uint,
4756 infos: *mut nvmlProcessInfo_v2_t,
4757 ) -> nvmlReturn_t,
4758 ::libloading::Error,
4759 >,
4760 #[cfg(feature = "legacy-functions")]
4761 pub nvmlDeviceGetGpuInstancePossiblePlacements: Result<
4762 unsafe extern "C" fn(
4763 device: nvmlDevice_t,
4764 profileId: raw::c_uint,
4765 placements: *mut nvmlGpuInstancePlacement_t,
4766 count: *mut raw::c_uint,
4767 ) -> nvmlReturn_t,
4768 ::libloading::Error,
4769 >,
4770 #[cfg(feature = "legacy-functions")]
4771 pub nvmlVgpuInstanceGetLicenseInfo: Result<
4772 unsafe extern "C" fn(
4773 vgpuInstance: nvmlVgpuInstance_t,
4774 licenseInfo: *mut nvmlVgpuLicenseInfo_t,
4775 ) -> nvmlReturn_t,
4776 ::libloading::Error,
4777 >,
4778 pub nvmlDeviceGetDriverModel: Result<
4779 unsafe extern "C" fn(
4780 device: nvmlDevice_t,
4781 current: *mut nvmlDriverModel_t,
4782 pending: *mut nvmlDriverModel_t,
4783 ) -> nvmlReturn_t,
4784 ::libloading::Error,
4785 >,
4786}
4787impl NvmlLib {
4788 pub unsafe fn new<P>(path: P) -> Result<Self, ::libloading::Error>
4789 where
4790 P: AsRef<::std::ffi::OsStr>,
4791 {
4792 let library = ::libloading::Library::new(path)?;
4793 Self::from_library(library)
4794 }
4795 pub unsafe fn from_library<L>(library: L) -> Result<Self, ::libloading::Error>
4796 where
4797 L: Into<::libloading::Library>,
4798 {
4799 let __library = library.into();
4800 let nvmlInit_v2 = __library.get(b"nvmlInit_v2\0").map(|sym| *sym);
4801 let nvmlInitWithFlags = __library.get(b"nvmlInitWithFlags\0").map(|sym| *sym);
4802 let nvmlShutdown = __library.get(b"nvmlShutdown\0").map(|sym| *sym);
4803 let nvmlErrorString = __library.get(b"nvmlErrorString\0").map(|sym| *sym);
4804 let nvmlSystemGetDriverVersion = __library
4805 .get(b"nvmlSystemGetDriverVersion\0")
4806 .map(|sym| *sym);
4807 let nvmlSystemGetNVMLVersion = __library.get(b"nvmlSystemGetNVMLVersion\0").map(|sym| *sym);
4808 let nvmlSystemGetCudaDriverVersion = __library
4809 .get(b"nvmlSystemGetCudaDriverVersion\0")
4810 .map(|sym| *sym);
4811 let nvmlSystemGetCudaDriverVersion_v2 = __library
4812 .get(b"nvmlSystemGetCudaDriverVersion_v2\0")
4813 .map(|sym| *sym);
4814 let nvmlSystemGetProcessName = __library.get(b"nvmlSystemGetProcessName\0").map(|sym| *sym);
4815 let nvmlSystemGetHicVersion = __library.get(b"nvmlSystemGetHicVersion\0").map(|sym| *sym);
4816 let nvmlSystemGetTopologyGpuSet = __library
4817 .get(b"nvmlSystemGetTopologyGpuSet\0")
4818 .map(|sym| *sym);
4819 let nvmlSystemGetDriverBranch = __library
4820 .get(b"nvmlSystemGetDriverBranch\0")
4821 .map(|sym| *sym);
4822 let nvmlUnitGetCount = __library.get(b"nvmlUnitGetCount\0").map(|sym| *sym);
4823 let nvmlUnitGetHandleByIndex = __library.get(b"nvmlUnitGetHandleByIndex\0").map(|sym| *sym);
4824 let nvmlUnitGetUnitInfo = __library.get(b"nvmlUnitGetUnitInfo\0").map(|sym| *sym);
4825 let nvmlUnitGetLedState = __library.get(b"nvmlUnitGetLedState\0").map(|sym| *sym);
4826 let nvmlUnitGetPsuInfo = __library.get(b"nvmlUnitGetPsuInfo\0").map(|sym| *sym);
4827 let nvmlUnitGetTemperature = __library.get(b"nvmlUnitGetTemperature\0").map(|sym| *sym);
4828 let nvmlUnitGetFanSpeedInfo = __library.get(b"nvmlUnitGetFanSpeedInfo\0").map(|sym| *sym);
4829 let nvmlUnitGetDevices = __library.get(b"nvmlUnitGetDevices\0").map(|sym| *sym);
4830 let nvmlDeviceGetCount_v2 = __library.get(b"nvmlDeviceGetCount_v2\0").map(|sym| *sym);
4831 let nvmlDeviceGetAttributes_v2 = __library
4832 .get(b"nvmlDeviceGetAttributes_v2\0")
4833 .map(|sym| *sym);
4834 let nvmlDeviceGetHandleByIndex_v2 = __library
4835 .get(b"nvmlDeviceGetHandleByIndex_v2\0")
4836 .map(|sym| *sym);
4837 let nvmlDeviceGetHandleBySerial = __library
4838 .get(b"nvmlDeviceGetHandleBySerial\0")
4839 .map(|sym| *sym);
4840 let nvmlDeviceGetHandleByUUID = __library
4841 .get(b"nvmlDeviceGetHandleByUUID\0")
4842 .map(|sym| *sym);
4843 let nvmlDeviceGetHandleByPciBusId_v2 = __library
4844 .get(b"nvmlDeviceGetHandleByPciBusId_v2\0")
4845 .map(|sym| *sym);
4846 let nvmlDeviceGetName = __library.get(b"nvmlDeviceGetName\0").map(|sym| *sym);
4847 let nvmlDeviceGetBrand = __library.get(b"nvmlDeviceGetBrand\0").map(|sym| *sym);
4848 let nvmlDeviceGetIndex = __library.get(b"nvmlDeviceGetIndex\0").map(|sym| *sym);
4849 let nvmlDeviceGetSerial = __library.get(b"nvmlDeviceGetSerial\0").map(|sym| *sym);
4850 let nvmlDeviceGetModuleId = __library.get(b"nvmlDeviceGetModuleId\0").map(|sym| *sym);
4851 let nvmlDeviceGetC2cModeInfoV = __library
4852 .get(b"nvmlDeviceGetC2cModeInfoV\0")
4853 .map(|sym| *sym);
4854 let nvmlDeviceGetMemoryAffinity = __library
4855 .get(b"nvmlDeviceGetMemoryAffinity\0")
4856 .map(|sym| *sym);
4857 let nvmlDeviceGetCpuAffinityWithinScope = __library
4858 .get(b"nvmlDeviceGetCpuAffinityWithinScope\0")
4859 .map(|sym| *sym);
4860 let nvmlDeviceGetCpuAffinity = __library.get(b"nvmlDeviceGetCpuAffinity\0").map(|sym| *sym);
4861 let nvmlDeviceSetCpuAffinity = __library.get(b"nvmlDeviceSetCpuAffinity\0").map(|sym| *sym);
4862 let nvmlDeviceClearCpuAffinity = __library
4863 .get(b"nvmlDeviceClearCpuAffinity\0")
4864 .map(|sym| *sym);
4865 let nvmlDeviceGetNumaNodeId = __library.get(b"nvmlDeviceGetNumaNodeId\0").map(|sym| *sym);
4866 let nvmlDeviceGetTopologyCommonAncestor = __library
4867 .get(b"nvmlDeviceGetTopologyCommonAncestor\0")
4868 .map(|sym| *sym);
4869 let nvmlDeviceGetTopologyNearestGpus = __library
4870 .get(b"nvmlDeviceGetTopologyNearestGpus\0")
4871 .map(|sym| *sym);
4872 let nvmlDeviceGetP2PStatus = __library.get(b"nvmlDeviceGetP2PStatus\0").map(|sym| *sym);
4873 let nvmlDeviceGetUUID = __library.get(b"nvmlDeviceGetUUID\0").map(|sym| *sym);
4874 let nvmlDeviceGetMinorNumber = __library.get(b"nvmlDeviceGetMinorNumber\0").map(|sym| *sym);
4875 let nvmlDeviceGetBoardPartNumber = __library
4876 .get(b"nvmlDeviceGetBoardPartNumber\0")
4877 .map(|sym| *sym);
4878 let nvmlDeviceGetInforomVersion = __library
4879 .get(b"nvmlDeviceGetInforomVersion\0")
4880 .map(|sym| *sym);
4881 let nvmlDeviceGetInforomImageVersion = __library
4882 .get(b"nvmlDeviceGetInforomImageVersion\0")
4883 .map(|sym| *sym);
4884 let nvmlDeviceGetInforomConfigurationChecksum = __library
4885 .get(b"nvmlDeviceGetInforomConfigurationChecksum\0")
4886 .map(|sym| *sym);
4887 let nvmlDeviceValidateInforom = __library
4888 .get(b"nvmlDeviceValidateInforom\0")
4889 .map(|sym| *sym);
4890 let nvmlDeviceGetLastBBXFlushTime = __library
4891 .get(b"nvmlDeviceGetLastBBXFlushTime\0")
4892 .map(|sym| *sym);
4893 let nvmlDeviceGetDisplayMode = __library.get(b"nvmlDeviceGetDisplayMode\0").map(|sym| *sym);
4894 let nvmlDeviceGetDisplayActive = __library
4895 .get(b"nvmlDeviceGetDisplayActive\0")
4896 .map(|sym| *sym);
4897 let nvmlDeviceGetPersistenceMode = __library
4898 .get(b"nvmlDeviceGetPersistenceMode\0")
4899 .map(|sym| *sym);
4900 let nvmlDeviceGetPciInfoExt = __library.get(b"nvmlDeviceGetPciInfoExt\0").map(|sym| *sym);
4901 let nvmlDeviceGetPciInfo_v3 = __library.get(b"nvmlDeviceGetPciInfo_v3\0").map(|sym| *sym);
4902 let nvmlDeviceGetMaxPcieLinkGeneration = __library
4903 .get(b"nvmlDeviceGetMaxPcieLinkGeneration\0")
4904 .map(|sym| *sym);
4905 let nvmlDeviceGetGpuMaxPcieLinkGeneration = __library
4906 .get(b"nvmlDeviceGetGpuMaxPcieLinkGeneration\0")
4907 .map(|sym| *sym);
4908 let nvmlDeviceGetMaxPcieLinkWidth = __library
4909 .get(b"nvmlDeviceGetMaxPcieLinkWidth\0")
4910 .map(|sym| *sym);
4911 let nvmlDeviceGetCurrPcieLinkGeneration = __library
4912 .get(b"nvmlDeviceGetCurrPcieLinkGeneration\0")
4913 .map(|sym| *sym);
4914 let nvmlDeviceGetCurrPcieLinkWidth = __library
4915 .get(b"nvmlDeviceGetCurrPcieLinkWidth\0")
4916 .map(|sym| *sym);
4917 let nvmlDeviceGetPcieThroughput = __library
4918 .get(b"nvmlDeviceGetPcieThroughput\0")
4919 .map(|sym| *sym);
4920 let nvmlDeviceGetPcieReplayCounter = __library
4921 .get(b"nvmlDeviceGetPcieReplayCounter\0")
4922 .map(|sym| *sym);
4923 let nvmlDeviceGetClockInfo = __library.get(b"nvmlDeviceGetClockInfo\0").map(|sym| *sym);
4924 let nvmlDeviceGetMaxClockInfo = __library
4925 .get(b"nvmlDeviceGetMaxClockInfo\0")
4926 .map(|sym| *sym);
4927 let nvmlDeviceGetGpcClkVfOffset = __library
4928 .get(b"nvmlDeviceGetGpcClkVfOffset\0")
4929 .map(|sym| *sym);
4930 let nvmlDeviceGetApplicationsClock = __library
4931 .get(b"nvmlDeviceGetApplicationsClock\0")
4932 .map(|sym| *sym);
4933 let nvmlDeviceGetDefaultApplicationsClock = __library
4934 .get(b"nvmlDeviceGetDefaultApplicationsClock\0")
4935 .map(|sym| *sym);
4936 let nvmlDeviceGetClock = __library.get(b"nvmlDeviceGetClock\0").map(|sym| *sym);
4937 let nvmlDeviceGetMaxCustomerBoostClock = __library
4938 .get(b"nvmlDeviceGetMaxCustomerBoostClock\0")
4939 .map(|sym| *sym);
4940 let nvmlDeviceGetSupportedMemoryClocks = __library
4941 .get(b"nvmlDeviceGetSupportedMemoryClocks\0")
4942 .map(|sym| *sym);
4943 let nvmlDeviceGetSupportedGraphicsClocks = __library
4944 .get(b"nvmlDeviceGetSupportedGraphicsClocks\0")
4945 .map(|sym| *sym);
4946 let nvmlDeviceGetAutoBoostedClocksEnabled = __library
4947 .get(b"nvmlDeviceGetAutoBoostedClocksEnabled\0")
4948 .map(|sym| *sym);
4949 let nvmlDeviceGetFanSpeed = __library.get(b"nvmlDeviceGetFanSpeed\0").map(|sym| *sym);
4950 let nvmlDeviceGetFanSpeed_v2 = __library.get(b"nvmlDeviceGetFanSpeed_v2\0").map(|sym| *sym);
4951 let nvmlDeviceGetFanSpeedRPM = __library.get(b"nvmlDeviceGetFanSpeedRPM\0").map(|sym| *sym);
4952 let nvmlDeviceGetTargetFanSpeed = __library
4953 .get(b"nvmlDeviceGetTargetFanSpeed\0")
4954 .map(|sym| *sym);
4955 let nvmlDeviceGetMinMaxFanSpeed = __library
4956 .get(b"nvmlDeviceGetMinMaxFanSpeed\0")
4957 .map(|sym| *sym);
4958 let nvmlDeviceGetFanControlPolicy_v2 = __library
4959 .get(b"nvmlDeviceGetFanControlPolicy_v2\0")
4960 .map(|sym| *sym);
4961 let nvmlDeviceGetNumFans = __library.get(b"nvmlDeviceGetNumFans\0").map(|sym| *sym);
4962 let nvmlDeviceGetTemperature = __library.get(b"nvmlDeviceGetTemperature\0").map(|sym| *sym);
4963 let nvmlDeviceGetCoolerInfo = __library.get(b"nvmlDeviceGetCoolerInfo\0").map(|sym| *sym);
4964 let nvmlDeviceGetTemperatureV = __library
4965 .get(b"nvmlDeviceGetTemperatureV\0")
4966 .map(|sym| *sym);
4967 let nvmlDeviceGetTemperatureThreshold = __library
4968 .get(b"nvmlDeviceGetTemperatureThreshold\0")
4969 .map(|sym| *sym);
4970 let nvmlDeviceGetMarginTemperature = __library
4971 .get(b"nvmlDeviceGetMarginTemperature\0")
4972 .map(|sym| *sym);
4973 let nvmlDeviceGetThermalSettings = __library
4974 .get(b"nvmlDeviceGetThermalSettings\0")
4975 .map(|sym| *sym);
4976 let nvmlDeviceGetPerformanceState = __library
4977 .get(b"nvmlDeviceGetPerformanceState\0")
4978 .map(|sym| *sym);
4979 let nvmlDeviceGetCurrentClocksEventReasons = __library
4980 .get(b"nvmlDeviceGetCurrentClocksEventReasons\0")
4981 .map(|sym| *sym);
4982 let nvmlDeviceGetCurrentClocksThrottleReasons = __library
4983 .get(b"nvmlDeviceGetCurrentClocksThrottleReasons\0")
4984 .map(|sym| *sym);
4985 let nvmlDeviceGetSupportedClocksEventReasons = __library
4986 .get(b"nvmlDeviceGetSupportedClocksEventReasons\0")
4987 .map(|sym| *sym);
4988 let nvmlDeviceGetSupportedClocksThrottleReasons = __library
4989 .get(b"nvmlDeviceGetSupportedClocksThrottleReasons\0")
4990 .map(|sym| *sym);
4991 let nvmlDeviceGetPowerState = __library.get(b"nvmlDeviceGetPowerState\0").map(|sym| *sym);
4992 let nvmlDeviceGetDynamicPstatesInfo = __library
4993 .get(b"nvmlDeviceGetDynamicPstatesInfo\0")
4994 .map(|sym| *sym);
4995 let nvmlDeviceGetMemClkVfOffset = __library
4996 .get(b"nvmlDeviceGetMemClkVfOffset\0")
4997 .map(|sym| *sym);
4998 let nvmlDeviceGetMinMaxClockOfPState = __library
4999 .get(b"nvmlDeviceGetMinMaxClockOfPState\0")
5000 .map(|sym| *sym);
5001 let nvmlDeviceGetSupportedPerformanceStates = __library
5002 .get(b"nvmlDeviceGetSupportedPerformanceStates\0")
5003 .map(|sym| *sym);
5004 let nvmlDeviceGetGpcClkMinMaxVfOffset = __library
5005 .get(b"nvmlDeviceGetGpcClkMinMaxVfOffset\0")
5006 .map(|sym| *sym);
5007 let nvmlDeviceGetMemClkMinMaxVfOffset = __library
5008 .get(b"nvmlDeviceGetMemClkMinMaxVfOffset\0")
5009 .map(|sym| *sym);
5010 let nvmlDeviceGetClockOffsets = __library
5011 .get(b"nvmlDeviceGetClockOffsets\0")
5012 .map(|sym| *sym);
5013 let nvmlDeviceSetClockOffsets = __library
5014 .get(b"nvmlDeviceSetClockOffsets\0")
5015 .map(|sym| *sym);
5016 let nvmlDeviceGetPerformanceModes = __library
5017 .get(b"nvmlDeviceGetPerformanceModes\0")
5018 .map(|sym| *sym);
5019 let nvmlDeviceGetCurrentClockFreqs = __library
5020 .get(b"nvmlDeviceGetCurrentClockFreqs\0")
5021 .map(|sym| *sym);
5022 let nvmlDeviceGetPowerManagementMode = __library
5023 .get(b"nvmlDeviceGetPowerManagementMode\0")
5024 .map(|sym| *sym);
5025 let nvmlDeviceGetPowerManagementLimit = __library
5026 .get(b"nvmlDeviceGetPowerManagementLimit\0")
5027 .map(|sym| *sym);
5028 let nvmlDeviceGetPowerManagementLimitConstraints = __library
5029 .get(b"nvmlDeviceGetPowerManagementLimitConstraints\0")
5030 .map(|sym| *sym);
5031 let nvmlDeviceGetPowerManagementDefaultLimit = __library
5032 .get(b"nvmlDeviceGetPowerManagementDefaultLimit\0")
5033 .map(|sym| *sym);
5034 let nvmlDeviceGetPowerUsage = __library.get(b"nvmlDeviceGetPowerUsage\0").map(|sym| *sym);
5035 let nvmlDeviceGetTotalEnergyConsumption = __library
5036 .get(b"nvmlDeviceGetTotalEnergyConsumption\0")
5037 .map(|sym| *sym);
5038 let nvmlDeviceGetEnforcedPowerLimit = __library
5039 .get(b"nvmlDeviceGetEnforcedPowerLimit\0")
5040 .map(|sym| *sym);
5041 let nvmlDeviceGetGpuOperationMode = __library
5042 .get(b"nvmlDeviceGetGpuOperationMode\0")
5043 .map(|sym| *sym);
5044 let nvmlDeviceGetMemoryInfo = __library.get(b"nvmlDeviceGetMemoryInfo\0").map(|sym| *sym);
5045 let nvmlDeviceGetMemoryInfo_v2 = __library
5046 .get(b"nvmlDeviceGetMemoryInfo_v2\0")
5047 .map(|sym| *sym);
5048 let nvmlDeviceGetComputeMode = __library.get(b"nvmlDeviceGetComputeMode\0").map(|sym| *sym);
5049 let nvmlDeviceGetCudaComputeCapability = __library
5050 .get(b"nvmlDeviceGetCudaComputeCapability\0")
5051 .map(|sym| *sym);
5052 let nvmlDeviceGetDramEncryptionMode = __library
5053 .get(b"nvmlDeviceGetDramEncryptionMode\0")
5054 .map(|sym| *sym);
5055 let nvmlDeviceSetDramEncryptionMode = __library
5056 .get(b"nvmlDeviceSetDramEncryptionMode\0")
5057 .map(|sym| *sym);
5058 let nvmlDeviceGetEccMode = __library.get(b"nvmlDeviceGetEccMode\0").map(|sym| *sym);
5059 let nvmlDeviceGetDefaultEccMode = __library
5060 .get(b"nvmlDeviceGetDefaultEccMode\0")
5061 .map(|sym| *sym);
5062 let nvmlDeviceGetBoardId = __library.get(b"nvmlDeviceGetBoardId\0").map(|sym| *sym);
5063 let nvmlDeviceGetMultiGpuBoard = __library
5064 .get(b"nvmlDeviceGetMultiGpuBoard\0")
5065 .map(|sym| *sym);
5066 let nvmlDeviceGetTotalEccErrors = __library
5067 .get(b"nvmlDeviceGetTotalEccErrors\0")
5068 .map(|sym| *sym);
5069 let nvmlDeviceGetDetailedEccErrors = __library
5070 .get(b"nvmlDeviceGetDetailedEccErrors\0")
5071 .map(|sym| *sym);
5072 let nvmlDeviceGetMemoryErrorCounter = __library
5073 .get(b"nvmlDeviceGetMemoryErrorCounter\0")
5074 .map(|sym| *sym);
5075 let nvmlDeviceGetUtilizationRates = __library
5076 .get(b"nvmlDeviceGetUtilizationRates\0")
5077 .map(|sym| *sym);
5078 let nvmlDeviceGetEncoderUtilization = __library
5079 .get(b"nvmlDeviceGetEncoderUtilization\0")
5080 .map(|sym| *sym);
5081 let nvmlDeviceGetEncoderCapacity = __library
5082 .get(b"nvmlDeviceGetEncoderCapacity\0")
5083 .map(|sym| *sym);
5084 let nvmlDeviceGetEncoderStats = __library
5085 .get(b"nvmlDeviceGetEncoderStats\0")
5086 .map(|sym| *sym);
5087 let nvmlDeviceGetEncoderSessions = __library
5088 .get(b"nvmlDeviceGetEncoderSessions\0")
5089 .map(|sym| *sym);
5090 let nvmlDeviceGetDecoderUtilization = __library
5091 .get(b"nvmlDeviceGetDecoderUtilization\0")
5092 .map(|sym| *sym);
5093 let nvmlDeviceGetJpgUtilization = __library
5094 .get(b"nvmlDeviceGetJpgUtilization\0")
5095 .map(|sym| *sym);
5096 let nvmlDeviceGetOfaUtilization = __library
5097 .get(b"nvmlDeviceGetOfaUtilization\0")
5098 .map(|sym| *sym);
5099 let nvmlDeviceGetFBCStats = __library.get(b"nvmlDeviceGetFBCStats\0").map(|sym| *sym);
5100 let nvmlDeviceGetFBCSessions = __library.get(b"nvmlDeviceGetFBCSessions\0").map(|sym| *sym);
5101 let nvmlDeviceGetDriverModel_v2 = __library
5102 .get(b"nvmlDeviceGetDriverModel_v2\0")
5103 .map(|sym| *sym);
5104 let nvmlDeviceGetVbiosVersion = __library
5105 .get(b"nvmlDeviceGetVbiosVersion\0")
5106 .map(|sym| *sym);
5107 let nvmlDeviceGetBridgeChipInfo = __library
5108 .get(b"nvmlDeviceGetBridgeChipInfo\0")
5109 .map(|sym| *sym);
5110 let nvmlDeviceGetComputeRunningProcesses_v3 = __library
5111 .get(b"nvmlDeviceGetComputeRunningProcesses_v3\0")
5112 .map(|sym| *sym);
5113 let nvmlDeviceGetGraphicsRunningProcesses_v3 = __library
5114 .get(b"nvmlDeviceGetGraphicsRunningProcesses_v3\0")
5115 .map(|sym| *sym);
5116 let nvmlDeviceGetMPSComputeRunningProcesses_v3 = __library
5117 .get(b"nvmlDeviceGetMPSComputeRunningProcesses_v3\0")
5118 .map(|sym| *sym);
5119 let nvmlDeviceGetRunningProcessDetailList = __library
5120 .get(b"nvmlDeviceGetRunningProcessDetailList\0")
5121 .map(|sym| *sym);
5122 let nvmlDeviceOnSameBoard = __library.get(b"nvmlDeviceOnSameBoard\0").map(|sym| *sym);
5123 let nvmlDeviceGetAPIRestriction = __library
5124 .get(b"nvmlDeviceGetAPIRestriction\0")
5125 .map(|sym| *sym);
5126 let nvmlDeviceGetSamples = __library.get(b"nvmlDeviceGetSamples\0").map(|sym| *sym);
5127 let nvmlDeviceGetBAR1MemoryInfo = __library
5128 .get(b"nvmlDeviceGetBAR1MemoryInfo\0")
5129 .map(|sym| *sym);
5130 let nvmlDeviceGetViolationStatus = __library
5131 .get(b"nvmlDeviceGetViolationStatus\0")
5132 .map(|sym| *sym);
5133 let nvmlDeviceGetIrqNum = __library.get(b"nvmlDeviceGetIrqNum\0").map(|sym| *sym);
5134 let nvmlDeviceGetNumGpuCores = __library.get(b"nvmlDeviceGetNumGpuCores\0").map(|sym| *sym);
5135 let nvmlDeviceGetPowerSource = __library.get(b"nvmlDeviceGetPowerSource\0").map(|sym| *sym);
5136 let nvmlDeviceGetMemoryBusWidth = __library
5137 .get(b"nvmlDeviceGetMemoryBusWidth\0")
5138 .map(|sym| *sym);
5139 let nvmlDeviceGetPcieLinkMaxSpeed = __library
5140 .get(b"nvmlDeviceGetPcieLinkMaxSpeed\0")
5141 .map(|sym| *sym);
5142 let nvmlDeviceGetPcieSpeed = __library.get(b"nvmlDeviceGetPcieSpeed\0").map(|sym| *sym);
5143 let nvmlDeviceGetAdaptiveClockInfoStatus = __library
5144 .get(b"nvmlDeviceGetAdaptiveClockInfoStatus\0")
5145 .map(|sym| *sym);
5146 let nvmlDeviceGetBusType = __library.get(b"nvmlDeviceGetBusType\0").map(|sym| *sym);
5147 let nvmlDeviceGetGpuFabricInfo = __library
5148 .get(b"nvmlDeviceGetGpuFabricInfo\0")
5149 .map(|sym| *sym);
5150 let nvmlDeviceGetGpuFabricInfoV = __library
5151 .get(b"nvmlDeviceGetGpuFabricInfoV\0")
5152 .map(|sym| *sym);
5153 let nvmlSystemGetConfComputeCapabilities = __library
5154 .get(b"nvmlSystemGetConfComputeCapabilities\0")
5155 .map(|sym| *sym);
5156 let nvmlSystemGetConfComputeState = __library
5157 .get(b"nvmlSystemGetConfComputeState\0")
5158 .map(|sym| *sym);
5159 let nvmlDeviceGetConfComputeMemSizeInfo = __library
5160 .get(b"nvmlDeviceGetConfComputeMemSizeInfo\0")
5161 .map(|sym| *sym);
5162 let nvmlSystemGetConfComputeGpusReadyState = __library
5163 .get(b"nvmlSystemGetConfComputeGpusReadyState\0")
5164 .map(|sym| *sym);
5165 let nvmlDeviceGetConfComputeProtectedMemoryUsage = __library
5166 .get(b"nvmlDeviceGetConfComputeProtectedMemoryUsage\0")
5167 .map(|sym| *sym);
5168 let nvmlDeviceGetConfComputeGpuCertificate = __library
5169 .get(b"nvmlDeviceGetConfComputeGpuCertificate\0")
5170 .map(|sym| *sym);
5171 let nvmlDeviceGetConfComputeGpuAttestationReport = __library
5172 .get(b"nvmlDeviceGetConfComputeGpuAttestationReport\0")
5173 .map(|sym| *sym);
5174 let nvmlSystemGetConfComputeKeyRotationThresholdInfo = __library
5175 .get(b"nvmlSystemGetConfComputeKeyRotationThresholdInfo\0")
5176 .map(|sym| *sym);
5177 let nvmlDeviceSetConfComputeUnprotectedMemSize = __library
5178 .get(b"nvmlDeviceSetConfComputeUnprotectedMemSize\0")
5179 .map(|sym| *sym);
5180 let nvmlSystemSetConfComputeGpusReadyState = __library
5181 .get(b"nvmlSystemSetConfComputeGpusReadyState\0")
5182 .map(|sym| *sym);
5183 let nvmlSystemSetConfComputeKeyRotationThresholdInfo = __library
5184 .get(b"nvmlSystemSetConfComputeKeyRotationThresholdInfo\0")
5185 .map(|sym| *sym);
5186 let nvmlSystemGetConfComputeSettings = __library
5187 .get(b"nvmlSystemGetConfComputeSettings\0")
5188 .map(|sym| *sym);
5189 let nvmlDeviceGetGspFirmwareVersion = __library
5190 .get(b"nvmlDeviceGetGspFirmwareVersion\0")
5191 .map(|sym| *sym);
5192 let nvmlDeviceGetGspFirmwareMode = __library
5193 .get(b"nvmlDeviceGetGspFirmwareMode\0")
5194 .map(|sym| *sym);
5195 let nvmlDeviceGetSramEccErrorStatus = __library
5196 .get(b"nvmlDeviceGetSramEccErrorStatus\0")
5197 .map(|sym| *sym);
5198 let nvmlDeviceGetAccountingMode = __library
5199 .get(b"nvmlDeviceGetAccountingMode\0")
5200 .map(|sym| *sym);
5201 let nvmlDeviceGetAccountingStats = __library
5202 .get(b"nvmlDeviceGetAccountingStats\0")
5203 .map(|sym| *sym);
5204 let nvmlDeviceGetAccountingPids = __library
5205 .get(b"nvmlDeviceGetAccountingPids\0")
5206 .map(|sym| *sym);
5207 let nvmlDeviceGetAccountingBufferSize = __library
5208 .get(b"nvmlDeviceGetAccountingBufferSize\0")
5209 .map(|sym| *sym);
5210 let nvmlDeviceGetRetiredPages = __library
5211 .get(b"nvmlDeviceGetRetiredPages\0")
5212 .map(|sym| *sym);
5213 let nvmlDeviceGetRetiredPages_v2 = __library
5214 .get(b"nvmlDeviceGetRetiredPages_v2\0")
5215 .map(|sym| *sym);
5216 let nvmlDeviceGetRetiredPagesPendingStatus = __library
5217 .get(b"nvmlDeviceGetRetiredPagesPendingStatus\0")
5218 .map(|sym| *sym);
5219 let nvmlDeviceGetRemappedRows = __library
5220 .get(b"nvmlDeviceGetRemappedRows\0")
5221 .map(|sym| *sym);
5222 let nvmlDeviceGetRowRemapperHistogram = __library
5223 .get(b"nvmlDeviceGetRowRemapperHistogram\0")
5224 .map(|sym| *sym);
5225 let nvmlDeviceGetArchitecture = __library
5226 .get(b"nvmlDeviceGetArchitecture\0")
5227 .map(|sym| *sym);
5228 let nvmlDeviceGetClkMonStatus = __library
5229 .get(b"nvmlDeviceGetClkMonStatus\0")
5230 .map(|sym| *sym);
5231 let nvmlDeviceGetProcessUtilization = __library
5232 .get(b"nvmlDeviceGetProcessUtilization\0")
5233 .map(|sym| *sym);
5234 let nvmlDeviceGetProcessesUtilizationInfo = __library
5235 .get(b"nvmlDeviceGetProcessesUtilizationInfo\0")
5236 .map(|sym| *sym);
5237 let nvmlDeviceGetPlatformInfo = __library
5238 .get(b"nvmlDeviceGetPlatformInfo\0")
5239 .map(|sym| *sym);
5240 let nvmlUnitSetLedState = __library.get(b"nvmlUnitSetLedState\0").map(|sym| *sym);
5241 let nvmlDeviceSetPersistenceMode = __library
5242 .get(b"nvmlDeviceSetPersistenceMode\0")
5243 .map(|sym| *sym);
5244 let nvmlDeviceSetComputeMode = __library.get(b"nvmlDeviceSetComputeMode\0").map(|sym| *sym);
5245 let nvmlDeviceSetEccMode = __library.get(b"nvmlDeviceSetEccMode\0").map(|sym| *sym);
5246 let nvmlDeviceClearEccErrorCounts = __library
5247 .get(b"nvmlDeviceClearEccErrorCounts\0")
5248 .map(|sym| *sym);
5249 let nvmlDeviceSetDriverModel = __library.get(b"nvmlDeviceSetDriverModel\0").map(|sym| *sym);
5250 let nvmlDeviceSetGpuLockedClocks = __library
5251 .get(b"nvmlDeviceSetGpuLockedClocks\0")
5252 .map(|sym| *sym);
5253 let nvmlDeviceResetGpuLockedClocks = __library
5254 .get(b"nvmlDeviceResetGpuLockedClocks\0")
5255 .map(|sym| *sym);
5256 let nvmlDeviceSetMemoryLockedClocks = __library
5257 .get(b"nvmlDeviceSetMemoryLockedClocks\0")
5258 .map(|sym| *sym);
5259 let nvmlDeviceResetMemoryLockedClocks = __library
5260 .get(b"nvmlDeviceResetMemoryLockedClocks\0")
5261 .map(|sym| *sym);
5262 let nvmlDeviceSetApplicationsClocks = __library
5263 .get(b"nvmlDeviceSetApplicationsClocks\0")
5264 .map(|sym| *sym);
5265 let nvmlDeviceResetApplicationsClocks = __library
5266 .get(b"nvmlDeviceResetApplicationsClocks\0")
5267 .map(|sym| *sym);
5268 let nvmlDeviceSetAutoBoostedClocksEnabled = __library
5269 .get(b"nvmlDeviceSetAutoBoostedClocksEnabled\0")
5270 .map(|sym| *sym);
5271 let nvmlDeviceSetDefaultAutoBoostedClocksEnabled = __library
5272 .get(b"nvmlDeviceSetDefaultAutoBoostedClocksEnabled\0")
5273 .map(|sym| *sym);
5274 let nvmlDeviceSetDefaultFanSpeed_v2 = __library
5275 .get(b"nvmlDeviceSetDefaultFanSpeed_v2\0")
5276 .map(|sym| *sym);
5277 let nvmlDeviceSetFanControlPolicy = __library
5278 .get(b"nvmlDeviceSetFanControlPolicy\0")
5279 .map(|sym| *sym);
5280 let nvmlDeviceSetTemperatureThreshold = __library
5281 .get(b"nvmlDeviceSetTemperatureThreshold\0")
5282 .map(|sym| *sym);
5283 let nvmlDeviceSetPowerManagementLimit = __library
5284 .get(b"nvmlDeviceSetPowerManagementLimit\0")
5285 .map(|sym| *sym);
5286 let nvmlDeviceSetGpuOperationMode = __library
5287 .get(b"nvmlDeviceSetGpuOperationMode\0")
5288 .map(|sym| *sym);
5289 let nvmlDeviceSetAPIRestriction = __library
5290 .get(b"nvmlDeviceSetAPIRestriction\0")
5291 .map(|sym| *sym);
5292 let nvmlDeviceSetFanSpeed_v2 = __library.get(b"nvmlDeviceSetFanSpeed_v2\0").map(|sym| *sym);
5293 let nvmlDeviceSetGpcClkVfOffset = __library
5294 .get(b"nvmlDeviceSetGpcClkVfOffset\0")
5295 .map(|sym| *sym);
5296 let nvmlDeviceSetMemClkVfOffset = __library
5297 .get(b"nvmlDeviceSetMemClkVfOffset\0")
5298 .map(|sym| *sym);
5299 let nvmlDeviceSetAccountingMode = __library
5300 .get(b"nvmlDeviceSetAccountingMode\0")
5301 .map(|sym| *sym);
5302 let nvmlDeviceClearAccountingPids = __library
5303 .get(b"nvmlDeviceClearAccountingPids\0")
5304 .map(|sym| *sym);
5305 let nvmlDeviceSetPowerManagementLimit_v2 = __library
5306 .get(b"nvmlDeviceSetPowerManagementLimit_v2\0")
5307 .map(|sym| *sym);
5308 let nvmlDeviceGetNvLinkState = __library.get(b"nvmlDeviceGetNvLinkState\0").map(|sym| *sym);
5309 let nvmlDeviceGetNvLinkVersion = __library
5310 .get(b"nvmlDeviceGetNvLinkVersion\0")
5311 .map(|sym| *sym);
5312 let nvmlDeviceGetNvLinkCapability = __library
5313 .get(b"nvmlDeviceGetNvLinkCapability\0")
5314 .map(|sym| *sym);
5315 let nvmlDeviceGetNvLinkRemotePciInfo_v2 = __library
5316 .get(b"nvmlDeviceGetNvLinkRemotePciInfo_v2\0")
5317 .map(|sym| *sym);
5318 let nvmlDeviceGetNvLinkErrorCounter = __library
5319 .get(b"nvmlDeviceGetNvLinkErrorCounter\0")
5320 .map(|sym| *sym);
5321 let nvmlDeviceResetNvLinkErrorCounters = __library
5322 .get(b"nvmlDeviceResetNvLinkErrorCounters\0")
5323 .map(|sym| *sym);
5324 let nvmlDeviceSetNvLinkUtilizationControl = __library
5325 .get(b"nvmlDeviceSetNvLinkUtilizationControl\0")
5326 .map(|sym| *sym);
5327 let nvmlDeviceGetNvLinkUtilizationControl = __library
5328 .get(b"nvmlDeviceGetNvLinkUtilizationControl\0")
5329 .map(|sym| *sym);
5330 let nvmlDeviceGetNvLinkUtilizationCounter = __library
5331 .get(b"nvmlDeviceGetNvLinkUtilizationCounter\0")
5332 .map(|sym| *sym);
5333 let nvmlDeviceFreezeNvLinkUtilizationCounter = __library
5334 .get(b"nvmlDeviceFreezeNvLinkUtilizationCounter\0")
5335 .map(|sym| *sym);
5336 let nvmlDeviceResetNvLinkUtilizationCounter = __library
5337 .get(b"nvmlDeviceResetNvLinkUtilizationCounter\0")
5338 .map(|sym| *sym);
5339 let nvmlDeviceGetNvLinkRemoteDeviceType = __library
5340 .get(b"nvmlDeviceGetNvLinkRemoteDeviceType\0")
5341 .map(|sym| *sym);
5342 let nvmlDeviceSetNvLinkDeviceLowPowerThreshold = __library
5343 .get(b"nvmlDeviceSetNvLinkDeviceLowPowerThreshold\0")
5344 .map(|sym| *sym);
5345 let nvmlSystemSetNvlinkBwMode = __library
5346 .get(b"nvmlSystemSetNvlinkBwMode\0")
5347 .map(|sym| *sym);
5348 let nvmlSystemGetNvlinkBwMode = __library
5349 .get(b"nvmlSystemGetNvlinkBwMode\0")
5350 .map(|sym| *sym);
5351 let nvmlDeviceGetNvlinkSupportedBwModes = __library
5352 .get(b"nvmlDeviceGetNvlinkSupportedBwModes\0")
5353 .map(|sym| *sym);
5354 let nvmlDeviceGetNvlinkBwMode = __library
5355 .get(b"nvmlDeviceGetNvlinkBwMode\0")
5356 .map(|sym| *sym);
5357 let nvmlDeviceSetNvlinkBwMode = __library
5358 .get(b"nvmlDeviceSetNvlinkBwMode\0")
5359 .map(|sym| *sym);
5360 let nvmlEventSetCreate = __library.get(b"nvmlEventSetCreate\0").map(|sym| *sym);
5361 let nvmlDeviceRegisterEvents = __library.get(b"nvmlDeviceRegisterEvents\0").map(|sym| *sym);
5362 let nvmlDeviceGetSupportedEventTypes = __library
5363 .get(b"nvmlDeviceGetSupportedEventTypes\0")
5364 .map(|sym| *sym);
5365 let nvmlEventSetWait_v2 = __library.get(b"nvmlEventSetWait_v2\0").map(|sym| *sym);
5366 let nvmlEventSetFree = __library.get(b"nvmlEventSetFree\0").map(|sym| *sym);
5367 let nvmlDeviceModifyDrainState = __library
5368 .get(b"nvmlDeviceModifyDrainState\0")
5369 .map(|sym| *sym);
5370 let nvmlDeviceQueryDrainState = __library
5371 .get(b"nvmlDeviceQueryDrainState\0")
5372 .map(|sym| *sym);
5373 let nvmlDeviceRemoveGpu_v2 = __library.get(b"nvmlDeviceRemoveGpu_v2\0").map(|sym| *sym);
5374 let nvmlDeviceDiscoverGpus = __library.get(b"nvmlDeviceDiscoverGpus\0").map(|sym| *sym);
5375 let nvmlDeviceGetFieldValues = __library.get(b"nvmlDeviceGetFieldValues\0").map(|sym| *sym);
5376 let nvmlDeviceClearFieldValues = __library
5377 .get(b"nvmlDeviceClearFieldValues\0")
5378 .map(|sym| *sym);
5379 let nvmlDeviceGetVirtualizationMode = __library
5380 .get(b"nvmlDeviceGetVirtualizationMode\0")
5381 .map(|sym| *sym);
5382 let nvmlDeviceGetHostVgpuMode = __library
5383 .get(b"nvmlDeviceGetHostVgpuMode\0")
5384 .map(|sym| *sym);
5385 let nvmlDeviceSetVirtualizationMode = __library
5386 .get(b"nvmlDeviceSetVirtualizationMode\0")
5387 .map(|sym| *sym);
5388 let nvmlDeviceGetVgpuHeterogeneousMode = __library
5389 .get(b"nvmlDeviceGetVgpuHeterogeneousMode\0")
5390 .map(|sym| *sym);
5391 let nvmlDeviceSetVgpuHeterogeneousMode = __library
5392 .get(b"nvmlDeviceSetVgpuHeterogeneousMode\0")
5393 .map(|sym| *sym);
5394 let nvmlVgpuInstanceGetPlacementId = __library
5395 .get(b"nvmlVgpuInstanceGetPlacementId\0")
5396 .map(|sym| *sym);
5397 let nvmlDeviceGetVgpuTypeSupportedPlacements = __library
5398 .get(b"nvmlDeviceGetVgpuTypeSupportedPlacements\0")
5399 .map(|sym| *sym);
5400 let nvmlDeviceGetVgpuTypeCreatablePlacements = __library
5401 .get(b"nvmlDeviceGetVgpuTypeCreatablePlacements\0")
5402 .map(|sym| *sym);
5403 let nvmlVgpuTypeGetGspHeapSize = __library
5404 .get(b"nvmlVgpuTypeGetGspHeapSize\0")
5405 .map(|sym| *sym);
5406 let nvmlVgpuTypeGetFbReservation = __library
5407 .get(b"nvmlVgpuTypeGetFbReservation\0")
5408 .map(|sym| *sym);
5409 let nvmlVgpuInstanceGetRuntimeStateSize = __library
5410 .get(b"nvmlVgpuInstanceGetRuntimeStateSize\0")
5411 .map(|sym| *sym);
5412 let nvmlDeviceSetVgpuCapabilities = __library
5413 .get(b"nvmlDeviceSetVgpuCapabilities\0")
5414 .map(|sym| *sym);
5415 let nvmlDeviceGetGridLicensableFeatures_v4 = __library
5416 .get(b"nvmlDeviceGetGridLicensableFeatures_v4\0")
5417 .map(|sym| *sym);
5418 let nvmlGetVgpuDriverCapabilities = __library
5419 .get(b"nvmlGetVgpuDriverCapabilities\0")
5420 .map(|sym| *sym);
5421 let nvmlDeviceGetVgpuCapabilities = __library
5422 .get(b"nvmlDeviceGetVgpuCapabilities\0")
5423 .map(|sym| *sym);
5424 let nvmlDeviceGetSupportedVgpus = __library
5425 .get(b"nvmlDeviceGetSupportedVgpus\0")
5426 .map(|sym| *sym);
5427 let nvmlDeviceGetCreatableVgpus = __library
5428 .get(b"nvmlDeviceGetCreatableVgpus\0")
5429 .map(|sym| *sym);
5430 let nvmlVgpuTypeGetClass = __library.get(b"nvmlVgpuTypeGetClass\0").map(|sym| *sym);
5431 let nvmlVgpuTypeGetName = __library.get(b"nvmlVgpuTypeGetName\0").map(|sym| *sym);
5432 let nvmlVgpuTypeGetGpuInstanceProfileId = __library
5433 .get(b"nvmlVgpuTypeGetGpuInstanceProfileId\0")
5434 .map(|sym| *sym);
5435 let nvmlVgpuTypeGetDeviceID = __library.get(b"nvmlVgpuTypeGetDeviceID\0").map(|sym| *sym);
5436 let nvmlVgpuTypeGetFramebufferSize = __library
5437 .get(b"nvmlVgpuTypeGetFramebufferSize\0")
5438 .map(|sym| *sym);
5439 let nvmlVgpuTypeGetNumDisplayHeads = __library
5440 .get(b"nvmlVgpuTypeGetNumDisplayHeads\0")
5441 .map(|sym| *sym);
5442 let nvmlVgpuTypeGetResolution = __library
5443 .get(b"nvmlVgpuTypeGetResolution\0")
5444 .map(|sym| *sym);
5445 let nvmlVgpuTypeGetLicense = __library.get(b"nvmlVgpuTypeGetLicense\0").map(|sym| *sym);
5446 let nvmlVgpuTypeGetFrameRateLimit = __library
5447 .get(b"nvmlVgpuTypeGetFrameRateLimit\0")
5448 .map(|sym| *sym);
5449 let nvmlVgpuTypeGetMaxInstances = __library
5450 .get(b"nvmlVgpuTypeGetMaxInstances\0")
5451 .map(|sym| *sym);
5452 let nvmlVgpuTypeGetMaxInstancesPerVm = __library
5453 .get(b"nvmlVgpuTypeGetMaxInstancesPerVm\0")
5454 .map(|sym| *sym);
5455 let nvmlVgpuTypeGetBAR1Info = __library.get(b"nvmlVgpuTypeGetBAR1Info\0").map(|sym| *sym);
5456 let nvmlDeviceGetActiveVgpus = __library.get(b"nvmlDeviceGetActiveVgpus\0").map(|sym| *sym);
5457 let nvmlVgpuInstanceGetVmID = __library.get(b"nvmlVgpuInstanceGetVmID\0").map(|sym| *sym);
5458 let nvmlVgpuInstanceGetUUID = __library.get(b"nvmlVgpuInstanceGetUUID\0").map(|sym| *sym);
5459 let nvmlVgpuInstanceGetVmDriverVersion = __library
5460 .get(b"nvmlVgpuInstanceGetVmDriverVersion\0")
5461 .map(|sym| *sym);
5462 let nvmlVgpuInstanceGetFbUsage = __library
5463 .get(b"nvmlVgpuInstanceGetFbUsage\0")
5464 .map(|sym| *sym);
5465 let nvmlVgpuInstanceGetLicenseStatus = __library
5466 .get(b"nvmlVgpuInstanceGetLicenseStatus\0")
5467 .map(|sym| *sym);
5468 let nvmlVgpuInstanceGetType = __library.get(b"nvmlVgpuInstanceGetType\0").map(|sym| *sym);
5469 let nvmlVgpuInstanceGetFrameRateLimit = __library
5470 .get(b"nvmlVgpuInstanceGetFrameRateLimit\0")
5471 .map(|sym| *sym);
5472 let nvmlVgpuInstanceGetEccMode = __library
5473 .get(b"nvmlVgpuInstanceGetEccMode\0")
5474 .map(|sym| *sym);
5475 let nvmlVgpuInstanceGetEncoderCapacity = __library
5476 .get(b"nvmlVgpuInstanceGetEncoderCapacity\0")
5477 .map(|sym| *sym);
5478 let nvmlVgpuInstanceSetEncoderCapacity = __library
5479 .get(b"nvmlVgpuInstanceSetEncoderCapacity\0")
5480 .map(|sym| *sym);
5481 let nvmlVgpuInstanceGetEncoderStats = __library
5482 .get(b"nvmlVgpuInstanceGetEncoderStats\0")
5483 .map(|sym| *sym);
5484 let nvmlVgpuInstanceGetEncoderSessions = __library
5485 .get(b"nvmlVgpuInstanceGetEncoderSessions\0")
5486 .map(|sym| *sym);
5487 let nvmlVgpuInstanceGetFBCStats = __library
5488 .get(b"nvmlVgpuInstanceGetFBCStats\0")
5489 .map(|sym| *sym);
5490 let nvmlVgpuInstanceGetFBCSessions = __library
5491 .get(b"nvmlVgpuInstanceGetFBCSessions\0")
5492 .map(|sym| *sym);
5493 let nvmlVgpuInstanceGetGpuInstanceId = __library
5494 .get(b"nvmlVgpuInstanceGetGpuInstanceId\0")
5495 .map(|sym| *sym);
5496 let nvmlVgpuInstanceGetGpuPciId = __library
5497 .get(b"nvmlVgpuInstanceGetGpuPciId\0")
5498 .map(|sym| *sym);
5499 let nvmlVgpuTypeGetCapabilities = __library
5500 .get(b"nvmlVgpuTypeGetCapabilities\0")
5501 .map(|sym| *sym);
5502 let nvmlVgpuInstanceGetMdevUUID = __library
5503 .get(b"nvmlVgpuInstanceGetMdevUUID\0")
5504 .map(|sym| *sym);
5505 let nvmlVgpuInstanceGetMetadata = __library
5506 .get(b"nvmlVgpuInstanceGetMetadata\0")
5507 .map(|sym| *sym);
5508 let nvmlDeviceGetVgpuMetadata = __library
5509 .get(b"nvmlDeviceGetVgpuMetadata\0")
5510 .map(|sym| *sym);
5511 let nvmlGetVgpuCompatibility = __library.get(b"nvmlGetVgpuCompatibility\0").map(|sym| *sym);
5512 let nvmlDeviceGetPgpuMetadataString = __library
5513 .get(b"nvmlDeviceGetPgpuMetadataString\0")
5514 .map(|sym| *sym);
5515 let nvmlDeviceGetVgpuSchedulerLog = __library
5516 .get(b"nvmlDeviceGetVgpuSchedulerLog\0")
5517 .map(|sym| *sym);
5518 let nvmlDeviceGetVgpuSchedulerState = __library
5519 .get(b"nvmlDeviceGetVgpuSchedulerState\0")
5520 .map(|sym| *sym);
5521 let nvmlDeviceGetVgpuSchedulerCapabilities = __library
5522 .get(b"nvmlDeviceGetVgpuSchedulerCapabilities\0")
5523 .map(|sym| *sym);
5524 let nvmlDeviceSetVgpuSchedulerState = __library
5525 .get(b"nvmlDeviceSetVgpuSchedulerState\0")
5526 .map(|sym| *sym);
5527 let nvmlGetVgpuVersion = __library.get(b"nvmlGetVgpuVersion\0").map(|sym| *sym);
5528 let nvmlSetVgpuVersion = __library.get(b"nvmlSetVgpuVersion\0").map(|sym| *sym);
5529 let nvmlDeviceGetVgpuUtilization = __library
5530 .get(b"nvmlDeviceGetVgpuUtilization\0")
5531 .map(|sym| *sym);
5532 let nvmlDeviceGetVgpuInstancesUtilizationInfo = __library
5533 .get(b"nvmlDeviceGetVgpuInstancesUtilizationInfo\0")
5534 .map(|sym| *sym);
5535 let nvmlDeviceGetVgpuProcessUtilization = __library
5536 .get(b"nvmlDeviceGetVgpuProcessUtilization\0")
5537 .map(|sym| *sym);
5538 let nvmlDeviceGetVgpuProcessesUtilizationInfo = __library
5539 .get(b"nvmlDeviceGetVgpuProcessesUtilizationInfo\0")
5540 .map(|sym| *sym);
5541 let nvmlVgpuInstanceGetAccountingMode = __library
5542 .get(b"nvmlVgpuInstanceGetAccountingMode\0")
5543 .map(|sym| *sym);
5544 let nvmlVgpuInstanceGetAccountingPids = __library
5545 .get(b"nvmlVgpuInstanceGetAccountingPids\0")
5546 .map(|sym| *sym);
5547 let nvmlVgpuInstanceGetAccountingStats = __library
5548 .get(b"nvmlVgpuInstanceGetAccountingStats\0")
5549 .map(|sym| *sym);
5550 let nvmlVgpuInstanceClearAccountingPids = __library
5551 .get(b"nvmlVgpuInstanceClearAccountingPids\0")
5552 .map(|sym| *sym);
5553 let nvmlVgpuInstanceGetLicenseInfo_v2 = __library
5554 .get(b"nvmlVgpuInstanceGetLicenseInfo_v2\0")
5555 .map(|sym| *sym);
5556 let nvmlGetExcludedDeviceCount = __library
5557 .get(b"nvmlGetExcludedDeviceCount\0")
5558 .map(|sym| *sym);
5559 let nvmlGetExcludedDeviceInfoByIndex = __library
5560 .get(b"nvmlGetExcludedDeviceInfoByIndex\0")
5561 .map(|sym| *sym);
5562 let nvmlDeviceSetMigMode = __library.get(b"nvmlDeviceSetMigMode\0").map(|sym| *sym);
5563 let nvmlDeviceGetMigMode = __library.get(b"nvmlDeviceGetMigMode\0").map(|sym| *sym);
5564 let nvmlDeviceGetGpuInstanceProfileInfo = __library
5565 .get(b"nvmlDeviceGetGpuInstanceProfileInfo\0")
5566 .map(|sym| *sym);
5567 let nvmlDeviceGetGpuInstanceProfileInfoV = __library
5568 .get(b"nvmlDeviceGetGpuInstanceProfileInfoV\0")
5569 .map(|sym| *sym);
5570 let nvmlDeviceGetGpuInstancePossiblePlacements_v2 = __library
5571 .get(b"nvmlDeviceGetGpuInstancePossiblePlacements_v2\0")
5572 .map(|sym| *sym);
5573 let nvmlDeviceGetGpuInstanceRemainingCapacity = __library
5574 .get(b"nvmlDeviceGetGpuInstanceRemainingCapacity\0")
5575 .map(|sym| *sym);
5576 let nvmlDeviceCreateGpuInstance = __library
5577 .get(b"nvmlDeviceCreateGpuInstance\0")
5578 .map(|sym| *sym);
5579 let nvmlDeviceCreateGpuInstanceWithPlacement = __library
5580 .get(b"nvmlDeviceCreateGpuInstanceWithPlacement\0")
5581 .map(|sym| *sym);
5582 let nvmlGpuInstanceDestroy = __library.get(b"nvmlGpuInstanceDestroy\0").map(|sym| *sym);
5583 let nvmlDeviceGetGpuInstances = __library
5584 .get(b"nvmlDeviceGetGpuInstances\0")
5585 .map(|sym| *sym);
5586 let nvmlDeviceGetGpuInstanceById = __library
5587 .get(b"nvmlDeviceGetGpuInstanceById\0")
5588 .map(|sym| *sym);
5589 let nvmlGpuInstanceGetInfo = __library.get(b"nvmlGpuInstanceGetInfo\0").map(|sym| *sym);
5590 let nvmlGpuInstanceGetComputeInstanceProfileInfo = __library
5591 .get(b"nvmlGpuInstanceGetComputeInstanceProfileInfo\0")
5592 .map(|sym| *sym);
5593 let nvmlGpuInstanceGetComputeInstanceProfileInfoV = __library
5594 .get(b"nvmlGpuInstanceGetComputeInstanceProfileInfoV\0")
5595 .map(|sym| *sym);
5596 let nvmlGpuInstanceGetComputeInstanceRemainingCapacity = __library
5597 .get(b"nvmlGpuInstanceGetComputeInstanceRemainingCapacity\0")
5598 .map(|sym| *sym);
5599 let nvmlGpuInstanceGetComputeInstancePossiblePlacements = __library
5600 .get(b"nvmlGpuInstanceGetComputeInstancePossiblePlacements\0")
5601 .map(|sym| *sym);
5602 let nvmlGpuInstanceCreateComputeInstance = __library
5603 .get(b"nvmlGpuInstanceCreateComputeInstance\0")
5604 .map(|sym| *sym);
5605 let nvmlGpuInstanceCreateComputeInstanceWithPlacement = __library
5606 .get(b"nvmlGpuInstanceCreateComputeInstanceWithPlacement\0")
5607 .map(|sym| *sym);
5608 let nvmlComputeInstanceDestroy = __library
5609 .get(b"nvmlComputeInstanceDestroy\0")
5610 .map(|sym| *sym);
5611 let nvmlGpuInstanceGetComputeInstances = __library
5612 .get(b"nvmlGpuInstanceGetComputeInstances\0")
5613 .map(|sym| *sym);
5614 let nvmlGpuInstanceGetComputeInstanceById = __library
5615 .get(b"nvmlGpuInstanceGetComputeInstanceById\0")
5616 .map(|sym| *sym);
5617 let nvmlComputeInstanceGetInfo_v2 = __library
5618 .get(b"nvmlComputeInstanceGetInfo_v2\0")
5619 .map(|sym| *sym);
5620 let nvmlDeviceIsMigDeviceHandle = __library
5621 .get(b"nvmlDeviceIsMigDeviceHandle\0")
5622 .map(|sym| *sym);
5623 let nvmlDeviceGetGpuInstanceId = __library
5624 .get(b"nvmlDeviceGetGpuInstanceId\0")
5625 .map(|sym| *sym);
5626 let nvmlDeviceGetComputeInstanceId = __library
5627 .get(b"nvmlDeviceGetComputeInstanceId\0")
5628 .map(|sym| *sym);
5629 let nvmlDeviceGetMaxMigDeviceCount = __library
5630 .get(b"nvmlDeviceGetMaxMigDeviceCount\0")
5631 .map(|sym| *sym);
5632 let nvmlDeviceGetMigDeviceHandleByIndex = __library
5633 .get(b"nvmlDeviceGetMigDeviceHandleByIndex\0")
5634 .map(|sym| *sym);
5635 let nvmlDeviceGetDeviceHandleFromMigDeviceHandle = __library
5636 .get(b"nvmlDeviceGetDeviceHandleFromMigDeviceHandle\0")
5637 .map(|sym| *sym);
5638 let nvmlGpmMetricsGet = __library.get(b"nvmlGpmMetricsGet\0").map(|sym| *sym);
5639 let nvmlGpmSampleFree = __library.get(b"nvmlGpmSampleFree\0").map(|sym| *sym);
5640 let nvmlGpmSampleAlloc = __library.get(b"nvmlGpmSampleAlloc\0").map(|sym| *sym);
5641 let nvmlGpmSampleGet = __library.get(b"nvmlGpmSampleGet\0").map(|sym| *sym);
5642 let nvmlGpmMigSampleGet = __library.get(b"nvmlGpmMigSampleGet\0").map(|sym| *sym);
5643 let nvmlGpmQueryDeviceSupport = __library
5644 .get(b"nvmlGpmQueryDeviceSupport\0")
5645 .map(|sym| *sym);
5646 let nvmlGpmQueryIfStreamingEnabled = __library
5647 .get(b"nvmlGpmQueryIfStreamingEnabled\0")
5648 .map(|sym| *sym);
5649 let nvmlGpmSetStreamingEnabled = __library
5650 .get(b"nvmlGpmSetStreamingEnabled\0")
5651 .map(|sym| *sym);
5652 let nvmlDeviceGetCapabilities = __library
5653 .get(b"nvmlDeviceGetCapabilities\0")
5654 .map(|sym| *sym);
5655 let nvmlDeviceWorkloadPowerProfileGetProfilesInfo = __library
5656 .get(b"nvmlDeviceWorkloadPowerProfileGetProfilesInfo\0")
5657 .map(|sym| *sym);
5658 let nvmlDeviceWorkloadPowerProfileGetCurrentProfiles = __library
5659 .get(b"nvmlDeviceWorkloadPowerProfileGetCurrentProfiles\0")
5660 .map(|sym| *sym);
5661 let nvmlDeviceWorkloadPowerProfileSetRequestedProfiles = __library
5662 .get(b"nvmlDeviceWorkloadPowerProfileSetRequestedProfiles\0")
5663 .map(|sym| *sym);
5664 let nvmlDeviceWorkloadPowerProfileClearRequestedProfiles = __library
5665 .get(b"nvmlDeviceWorkloadPowerProfileClearRequestedProfiles\0")
5666 .map(|sym| *sym);
5667 let nvmlDevicePowerSmoothingActivatePresetProfile = __library
5668 .get(b"nvmlDevicePowerSmoothingActivatePresetProfile\0")
5669 .map(|sym| *sym);
5670 let nvmlDevicePowerSmoothingUpdatePresetProfileParam = __library
5671 .get(b"nvmlDevicePowerSmoothingUpdatePresetProfileParam\0")
5672 .map(|sym| *sym);
5673 let nvmlDevicePowerSmoothingSetState = __library
5674 .get(b"nvmlDevicePowerSmoothingSetState\0")
5675 .map(|sym| *sym);
5676 #[cfg(feature = "legacy-functions")]
5677 let nvmlInit = __library.get(b"nvmlInit\0").map(|sym| *sym);
5678 #[cfg(feature = "legacy-functions")]
5679 let nvmlDeviceGetCount = __library.get(b"nvmlDeviceGetCount\0").map(|sym| *sym);
5680 #[cfg(feature = "legacy-functions")]
5681 let nvmlDeviceGetHandleByIndex = __library
5682 .get(b"nvmlDeviceGetHandleByIndex\0")
5683 .map(|sym| *sym);
5684 #[cfg(feature = "legacy-functions")]
5685 let nvmlDeviceGetHandleByPciBusId = __library
5686 .get(b"nvmlDeviceGetHandleByPciBusId\0")
5687 .map(|sym| *sym);
5688 #[cfg(feature = "legacy-functions")]
5689 let nvmlDeviceGetPciInfo = __library.get(b"nvmlDeviceGetPciInfo\0").map(|sym| *sym);
5690 #[cfg(feature = "legacy-functions")]
5691 let nvmlDeviceGetPciInfo_v2 = __library.get(b"nvmlDeviceGetPciInfo_v2\0").map(|sym| *sym);
5692 #[cfg(feature = "legacy-functions")]
5693 let nvmlDeviceGetNvLinkRemotePciInfo = __library
5694 .get(b"nvmlDeviceGetNvLinkRemotePciInfo\0")
5695 .map(|sym| *sym);
5696 #[cfg(feature = "legacy-functions")]
5697 let nvmlDeviceGetGridLicensableFeatures = __library
5698 .get(b"nvmlDeviceGetGridLicensableFeatures\0")
5699 .map(|sym| *sym);
5700 #[cfg(feature = "legacy-functions")]
5701 let nvmlDeviceGetGridLicensableFeatures_v2 = __library
5702 .get(b"nvmlDeviceGetGridLicensableFeatures_v2\0")
5703 .map(|sym| *sym);
5704 #[cfg(feature = "legacy-functions")]
5705 let nvmlDeviceGetGridLicensableFeatures_v3 = __library
5706 .get(b"nvmlDeviceGetGridLicensableFeatures_v3\0")
5707 .map(|sym| *sym);
5708 #[cfg(feature = "legacy-functions")]
5709 let nvmlDeviceRemoveGpu = __library.get(b"nvmlDeviceRemoveGpu\0").map(|sym| *sym);
5710 #[cfg(feature = "legacy-functions")]
5711 let nvmlEventSetWait = __library.get(b"nvmlEventSetWait\0").map(|sym| *sym);
5712 #[cfg(feature = "legacy-functions")]
5713 let nvmlDeviceGetAttributes = __library.get(b"nvmlDeviceGetAttributes\0").map(|sym| *sym);
5714 #[cfg(feature = "legacy-functions")]
5715 let nvmlComputeInstanceGetInfo = __library
5716 .get(b"nvmlComputeInstanceGetInfo\0")
5717 .map(|sym| *sym);
5718 #[cfg(feature = "legacy-functions")]
5719 let nvmlDeviceGetComputeRunningProcesses = __library
5720 .get(b"nvmlDeviceGetComputeRunningProcesses\0")
5721 .map(|sym| *sym);
5722 #[cfg(feature = "legacy-functions")]
5723 let nvmlDeviceGetComputeRunningProcesses_v2 = __library
5724 .get(b"nvmlDeviceGetComputeRunningProcesses_v2\0")
5725 .map(|sym| *sym);
5726 #[cfg(feature = "legacy-functions")]
5727 let nvmlDeviceGetGraphicsRunningProcesses = __library
5728 .get(b"nvmlDeviceGetGraphicsRunningProcesses\0")
5729 .map(|sym| *sym);
5730 #[cfg(feature = "legacy-functions")]
5731 let nvmlDeviceGetGraphicsRunningProcesses_v2 = __library
5732 .get(b"nvmlDeviceGetGraphicsRunningProcesses_v2\0")
5733 .map(|sym| *sym);
5734 #[cfg(feature = "legacy-functions")]
5735 let nvmlDeviceGetMPSComputeRunningProcesses = __library
5736 .get(b"nvmlDeviceGetMPSComputeRunningProcesses\0")
5737 .map(|sym| *sym);
5738 #[cfg(feature = "legacy-functions")]
5739 let nvmlDeviceGetMPSComputeRunningProcesses_v2 = __library
5740 .get(b"nvmlDeviceGetMPSComputeRunningProcesses_v2\0")
5741 .map(|sym| *sym);
5742 #[cfg(feature = "legacy-functions")]
5743 let nvmlDeviceGetGpuInstancePossiblePlacements = __library
5744 .get(b"nvmlDeviceGetGpuInstancePossiblePlacements\0")
5745 .map(|sym| *sym);
5746 #[cfg(feature = "legacy-functions")]
5747 let nvmlVgpuInstanceGetLicenseInfo = __library
5748 .get(b"nvmlVgpuInstanceGetLicenseInfo\0")
5749 .map(|sym| *sym);
5750 let nvmlDeviceGetDriverModel = __library.get(b"nvmlDeviceGetDriverModel\0").map(|sym| *sym);
5751 Ok(NvmlLib {
5752 __library,
5753 nvmlInit_v2,
5754 nvmlInitWithFlags,
5755 nvmlShutdown,
5756 nvmlErrorString,
5757 nvmlSystemGetDriverVersion,
5758 nvmlSystemGetNVMLVersion,
5759 nvmlSystemGetCudaDriverVersion,
5760 nvmlSystemGetCudaDriverVersion_v2,
5761 nvmlSystemGetProcessName,
5762 nvmlSystemGetHicVersion,
5763 nvmlSystemGetTopologyGpuSet,
5764 nvmlSystemGetDriverBranch,
5765 nvmlUnitGetCount,
5766 nvmlUnitGetHandleByIndex,
5767 nvmlUnitGetUnitInfo,
5768 nvmlUnitGetLedState,
5769 nvmlUnitGetPsuInfo,
5770 nvmlUnitGetTemperature,
5771 nvmlUnitGetFanSpeedInfo,
5772 nvmlUnitGetDevices,
5773 nvmlDeviceGetCount_v2,
5774 nvmlDeviceGetAttributes_v2,
5775 nvmlDeviceGetHandleByIndex_v2,
5776 nvmlDeviceGetHandleBySerial,
5777 nvmlDeviceGetHandleByUUID,
5778 nvmlDeviceGetHandleByPciBusId_v2,
5779 nvmlDeviceGetName,
5780 nvmlDeviceGetBrand,
5781 nvmlDeviceGetIndex,
5782 nvmlDeviceGetSerial,
5783 nvmlDeviceGetModuleId,
5784 nvmlDeviceGetC2cModeInfoV,
5785 nvmlDeviceGetMemoryAffinity,
5786 nvmlDeviceGetCpuAffinityWithinScope,
5787 nvmlDeviceGetCpuAffinity,
5788 nvmlDeviceSetCpuAffinity,
5789 nvmlDeviceClearCpuAffinity,
5790 nvmlDeviceGetNumaNodeId,
5791 nvmlDeviceGetTopologyCommonAncestor,
5792 nvmlDeviceGetTopologyNearestGpus,
5793 nvmlDeviceGetP2PStatus,
5794 nvmlDeviceGetUUID,
5795 nvmlDeviceGetMinorNumber,
5796 nvmlDeviceGetBoardPartNumber,
5797 nvmlDeviceGetInforomVersion,
5798 nvmlDeviceGetInforomImageVersion,
5799 nvmlDeviceGetInforomConfigurationChecksum,
5800 nvmlDeviceValidateInforom,
5801 nvmlDeviceGetLastBBXFlushTime,
5802 nvmlDeviceGetDisplayMode,
5803 nvmlDeviceGetDisplayActive,
5804 nvmlDeviceGetPersistenceMode,
5805 nvmlDeviceGetPciInfoExt,
5806 nvmlDeviceGetPciInfo_v3,
5807 nvmlDeviceGetMaxPcieLinkGeneration,
5808 nvmlDeviceGetGpuMaxPcieLinkGeneration,
5809 nvmlDeviceGetMaxPcieLinkWidth,
5810 nvmlDeviceGetCurrPcieLinkGeneration,
5811 nvmlDeviceGetCurrPcieLinkWidth,
5812 nvmlDeviceGetPcieThroughput,
5813 nvmlDeviceGetPcieReplayCounter,
5814 nvmlDeviceGetClockInfo,
5815 nvmlDeviceGetMaxClockInfo,
5816 nvmlDeviceGetGpcClkVfOffset,
5817 nvmlDeviceGetApplicationsClock,
5818 nvmlDeviceGetDefaultApplicationsClock,
5819 nvmlDeviceGetClock,
5820 nvmlDeviceGetMaxCustomerBoostClock,
5821 nvmlDeviceGetSupportedMemoryClocks,
5822 nvmlDeviceGetSupportedGraphicsClocks,
5823 nvmlDeviceGetAutoBoostedClocksEnabled,
5824 nvmlDeviceGetFanSpeed,
5825 nvmlDeviceGetFanSpeed_v2,
5826 nvmlDeviceGetFanSpeedRPM,
5827 nvmlDeviceGetTargetFanSpeed,
5828 nvmlDeviceGetMinMaxFanSpeed,
5829 nvmlDeviceGetFanControlPolicy_v2,
5830 nvmlDeviceGetNumFans,
5831 nvmlDeviceGetTemperature,
5832 nvmlDeviceGetCoolerInfo,
5833 nvmlDeviceGetTemperatureV,
5834 nvmlDeviceGetTemperatureThreshold,
5835 nvmlDeviceGetMarginTemperature,
5836 nvmlDeviceGetThermalSettings,
5837 nvmlDeviceGetPerformanceState,
5838 nvmlDeviceGetCurrentClocksEventReasons,
5839 nvmlDeviceGetCurrentClocksThrottleReasons,
5840 nvmlDeviceGetSupportedClocksEventReasons,
5841 nvmlDeviceGetSupportedClocksThrottleReasons,
5842 nvmlDeviceGetPowerState,
5843 nvmlDeviceGetDynamicPstatesInfo,
5844 nvmlDeviceGetMemClkVfOffset,
5845 nvmlDeviceGetMinMaxClockOfPState,
5846 nvmlDeviceGetSupportedPerformanceStates,
5847 nvmlDeviceGetGpcClkMinMaxVfOffset,
5848 nvmlDeviceGetMemClkMinMaxVfOffset,
5849 nvmlDeviceGetClockOffsets,
5850 nvmlDeviceSetClockOffsets,
5851 nvmlDeviceGetPerformanceModes,
5852 nvmlDeviceGetCurrentClockFreqs,
5853 nvmlDeviceGetPowerManagementMode,
5854 nvmlDeviceGetPowerManagementLimit,
5855 nvmlDeviceGetPowerManagementLimitConstraints,
5856 nvmlDeviceGetPowerManagementDefaultLimit,
5857 nvmlDeviceGetPowerUsage,
5858 nvmlDeviceGetTotalEnergyConsumption,
5859 nvmlDeviceGetEnforcedPowerLimit,
5860 nvmlDeviceGetGpuOperationMode,
5861 nvmlDeviceGetMemoryInfo,
5862 nvmlDeviceGetMemoryInfo_v2,
5863 nvmlDeviceGetComputeMode,
5864 nvmlDeviceGetCudaComputeCapability,
5865 nvmlDeviceGetDramEncryptionMode,
5866 nvmlDeviceSetDramEncryptionMode,
5867 nvmlDeviceGetEccMode,
5868 nvmlDeviceGetDefaultEccMode,
5869 nvmlDeviceGetBoardId,
5870 nvmlDeviceGetMultiGpuBoard,
5871 nvmlDeviceGetTotalEccErrors,
5872 nvmlDeviceGetDetailedEccErrors,
5873 nvmlDeviceGetMemoryErrorCounter,
5874 nvmlDeviceGetUtilizationRates,
5875 nvmlDeviceGetEncoderUtilization,
5876 nvmlDeviceGetEncoderCapacity,
5877 nvmlDeviceGetEncoderStats,
5878 nvmlDeviceGetEncoderSessions,
5879 nvmlDeviceGetDecoderUtilization,
5880 nvmlDeviceGetJpgUtilization,
5881 nvmlDeviceGetOfaUtilization,
5882 nvmlDeviceGetFBCStats,
5883 nvmlDeviceGetFBCSessions,
5884 nvmlDeviceGetDriverModel_v2,
5885 nvmlDeviceGetVbiosVersion,
5886 nvmlDeviceGetBridgeChipInfo,
5887 nvmlDeviceGetComputeRunningProcesses_v3,
5888 nvmlDeviceGetGraphicsRunningProcesses_v3,
5889 nvmlDeviceGetMPSComputeRunningProcesses_v3,
5890 nvmlDeviceGetRunningProcessDetailList,
5891 nvmlDeviceOnSameBoard,
5892 nvmlDeviceGetAPIRestriction,
5893 nvmlDeviceGetSamples,
5894 nvmlDeviceGetBAR1MemoryInfo,
5895 nvmlDeviceGetViolationStatus,
5896 nvmlDeviceGetIrqNum,
5897 nvmlDeviceGetNumGpuCores,
5898 nvmlDeviceGetPowerSource,
5899 nvmlDeviceGetMemoryBusWidth,
5900 nvmlDeviceGetPcieLinkMaxSpeed,
5901 nvmlDeviceGetPcieSpeed,
5902 nvmlDeviceGetAdaptiveClockInfoStatus,
5903 nvmlDeviceGetBusType,
5904 nvmlDeviceGetGpuFabricInfo,
5905 nvmlDeviceGetGpuFabricInfoV,
5906 nvmlSystemGetConfComputeCapabilities,
5907 nvmlSystemGetConfComputeState,
5908 nvmlDeviceGetConfComputeMemSizeInfo,
5909 nvmlSystemGetConfComputeGpusReadyState,
5910 nvmlDeviceGetConfComputeProtectedMemoryUsage,
5911 nvmlDeviceGetConfComputeGpuCertificate,
5912 nvmlDeviceGetConfComputeGpuAttestationReport,
5913 nvmlSystemGetConfComputeKeyRotationThresholdInfo,
5914 nvmlDeviceSetConfComputeUnprotectedMemSize,
5915 nvmlSystemSetConfComputeGpusReadyState,
5916 nvmlSystemSetConfComputeKeyRotationThresholdInfo,
5917 nvmlSystemGetConfComputeSettings,
5918 nvmlDeviceGetGspFirmwareVersion,
5919 nvmlDeviceGetGspFirmwareMode,
5920 nvmlDeviceGetSramEccErrorStatus,
5921 nvmlDeviceGetAccountingMode,
5922 nvmlDeviceGetAccountingStats,
5923 nvmlDeviceGetAccountingPids,
5924 nvmlDeviceGetAccountingBufferSize,
5925 nvmlDeviceGetRetiredPages,
5926 nvmlDeviceGetRetiredPages_v2,
5927 nvmlDeviceGetRetiredPagesPendingStatus,
5928 nvmlDeviceGetRemappedRows,
5929 nvmlDeviceGetRowRemapperHistogram,
5930 nvmlDeviceGetArchitecture,
5931 nvmlDeviceGetClkMonStatus,
5932 nvmlDeviceGetProcessUtilization,
5933 nvmlDeviceGetProcessesUtilizationInfo,
5934 nvmlDeviceGetPlatformInfo,
5935 nvmlUnitSetLedState,
5936 nvmlDeviceSetPersistenceMode,
5937 nvmlDeviceSetComputeMode,
5938 nvmlDeviceSetEccMode,
5939 nvmlDeviceClearEccErrorCounts,
5940 nvmlDeviceSetDriverModel,
5941 nvmlDeviceSetGpuLockedClocks,
5942 nvmlDeviceResetGpuLockedClocks,
5943 nvmlDeviceSetMemoryLockedClocks,
5944 nvmlDeviceResetMemoryLockedClocks,
5945 nvmlDeviceSetApplicationsClocks,
5946 nvmlDeviceResetApplicationsClocks,
5947 nvmlDeviceSetAutoBoostedClocksEnabled,
5948 nvmlDeviceSetDefaultAutoBoostedClocksEnabled,
5949 nvmlDeviceSetDefaultFanSpeed_v2,
5950 nvmlDeviceSetFanControlPolicy,
5951 nvmlDeviceSetTemperatureThreshold,
5952 nvmlDeviceSetPowerManagementLimit,
5953 nvmlDeviceSetGpuOperationMode,
5954 nvmlDeviceSetAPIRestriction,
5955 nvmlDeviceSetFanSpeed_v2,
5956 nvmlDeviceSetGpcClkVfOffset,
5957 nvmlDeviceSetMemClkVfOffset,
5958 nvmlDeviceSetAccountingMode,
5959 nvmlDeviceClearAccountingPids,
5960 nvmlDeviceSetPowerManagementLimit_v2,
5961 nvmlDeviceGetNvLinkState,
5962 nvmlDeviceGetNvLinkVersion,
5963 nvmlDeviceGetNvLinkCapability,
5964 nvmlDeviceGetNvLinkRemotePciInfo_v2,
5965 nvmlDeviceGetNvLinkErrorCounter,
5966 nvmlDeviceResetNvLinkErrorCounters,
5967 nvmlDeviceSetNvLinkUtilizationControl,
5968 nvmlDeviceGetNvLinkUtilizationControl,
5969 nvmlDeviceGetNvLinkUtilizationCounter,
5970 nvmlDeviceFreezeNvLinkUtilizationCounter,
5971 nvmlDeviceResetNvLinkUtilizationCounter,
5972 nvmlDeviceGetNvLinkRemoteDeviceType,
5973 nvmlDeviceSetNvLinkDeviceLowPowerThreshold,
5974 nvmlSystemSetNvlinkBwMode,
5975 nvmlSystemGetNvlinkBwMode,
5976 nvmlDeviceGetNvlinkSupportedBwModes,
5977 nvmlDeviceGetNvlinkBwMode,
5978 nvmlDeviceSetNvlinkBwMode,
5979 nvmlEventSetCreate,
5980 nvmlDeviceRegisterEvents,
5981 nvmlDeviceGetSupportedEventTypes,
5982 nvmlEventSetWait_v2,
5983 nvmlEventSetFree,
5984 nvmlDeviceModifyDrainState,
5985 nvmlDeviceQueryDrainState,
5986 nvmlDeviceRemoveGpu_v2,
5987 nvmlDeviceDiscoverGpus,
5988 nvmlDeviceGetFieldValues,
5989 nvmlDeviceClearFieldValues,
5990 nvmlDeviceGetVirtualizationMode,
5991 nvmlDeviceGetHostVgpuMode,
5992 nvmlDeviceSetVirtualizationMode,
5993 nvmlDeviceGetVgpuHeterogeneousMode,
5994 nvmlDeviceSetVgpuHeterogeneousMode,
5995 nvmlVgpuInstanceGetPlacementId,
5996 nvmlDeviceGetVgpuTypeSupportedPlacements,
5997 nvmlDeviceGetVgpuTypeCreatablePlacements,
5998 nvmlVgpuTypeGetGspHeapSize,
5999 nvmlVgpuTypeGetFbReservation,
6000 nvmlVgpuInstanceGetRuntimeStateSize,
6001 nvmlDeviceSetVgpuCapabilities,
6002 nvmlDeviceGetGridLicensableFeatures_v4,
6003 nvmlGetVgpuDriverCapabilities,
6004 nvmlDeviceGetVgpuCapabilities,
6005 nvmlDeviceGetSupportedVgpus,
6006 nvmlDeviceGetCreatableVgpus,
6007 nvmlVgpuTypeGetClass,
6008 nvmlVgpuTypeGetName,
6009 nvmlVgpuTypeGetGpuInstanceProfileId,
6010 nvmlVgpuTypeGetDeviceID,
6011 nvmlVgpuTypeGetFramebufferSize,
6012 nvmlVgpuTypeGetNumDisplayHeads,
6013 nvmlVgpuTypeGetResolution,
6014 nvmlVgpuTypeGetLicense,
6015 nvmlVgpuTypeGetFrameRateLimit,
6016 nvmlVgpuTypeGetMaxInstances,
6017 nvmlVgpuTypeGetMaxInstancesPerVm,
6018 nvmlVgpuTypeGetBAR1Info,
6019 nvmlDeviceGetActiveVgpus,
6020 nvmlVgpuInstanceGetVmID,
6021 nvmlVgpuInstanceGetUUID,
6022 nvmlVgpuInstanceGetVmDriverVersion,
6023 nvmlVgpuInstanceGetFbUsage,
6024 nvmlVgpuInstanceGetLicenseStatus,
6025 nvmlVgpuInstanceGetType,
6026 nvmlVgpuInstanceGetFrameRateLimit,
6027 nvmlVgpuInstanceGetEccMode,
6028 nvmlVgpuInstanceGetEncoderCapacity,
6029 nvmlVgpuInstanceSetEncoderCapacity,
6030 nvmlVgpuInstanceGetEncoderStats,
6031 nvmlVgpuInstanceGetEncoderSessions,
6032 nvmlVgpuInstanceGetFBCStats,
6033 nvmlVgpuInstanceGetFBCSessions,
6034 nvmlVgpuInstanceGetGpuInstanceId,
6035 nvmlVgpuInstanceGetGpuPciId,
6036 nvmlVgpuTypeGetCapabilities,
6037 nvmlVgpuInstanceGetMdevUUID,
6038 nvmlVgpuInstanceGetMetadata,
6039 nvmlDeviceGetVgpuMetadata,
6040 nvmlGetVgpuCompatibility,
6041 nvmlDeviceGetPgpuMetadataString,
6042 nvmlDeviceGetVgpuSchedulerLog,
6043 nvmlDeviceGetVgpuSchedulerState,
6044 nvmlDeviceGetVgpuSchedulerCapabilities,
6045 nvmlDeviceSetVgpuSchedulerState,
6046 nvmlGetVgpuVersion,
6047 nvmlSetVgpuVersion,
6048 nvmlDeviceGetVgpuUtilization,
6049 nvmlDeviceGetVgpuInstancesUtilizationInfo,
6050 nvmlDeviceGetVgpuProcessUtilization,
6051 nvmlDeviceGetVgpuProcessesUtilizationInfo,
6052 nvmlVgpuInstanceGetAccountingMode,
6053 nvmlVgpuInstanceGetAccountingPids,
6054 nvmlVgpuInstanceGetAccountingStats,
6055 nvmlVgpuInstanceClearAccountingPids,
6056 nvmlVgpuInstanceGetLicenseInfo_v2,
6057 nvmlGetExcludedDeviceCount,
6058 nvmlGetExcludedDeviceInfoByIndex,
6059 nvmlDeviceSetMigMode,
6060 nvmlDeviceGetMigMode,
6061 nvmlDeviceGetGpuInstanceProfileInfo,
6062 nvmlDeviceGetGpuInstanceProfileInfoV,
6063 nvmlDeviceGetGpuInstancePossiblePlacements_v2,
6064 nvmlDeviceGetGpuInstanceRemainingCapacity,
6065 nvmlDeviceCreateGpuInstance,
6066 nvmlDeviceCreateGpuInstanceWithPlacement,
6067 nvmlGpuInstanceDestroy,
6068 nvmlDeviceGetGpuInstances,
6069 nvmlDeviceGetGpuInstanceById,
6070 nvmlGpuInstanceGetInfo,
6071 nvmlGpuInstanceGetComputeInstanceProfileInfo,
6072 nvmlGpuInstanceGetComputeInstanceProfileInfoV,
6073 nvmlGpuInstanceGetComputeInstanceRemainingCapacity,
6074 nvmlGpuInstanceGetComputeInstancePossiblePlacements,
6075 nvmlGpuInstanceCreateComputeInstance,
6076 nvmlGpuInstanceCreateComputeInstanceWithPlacement,
6077 nvmlComputeInstanceDestroy,
6078 nvmlGpuInstanceGetComputeInstances,
6079 nvmlGpuInstanceGetComputeInstanceById,
6080 nvmlComputeInstanceGetInfo_v2,
6081 nvmlDeviceIsMigDeviceHandle,
6082 nvmlDeviceGetGpuInstanceId,
6083 nvmlDeviceGetComputeInstanceId,
6084 nvmlDeviceGetMaxMigDeviceCount,
6085 nvmlDeviceGetMigDeviceHandleByIndex,
6086 nvmlDeviceGetDeviceHandleFromMigDeviceHandle,
6087 nvmlGpmMetricsGet,
6088 nvmlGpmSampleFree,
6089 nvmlGpmSampleAlloc,
6090 nvmlGpmSampleGet,
6091 nvmlGpmMigSampleGet,
6092 nvmlGpmQueryDeviceSupport,
6093 nvmlGpmQueryIfStreamingEnabled,
6094 nvmlGpmSetStreamingEnabled,
6095 nvmlDeviceGetCapabilities,
6096 nvmlDeviceWorkloadPowerProfileGetProfilesInfo,
6097 nvmlDeviceWorkloadPowerProfileGetCurrentProfiles,
6098 nvmlDeviceWorkloadPowerProfileSetRequestedProfiles,
6099 nvmlDeviceWorkloadPowerProfileClearRequestedProfiles,
6100 nvmlDevicePowerSmoothingActivatePresetProfile,
6101 nvmlDevicePowerSmoothingUpdatePresetProfileParam,
6102 nvmlDevicePowerSmoothingSetState,
6103 #[cfg(feature = "legacy-functions")]
6104 nvmlInit,
6105 #[cfg(feature = "legacy-functions")]
6106 nvmlDeviceGetCount,
6107 #[cfg(feature = "legacy-functions")]
6108 nvmlDeviceGetHandleByIndex,
6109 #[cfg(feature = "legacy-functions")]
6110 nvmlDeviceGetHandleByPciBusId,
6111 #[cfg(feature = "legacy-functions")]
6112 nvmlDeviceGetPciInfo,
6113 #[cfg(feature = "legacy-functions")]
6114 nvmlDeviceGetPciInfo_v2,
6115 #[cfg(feature = "legacy-functions")]
6116 nvmlDeviceGetNvLinkRemotePciInfo,
6117 #[cfg(feature = "legacy-functions")]
6118 nvmlDeviceGetGridLicensableFeatures,
6119 #[cfg(feature = "legacy-functions")]
6120 nvmlDeviceGetGridLicensableFeatures_v2,
6121 #[cfg(feature = "legacy-functions")]
6122 nvmlDeviceGetGridLicensableFeatures_v3,
6123 #[cfg(feature = "legacy-functions")]
6124 nvmlDeviceRemoveGpu,
6125 #[cfg(feature = "legacy-functions")]
6126 nvmlEventSetWait,
6127 #[cfg(feature = "legacy-functions")]
6128 nvmlDeviceGetAttributes,
6129 #[cfg(feature = "legacy-functions")]
6130 nvmlComputeInstanceGetInfo,
6131 #[cfg(feature = "legacy-functions")]
6132 nvmlDeviceGetComputeRunningProcesses,
6133 #[cfg(feature = "legacy-functions")]
6134 nvmlDeviceGetComputeRunningProcesses_v2,
6135 #[cfg(feature = "legacy-functions")]
6136 nvmlDeviceGetGraphicsRunningProcesses,
6137 #[cfg(feature = "legacy-functions")]
6138 nvmlDeviceGetGraphicsRunningProcesses_v2,
6139 #[cfg(feature = "legacy-functions")]
6140 nvmlDeviceGetMPSComputeRunningProcesses,
6141 #[cfg(feature = "legacy-functions")]
6142 nvmlDeviceGetMPSComputeRunningProcesses_v2,
6143 #[cfg(feature = "legacy-functions")]
6144 nvmlDeviceGetGpuInstancePossiblePlacements,
6145 #[cfg(feature = "legacy-functions")]
6146 nvmlVgpuInstanceGetLicenseInfo,
6147 nvmlDeviceGetDriverModel,
6148 })
6149 }
6150 pub unsafe fn nvmlInit_v2(&self) -> nvmlReturn_t {
6151 (self
6152 .nvmlInit_v2
6153 .as_ref()
6154 .expect("Expected function, got error."))()
6155 }
6156 pub unsafe fn nvmlInitWithFlags(&self, flags: raw::c_uint) -> nvmlReturn_t {
6157 (self
6158 .nvmlInitWithFlags
6159 .as_ref()
6160 .expect("Expected function, got error."))(flags)
6161 }
6162 pub unsafe fn nvmlShutdown(&self) -> nvmlReturn_t {
6163 (self
6164 .nvmlShutdown
6165 .as_ref()
6166 .expect("Expected function, got error."))()
6167 }
6168 pub unsafe fn nvmlErrorString(&self, result: nvmlReturn_t) -> *const raw::c_char {
6169 (self
6170 .nvmlErrorString
6171 .as_ref()
6172 .expect("Expected function, got error."))(result)
6173 }
6174 pub unsafe fn nvmlSystemGetDriverVersion(
6175 &self,
6176 version: *mut raw::c_char,
6177 length: raw::c_uint,
6178 ) -> nvmlReturn_t {
6179 (self
6180 .nvmlSystemGetDriverVersion
6181 .as_ref()
6182 .expect("Expected function, got error."))(version, length)
6183 }
6184 pub unsafe fn nvmlSystemGetNVMLVersion(
6185 &self,
6186 version: *mut raw::c_char,
6187 length: raw::c_uint,
6188 ) -> nvmlReturn_t {
6189 (self
6190 .nvmlSystemGetNVMLVersion
6191 .as_ref()
6192 .expect("Expected function, got error."))(version, length)
6193 }
6194 pub unsafe fn nvmlSystemGetCudaDriverVersion(
6195 &self,
6196 cudaDriverVersion: *mut raw::c_int,
6197 ) -> nvmlReturn_t {
6198 (self
6199 .nvmlSystemGetCudaDriverVersion
6200 .as_ref()
6201 .expect("Expected function, got error."))(cudaDriverVersion)
6202 }
6203 pub unsafe fn nvmlSystemGetCudaDriverVersion_v2(
6204 &self,
6205 cudaDriverVersion: *mut raw::c_int,
6206 ) -> nvmlReturn_t {
6207 (self
6208 .nvmlSystemGetCudaDriverVersion_v2
6209 .as_ref()
6210 .expect("Expected function, got error."))(cudaDriverVersion)
6211 }
6212 pub unsafe fn nvmlSystemGetProcessName(
6213 &self,
6214 pid: raw::c_uint,
6215 name: *mut raw::c_char,
6216 length: raw::c_uint,
6217 ) -> nvmlReturn_t {
6218 (self
6219 .nvmlSystemGetProcessName
6220 .as_ref()
6221 .expect("Expected function, got error."))(pid, name, length)
6222 }
6223 pub unsafe fn nvmlSystemGetHicVersion(
6224 &self,
6225 hwbcCount: *mut raw::c_uint,
6226 hwbcEntries: *mut nvmlHwbcEntry_t,
6227 ) -> nvmlReturn_t {
6228 (self
6229 .nvmlSystemGetHicVersion
6230 .as_ref()
6231 .expect("Expected function, got error."))(hwbcCount, hwbcEntries)
6232 }
6233 pub unsafe fn nvmlSystemGetTopologyGpuSet(
6234 &self,
6235 cpuNumber: raw::c_uint,
6236 count: *mut raw::c_uint,
6237 deviceArray: *mut nvmlDevice_t,
6238 ) -> nvmlReturn_t {
6239 (self
6240 .nvmlSystemGetTopologyGpuSet
6241 .as_ref()
6242 .expect("Expected function, got error."))(cpuNumber, count, deviceArray)
6243 }
6244 pub unsafe fn nvmlSystemGetDriverBranch(
6245 &self,
6246 branchInfo: *mut nvmlSystemDriverBranchInfo_t,
6247 length: raw::c_uint,
6248 ) -> nvmlReturn_t {
6249 (self
6250 .nvmlSystemGetDriverBranch
6251 .as_ref()
6252 .expect("Expected function, got error."))(branchInfo, length)
6253 }
6254 pub unsafe fn nvmlUnitGetCount(&self, unitCount: *mut raw::c_uint) -> nvmlReturn_t {
6255 (self
6256 .nvmlUnitGetCount
6257 .as_ref()
6258 .expect("Expected function, got error."))(unitCount)
6259 }
6260 pub unsafe fn nvmlUnitGetHandleByIndex(
6261 &self,
6262 index: raw::c_uint,
6263 unit: *mut nvmlUnit_t,
6264 ) -> nvmlReturn_t {
6265 (self
6266 .nvmlUnitGetHandleByIndex
6267 .as_ref()
6268 .expect("Expected function, got error."))(index, unit)
6269 }
6270 pub unsafe fn nvmlUnitGetUnitInfo(
6271 &self,
6272 unit: nvmlUnit_t,
6273 info: *mut nvmlUnitInfo_t,
6274 ) -> nvmlReturn_t {
6275 (self
6276 .nvmlUnitGetUnitInfo
6277 .as_ref()
6278 .expect("Expected function, got error."))(unit, info)
6279 }
6280 pub unsafe fn nvmlUnitGetLedState(
6281 &self,
6282 unit: nvmlUnit_t,
6283 state: *mut nvmlLedState_t,
6284 ) -> nvmlReturn_t {
6285 (self
6286 .nvmlUnitGetLedState
6287 .as_ref()
6288 .expect("Expected function, got error."))(unit, state)
6289 }
6290 pub unsafe fn nvmlUnitGetPsuInfo(
6291 &self,
6292 unit: nvmlUnit_t,
6293 psu: *mut nvmlPSUInfo_t,
6294 ) -> nvmlReturn_t {
6295 (self
6296 .nvmlUnitGetPsuInfo
6297 .as_ref()
6298 .expect("Expected function, got error."))(unit, psu)
6299 }
6300 pub unsafe fn nvmlUnitGetTemperature(
6301 &self,
6302 unit: nvmlUnit_t,
6303 type_: raw::c_uint,
6304 temp: *mut raw::c_uint,
6305 ) -> nvmlReturn_t {
6306 (self
6307 .nvmlUnitGetTemperature
6308 .as_ref()
6309 .expect("Expected function, got error."))(unit, type_, temp)
6310 }
6311 pub unsafe fn nvmlUnitGetFanSpeedInfo(
6312 &self,
6313 unit: nvmlUnit_t,
6314 fanSpeeds: *mut nvmlUnitFanSpeeds_t,
6315 ) -> nvmlReturn_t {
6316 (self
6317 .nvmlUnitGetFanSpeedInfo
6318 .as_ref()
6319 .expect("Expected function, got error."))(unit, fanSpeeds)
6320 }
6321 pub unsafe fn nvmlUnitGetDevices(
6322 &self,
6323 unit: nvmlUnit_t,
6324 deviceCount: *mut raw::c_uint,
6325 devices: *mut nvmlDevice_t,
6326 ) -> nvmlReturn_t {
6327 (self
6328 .nvmlUnitGetDevices
6329 .as_ref()
6330 .expect("Expected function, got error."))(unit, deviceCount, devices)
6331 }
6332 pub unsafe fn nvmlDeviceGetCount_v2(&self, deviceCount: *mut raw::c_uint) -> nvmlReturn_t {
6333 (self
6334 .nvmlDeviceGetCount_v2
6335 .as_ref()
6336 .expect("Expected function, got error."))(deviceCount)
6337 }
6338 pub unsafe fn nvmlDeviceGetAttributes_v2(
6339 &self,
6340 device: nvmlDevice_t,
6341 attributes: *mut nvmlDeviceAttributes_t,
6342 ) -> nvmlReturn_t {
6343 (self
6344 .nvmlDeviceGetAttributes_v2
6345 .as_ref()
6346 .expect("Expected function, got error."))(device, attributes)
6347 }
6348 pub unsafe fn nvmlDeviceGetHandleByIndex_v2(
6349 &self,
6350 index: raw::c_uint,
6351 device: *mut nvmlDevice_t,
6352 ) -> nvmlReturn_t {
6353 (self
6354 .nvmlDeviceGetHandleByIndex_v2
6355 .as_ref()
6356 .expect("Expected function, got error."))(index, device)
6357 }
6358 pub unsafe fn nvmlDeviceGetHandleBySerial(
6359 &self,
6360 serial: *const raw::c_char,
6361 device: *mut nvmlDevice_t,
6362 ) -> nvmlReturn_t {
6363 (self
6364 .nvmlDeviceGetHandleBySerial
6365 .as_ref()
6366 .expect("Expected function, got error."))(serial, device)
6367 }
6368 pub unsafe fn nvmlDeviceGetHandleByUUID(
6369 &self,
6370 uuid: *const raw::c_char,
6371 device: *mut nvmlDevice_t,
6372 ) -> nvmlReturn_t {
6373 (self
6374 .nvmlDeviceGetHandleByUUID
6375 .as_ref()
6376 .expect("Expected function, got error."))(uuid, device)
6377 }
6378 pub unsafe fn nvmlDeviceGetHandleByPciBusId_v2(
6379 &self,
6380 pciBusId: *const raw::c_char,
6381 device: *mut nvmlDevice_t,
6382 ) -> nvmlReturn_t {
6383 (self
6384 .nvmlDeviceGetHandleByPciBusId_v2
6385 .as_ref()
6386 .expect("Expected function, got error."))(pciBusId, device)
6387 }
6388 pub unsafe fn nvmlDeviceGetName(
6389 &self,
6390 device: nvmlDevice_t,
6391 name: *mut raw::c_char,
6392 length: raw::c_uint,
6393 ) -> nvmlReturn_t {
6394 (self
6395 .nvmlDeviceGetName
6396 .as_ref()
6397 .expect("Expected function, got error."))(device, name, length)
6398 }
6399 pub unsafe fn nvmlDeviceGetBrand(
6400 &self,
6401 device: nvmlDevice_t,
6402 type_: *mut nvmlBrandType_t,
6403 ) -> nvmlReturn_t {
6404 (self
6405 .nvmlDeviceGetBrand
6406 .as_ref()
6407 .expect("Expected function, got error."))(device, type_)
6408 }
6409 pub unsafe fn nvmlDeviceGetIndex(
6410 &self,
6411 device: nvmlDevice_t,
6412 index: *mut raw::c_uint,
6413 ) -> nvmlReturn_t {
6414 (self
6415 .nvmlDeviceGetIndex
6416 .as_ref()
6417 .expect("Expected function, got error."))(device, index)
6418 }
6419 pub unsafe fn nvmlDeviceGetSerial(
6420 &self,
6421 device: nvmlDevice_t,
6422 serial: *mut raw::c_char,
6423 length: raw::c_uint,
6424 ) -> nvmlReturn_t {
6425 (self
6426 .nvmlDeviceGetSerial
6427 .as_ref()
6428 .expect("Expected function, got error."))(device, serial, length)
6429 }
6430 pub unsafe fn nvmlDeviceGetModuleId(
6431 &self,
6432 device: nvmlDevice_t,
6433 moduleId: *mut raw::c_uint,
6434 ) -> nvmlReturn_t {
6435 (self
6436 .nvmlDeviceGetModuleId
6437 .as_ref()
6438 .expect("Expected function, got error."))(device, moduleId)
6439 }
6440 pub unsafe fn nvmlDeviceGetC2cModeInfoV(
6441 &self,
6442 device: nvmlDevice_t,
6443 c2cModeInfo: *mut nvmlC2cModeInfo_v1_t,
6444 ) -> nvmlReturn_t {
6445 (self
6446 .nvmlDeviceGetC2cModeInfoV
6447 .as_ref()
6448 .expect("Expected function, got error."))(device, c2cModeInfo)
6449 }
6450 pub unsafe fn nvmlDeviceGetMemoryAffinity(
6451 &self,
6452 device: nvmlDevice_t,
6453 nodeSetSize: raw::c_uint,
6454 nodeSet: *mut raw::c_ulong,
6455 scope: nvmlAffinityScope_t,
6456 ) -> nvmlReturn_t {
6457 (self
6458 .nvmlDeviceGetMemoryAffinity
6459 .as_ref()
6460 .expect("Expected function, got error."))(device, nodeSetSize, nodeSet, scope)
6461 }
6462 pub unsafe fn nvmlDeviceGetCpuAffinityWithinScope(
6463 &self,
6464 device: nvmlDevice_t,
6465 cpuSetSize: raw::c_uint,
6466 cpuSet: *mut raw::c_ulong,
6467 scope: nvmlAffinityScope_t,
6468 ) -> nvmlReturn_t {
6469 (self
6470 .nvmlDeviceGetCpuAffinityWithinScope
6471 .as_ref()
6472 .expect("Expected function, got error."))(device, cpuSetSize, cpuSet, scope)
6473 }
6474 pub unsafe fn nvmlDeviceGetCpuAffinity(
6475 &self,
6476 device: nvmlDevice_t,
6477 cpuSetSize: raw::c_uint,
6478 cpuSet: *mut raw::c_ulong,
6479 ) -> nvmlReturn_t {
6480 (self
6481 .nvmlDeviceGetCpuAffinity
6482 .as_ref()
6483 .expect("Expected function, got error."))(device, cpuSetSize, cpuSet)
6484 }
6485 pub unsafe fn nvmlDeviceSetCpuAffinity(&self, device: nvmlDevice_t) -> nvmlReturn_t {
6486 (self
6487 .nvmlDeviceSetCpuAffinity
6488 .as_ref()
6489 .expect("Expected function, got error."))(device)
6490 }
6491 pub unsafe fn nvmlDeviceClearCpuAffinity(&self, device: nvmlDevice_t) -> nvmlReturn_t {
6492 (self
6493 .nvmlDeviceClearCpuAffinity
6494 .as_ref()
6495 .expect("Expected function, got error."))(device)
6496 }
6497 pub unsafe fn nvmlDeviceGetNumaNodeId(
6498 &self,
6499 device: nvmlDevice_t,
6500 node: *mut raw::c_uint,
6501 ) -> nvmlReturn_t {
6502 (self
6503 .nvmlDeviceGetNumaNodeId
6504 .as_ref()
6505 .expect("Expected function, got error."))(device, node)
6506 }
6507 pub unsafe fn nvmlDeviceGetTopologyCommonAncestor(
6508 &self,
6509 device1: nvmlDevice_t,
6510 device2: nvmlDevice_t,
6511 pathInfo: *mut nvmlGpuTopologyLevel_t,
6512 ) -> nvmlReturn_t {
6513 (self
6514 .nvmlDeviceGetTopologyCommonAncestor
6515 .as_ref()
6516 .expect("Expected function, got error."))(device1, device2, pathInfo)
6517 }
6518 pub unsafe fn nvmlDeviceGetTopologyNearestGpus(
6519 &self,
6520 device: nvmlDevice_t,
6521 level: nvmlGpuTopologyLevel_t,
6522 count: *mut raw::c_uint,
6523 deviceArray: *mut nvmlDevice_t,
6524 ) -> nvmlReturn_t {
6525 (self
6526 .nvmlDeviceGetTopologyNearestGpus
6527 .as_ref()
6528 .expect("Expected function, got error."))(device, level, count, deviceArray)
6529 }
6530 pub unsafe fn nvmlDeviceGetP2PStatus(
6531 &self,
6532 device1: nvmlDevice_t,
6533 device2: nvmlDevice_t,
6534 p2pIndex: nvmlGpuP2PCapsIndex_t,
6535 p2pStatus: *mut nvmlGpuP2PStatus_t,
6536 ) -> nvmlReturn_t {
6537 (self
6538 .nvmlDeviceGetP2PStatus
6539 .as_ref()
6540 .expect("Expected function, got error."))(device1, device2, p2pIndex, p2pStatus)
6541 }
6542 pub unsafe fn nvmlDeviceGetUUID(
6543 &self,
6544 device: nvmlDevice_t,
6545 uuid: *mut raw::c_char,
6546 length: raw::c_uint,
6547 ) -> nvmlReturn_t {
6548 (self
6549 .nvmlDeviceGetUUID
6550 .as_ref()
6551 .expect("Expected function, got error."))(device, uuid, length)
6552 }
6553 pub unsafe fn nvmlDeviceGetMinorNumber(
6554 &self,
6555 device: nvmlDevice_t,
6556 minorNumber: *mut raw::c_uint,
6557 ) -> nvmlReturn_t {
6558 (self
6559 .nvmlDeviceGetMinorNumber
6560 .as_ref()
6561 .expect("Expected function, got error."))(device, minorNumber)
6562 }
6563 pub unsafe fn nvmlDeviceGetBoardPartNumber(
6564 &self,
6565 device: nvmlDevice_t,
6566 partNumber: *mut raw::c_char,
6567 length: raw::c_uint,
6568 ) -> nvmlReturn_t {
6569 (self
6570 .nvmlDeviceGetBoardPartNumber
6571 .as_ref()
6572 .expect("Expected function, got error."))(device, partNumber, length)
6573 }
6574 pub unsafe fn nvmlDeviceGetInforomVersion(
6575 &self,
6576 device: nvmlDevice_t,
6577 object: nvmlInforomObject_t,
6578 version: *mut raw::c_char,
6579 length: raw::c_uint,
6580 ) -> nvmlReturn_t {
6581 (self
6582 .nvmlDeviceGetInforomVersion
6583 .as_ref()
6584 .expect("Expected function, got error."))(device, object, version, length)
6585 }
6586 pub unsafe fn nvmlDeviceGetInforomImageVersion(
6587 &self,
6588 device: nvmlDevice_t,
6589 version: *mut raw::c_char,
6590 length: raw::c_uint,
6591 ) -> nvmlReturn_t {
6592 (self
6593 .nvmlDeviceGetInforomImageVersion
6594 .as_ref()
6595 .expect("Expected function, got error."))(device, version, length)
6596 }
6597 pub unsafe fn nvmlDeviceGetInforomConfigurationChecksum(
6598 &self,
6599 device: nvmlDevice_t,
6600 checksum: *mut raw::c_uint,
6601 ) -> nvmlReturn_t {
6602 (self
6603 .nvmlDeviceGetInforomConfigurationChecksum
6604 .as_ref()
6605 .expect("Expected function, got error."))(device, checksum)
6606 }
6607 pub unsafe fn nvmlDeviceValidateInforom(&self, device: nvmlDevice_t) -> nvmlReturn_t {
6608 (self
6609 .nvmlDeviceValidateInforom
6610 .as_ref()
6611 .expect("Expected function, got error."))(device)
6612 }
6613 pub unsafe fn nvmlDeviceGetLastBBXFlushTime(
6614 &self,
6615 device: nvmlDevice_t,
6616 timestamp: *mut raw::c_ulonglong,
6617 durationUs: *mut raw::c_ulong,
6618 ) -> nvmlReturn_t {
6619 (self
6620 .nvmlDeviceGetLastBBXFlushTime
6621 .as_ref()
6622 .expect("Expected function, got error."))(device, timestamp, durationUs)
6623 }
6624 pub unsafe fn nvmlDeviceGetDisplayMode(
6625 &self,
6626 device: nvmlDevice_t,
6627 display: *mut nvmlEnableState_t,
6628 ) -> nvmlReturn_t {
6629 (self
6630 .nvmlDeviceGetDisplayMode
6631 .as_ref()
6632 .expect("Expected function, got error."))(device, display)
6633 }
6634 pub unsafe fn nvmlDeviceGetDisplayActive(
6635 &self,
6636 device: nvmlDevice_t,
6637 isActive: *mut nvmlEnableState_t,
6638 ) -> nvmlReturn_t {
6639 (self
6640 .nvmlDeviceGetDisplayActive
6641 .as_ref()
6642 .expect("Expected function, got error."))(device, isActive)
6643 }
6644 pub unsafe fn nvmlDeviceGetPersistenceMode(
6645 &self,
6646 device: nvmlDevice_t,
6647 mode: *mut nvmlEnableState_t,
6648 ) -> nvmlReturn_t {
6649 (self
6650 .nvmlDeviceGetPersistenceMode
6651 .as_ref()
6652 .expect("Expected function, got error."))(device, mode)
6653 }
6654 pub unsafe fn nvmlDeviceGetPciInfoExt(
6655 &self,
6656 device: nvmlDevice_t,
6657 pci: *mut nvmlPciInfoExt_t,
6658 ) -> nvmlReturn_t {
6659 (self
6660 .nvmlDeviceGetPciInfoExt
6661 .as_ref()
6662 .expect("Expected function, got error."))(device, pci)
6663 }
6664 pub unsafe fn nvmlDeviceGetPciInfo_v3(
6665 &self,
6666 device: nvmlDevice_t,
6667 pci: *mut nvmlPciInfo_t,
6668 ) -> nvmlReturn_t {
6669 (self
6670 .nvmlDeviceGetPciInfo_v3
6671 .as_ref()
6672 .expect("Expected function, got error."))(device, pci)
6673 }
6674 pub unsafe fn nvmlDeviceGetMaxPcieLinkGeneration(
6675 &self,
6676 device: nvmlDevice_t,
6677 maxLinkGen: *mut raw::c_uint,
6678 ) -> nvmlReturn_t {
6679 (self
6680 .nvmlDeviceGetMaxPcieLinkGeneration
6681 .as_ref()
6682 .expect("Expected function, got error."))(device, maxLinkGen)
6683 }
6684 pub unsafe fn nvmlDeviceGetGpuMaxPcieLinkGeneration(
6685 &self,
6686 device: nvmlDevice_t,
6687 maxLinkGenDevice: *mut raw::c_uint,
6688 ) -> nvmlReturn_t {
6689 (self
6690 .nvmlDeviceGetGpuMaxPcieLinkGeneration
6691 .as_ref()
6692 .expect("Expected function, got error."))(device, maxLinkGenDevice)
6693 }
6694 pub unsafe fn nvmlDeviceGetMaxPcieLinkWidth(
6695 &self,
6696 device: nvmlDevice_t,
6697 maxLinkWidth: *mut raw::c_uint,
6698 ) -> nvmlReturn_t {
6699 (self
6700 .nvmlDeviceGetMaxPcieLinkWidth
6701 .as_ref()
6702 .expect("Expected function, got error."))(device, maxLinkWidth)
6703 }
6704 pub unsafe fn nvmlDeviceGetCurrPcieLinkGeneration(
6705 &self,
6706 device: nvmlDevice_t,
6707 currLinkGen: *mut raw::c_uint,
6708 ) -> nvmlReturn_t {
6709 (self
6710 .nvmlDeviceGetCurrPcieLinkGeneration
6711 .as_ref()
6712 .expect("Expected function, got error."))(device, currLinkGen)
6713 }
6714 pub unsafe fn nvmlDeviceGetCurrPcieLinkWidth(
6715 &self,
6716 device: nvmlDevice_t,
6717 currLinkWidth: *mut raw::c_uint,
6718 ) -> nvmlReturn_t {
6719 (self
6720 .nvmlDeviceGetCurrPcieLinkWidth
6721 .as_ref()
6722 .expect("Expected function, got error."))(device, currLinkWidth)
6723 }
6724 pub unsafe fn nvmlDeviceGetPcieThroughput(
6725 &self,
6726 device: nvmlDevice_t,
6727 counter: nvmlPcieUtilCounter_t,
6728 value: *mut raw::c_uint,
6729 ) -> nvmlReturn_t {
6730 (self
6731 .nvmlDeviceGetPcieThroughput
6732 .as_ref()
6733 .expect("Expected function, got error."))(device, counter, value)
6734 }
6735 pub unsafe fn nvmlDeviceGetPcieReplayCounter(
6736 &self,
6737 device: nvmlDevice_t,
6738 value: *mut raw::c_uint,
6739 ) -> nvmlReturn_t {
6740 (self
6741 .nvmlDeviceGetPcieReplayCounter
6742 .as_ref()
6743 .expect("Expected function, got error."))(device, value)
6744 }
6745 pub unsafe fn nvmlDeviceGetClockInfo(
6746 &self,
6747 device: nvmlDevice_t,
6748 type_: nvmlClockType_t,
6749 clock: *mut raw::c_uint,
6750 ) -> nvmlReturn_t {
6751 (self
6752 .nvmlDeviceGetClockInfo
6753 .as_ref()
6754 .expect("Expected function, got error."))(device, type_, clock)
6755 }
6756 pub unsafe fn nvmlDeviceGetMaxClockInfo(
6757 &self,
6758 device: nvmlDevice_t,
6759 type_: nvmlClockType_t,
6760 clock: *mut raw::c_uint,
6761 ) -> nvmlReturn_t {
6762 (self
6763 .nvmlDeviceGetMaxClockInfo
6764 .as_ref()
6765 .expect("Expected function, got error."))(device, type_, clock)
6766 }
6767 pub unsafe fn nvmlDeviceGetGpcClkVfOffset(
6768 &self,
6769 device: nvmlDevice_t,
6770 offset: *mut raw::c_int,
6771 ) -> nvmlReturn_t {
6772 (self
6773 .nvmlDeviceGetGpcClkVfOffset
6774 .as_ref()
6775 .expect("Expected function, got error."))(device, offset)
6776 }
6777 pub unsafe fn nvmlDeviceGetApplicationsClock(
6778 &self,
6779 device: nvmlDevice_t,
6780 clockType: nvmlClockType_t,
6781 clockMHz: *mut raw::c_uint,
6782 ) -> nvmlReturn_t {
6783 (self
6784 .nvmlDeviceGetApplicationsClock
6785 .as_ref()
6786 .expect("Expected function, got error."))(device, clockType, clockMHz)
6787 }
6788 pub unsafe fn nvmlDeviceGetDefaultApplicationsClock(
6789 &self,
6790 device: nvmlDevice_t,
6791 clockType: nvmlClockType_t,
6792 clockMHz: *mut raw::c_uint,
6793 ) -> nvmlReturn_t {
6794 (self
6795 .nvmlDeviceGetDefaultApplicationsClock
6796 .as_ref()
6797 .expect("Expected function, got error."))(device, clockType, clockMHz)
6798 }
6799 pub unsafe fn nvmlDeviceGetClock(
6800 &self,
6801 device: nvmlDevice_t,
6802 clockType: nvmlClockType_t,
6803 clockId: nvmlClockId_t,
6804 clockMHz: *mut raw::c_uint,
6805 ) -> nvmlReturn_t {
6806 (self
6807 .nvmlDeviceGetClock
6808 .as_ref()
6809 .expect("Expected function, got error."))(device, clockType, clockId, clockMHz)
6810 }
6811 pub unsafe fn nvmlDeviceGetMaxCustomerBoostClock(
6812 &self,
6813 device: nvmlDevice_t,
6814 clockType: nvmlClockType_t,
6815 clockMHz: *mut raw::c_uint,
6816 ) -> nvmlReturn_t {
6817 (self
6818 .nvmlDeviceGetMaxCustomerBoostClock
6819 .as_ref()
6820 .expect("Expected function, got error."))(device, clockType, clockMHz)
6821 }
6822 pub unsafe fn nvmlDeviceGetSupportedMemoryClocks(
6823 &self,
6824 device: nvmlDevice_t,
6825 count: *mut raw::c_uint,
6826 clocksMHz: *mut raw::c_uint,
6827 ) -> nvmlReturn_t {
6828 (self
6829 .nvmlDeviceGetSupportedMemoryClocks
6830 .as_ref()
6831 .expect("Expected function, got error."))(device, count, clocksMHz)
6832 }
6833 pub unsafe fn nvmlDeviceGetSupportedGraphicsClocks(
6834 &self,
6835 device: nvmlDevice_t,
6836 memoryClockMHz: raw::c_uint,
6837 count: *mut raw::c_uint,
6838 clocksMHz: *mut raw::c_uint,
6839 ) -> nvmlReturn_t {
6840 (self
6841 .nvmlDeviceGetSupportedGraphicsClocks
6842 .as_ref()
6843 .expect("Expected function, got error."))(
6844 device, memoryClockMHz, count, clocksMHz
6845 )
6846 }
6847 pub unsafe fn nvmlDeviceGetAutoBoostedClocksEnabled(
6848 &self,
6849 device: nvmlDevice_t,
6850 isEnabled: *mut nvmlEnableState_t,
6851 defaultIsEnabled: *mut nvmlEnableState_t,
6852 ) -> nvmlReturn_t {
6853 (self
6854 .nvmlDeviceGetAutoBoostedClocksEnabled
6855 .as_ref()
6856 .expect("Expected function, got error."))(device, isEnabled, defaultIsEnabled)
6857 }
6858 pub unsafe fn nvmlDeviceGetFanSpeed(
6859 &self,
6860 device: nvmlDevice_t,
6861 speed: *mut raw::c_uint,
6862 ) -> nvmlReturn_t {
6863 (self
6864 .nvmlDeviceGetFanSpeed
6865 .as_ref()
6866 .expect("Expected function, got error."))(device, speed)
6867 }
6868 pub unsafe fn nvmlDeviceGetFanSpeed_v2(
6869 &self,
6870 device: nvmlDevice_t,
6871 fan: raw::c_uint,
6872 speed: *mut raw::c_uint,
6873 ) -> nvmlReturn_t {
6874 (self
6875 .nvmlDeviceGetFanSpeed_v2
6876 .as_ref()
6877 .expect("Expected function, got error."))(device, fan, speed)
6878 }
6879 pub unsafe fn nvmlDeviceGetFanSpeedRPM(
6880 &self,
6881 device: nvmlDevice_t,
6882 fanSpeed: *mut nvmlFanSpeedInfo_t,
6883 ) -> nvmlReturn_t {
6884 (self
6885 .nvmlDeviceGetFanSpeedRPM
6886 .as_ref()
6887 .expect("Expected function, got error."))(device, fanSpeed)
6888 }
6889 pub unsafe fn nvmlDeviceGetTargetFanSpeed(
6890 &self,
6891 device: nvmlDevice_t,
6892 fan: raw::c_uint,
6893 targetSpeed: *mut raw::c_uint,
6894 ) -> nvmlReturn_t {
6895 (self
6896 .nvmlDeviceGetTargetFanSpeed
6897 .as_ref()
6898 .expect("Expected function, got error."))(device, fan, targetSpeed)
6899 }
6900 pub unsafe fn nvmlDeviceGetMinMaxFanSpeed(
6901 &self,
6902 device: nvmlDevice_t,
6903 minSpeed: *mut raw::c_uint,
6904 maxSpeed: *mut raw::c_uint,
6905 ) -> nvmlReturn_t {
6906 (self
6907 .nvmlDeviceGetMinMaxFanSpeed
6908 .as_ref()
6909 .expect("Expected function, got error."))(device, minSpeed, maxSpeed)
6910 }
6911 pub unsafe fn nvmlDeviceGetFanControlPolicy_v2(
6912 &self,
6913 device: nvmlDevice_t,
6914 fan: raw::c_uint,
6915 policy: *mut nvmlFanControlPolicy_t,
6916 ) -> nvmlReturn_t {
6917 (self
6918 .nvmlDeviceGetFanControlPolicy_v2
6919 .as_ref()
6920 .expect("Expected function, got error."))(device, fan, policy)
6921 }
6922 pub unsafe fn nvmlDeviceGetNumFans(
6923 &self,
6924 device: nvmlDevice_t,
6925 numFans: *mut raw::c_uint,
6926 ) -> nvmlReturn_t {
6927 (self
6928 .nvmlDeviceGetNumFans
6929 .as_ref()
6930 .expect("Expected function, got error."))(device, numFans)
6931 }
6932 pub unsafe fn nvmlDeviceGetTemperature(
6933 &self,
6934 device: nvmlDevice_t,
6935 sensorType: nvmlTemperatureSensors_t,
6936 temp: *mut raw::c_uint,
6937 ) -> nvmlReturn_t {
6938 (self
6939 .nvmlDeviceGetTemperature
6940 .as_ref()
6941 .expect("Expected function, got error."))(device, sensorType, temp)
6942 }
6943 pub unsafe fn nvmlDeviceGetCoolerInfo(
6944 &self,
6945 device: nvmlDevice_t,
6946 coolerInfo: *mut nvmlCoolerInfo_t,
6947 ) -> nvmlReturn_t {
6948 (self
6949 .nvmlDeviceGetCoolerInfo
6950 .as_ref()
6951 .expect("Expected function, got error."))(device, coolerInfo)
6952 }
6953 pub unsafe fn nvmlDeviceGetTemperatureV(
6954 &self,
6955 device: nvmlDevice_t,
6956 temperature: *mut nvmlTemperature_t,
6957 ) -> nvmlReturn_t {
6958 (self
6959 .nvmlDeviceGetTemperatureV
6960 .as_ref()
6961 .expect("Expected function, got error."))(device, temperature)
6962 }
6963 pub unsafe fn nvmlDeviceGetTemperatureThreshold(
6964 &self,
6965 device: nvmlDevice_t,
6966 thresholdType: nvmlTemperatureThresholds_t,
6967 temp: *mut raw::c_uint,
6968 ) -> nvmlReturn_t {
6969 (self
6970 .nvmlDeviceGetTemperatureThreshold
6971 .as_ref()
6972 .expect("Expected function, got error."))(device, thresholdType, temp)
6973 }
6974 pub unsafe fn nvmlDeviceGetMarginTemperature(
6975 &self,
6976 device: nvmlDevice_t,
6977 marginTempInfo: *mut nvmlMarginTemperature_t,
6978 ) -> nvmlReturn_t {
6979 (self
6980 .nvmlDeviceGetMarginTemperature
6981 .as_ref()
6982 .expect("Expected function, got error."))(device, marginTempInfo)
6983 }
6984 pub unsafe fn nvmlDeviceGetThermalSettings(
6985 &self,
6986 device: nvmlDevice_t,
6987 sensorIndex: raw::c_uint,
6988 pThermalSettings: *mut nvmlGpuThermalSettings_t,
6989 ) -> nvmlReturn_t {
6990 (self
6991 .nvmlDeviceGetThermalSettings
6992 .as_ref()
6993 .expect("Expected function, got error."))(device, sensorIndex, pThermalSettings)
6994 }
6995 pub unsafe fn nvmlDeviceGetPerformanceState(
6996 &self,
6997 device: nvmlDevice_t,
6998 pState: *mut nvmlPstates_t,
6999 ) -> nvmlReturn_t {
7000 (self
7001 .nvmlDeviceGetPerformanceState
7002 .as_ref()
7003 .expect("Expected function, got error."))(device, pState)
7004 }
7005 pub unsafe fn nvmlDeviceGetCurrentClocksEventReasons(
7006 &self,
7007 device: nvmlDevice_t,
7008 clocksEventReasons: *mut raw::c_ulonglong,
7009 ) -> nvmlReturn_t {
7010 (self
7011 .nvmlDeviceGetCurrentClocksEventReasons
7012 .as_ref()
7013 .expect("Expected function, got error."))(device, clocksEventReasons)
7014 }
7015 pub unsafe fn nvmlDeviceGetCurrentClocksThrottleReasons(
7016 &self,
7017 device: nvmlDevice_t,
7018 clocksThrottleReasons: *mut raw::c_ulonglong,
7019 ) -> nvmlReturn_t {
7020 (self
7021 .nvmlDeviceGetCurrentClocksThrottleReasons
7022 .as_ref()
7023 .expect("Expected function, got error."))(device, clocksThrottleReasons)
7024 }
7025 pub unsafe fn nvmlDeviceGetSupportedClocksEventReasons(
7026 &self,
7027 device: nvmlDevice_t,
7028 supportedClocksEventReasons: *mut raw::c_ulonglong,
7029 ) -> nvmlReturn_t {
7030 (self
7031 .nvmlDeviceGetSupportedClocksEventReasons
7032 .as_ref()
7033 .expect("Expected function, got error."))(device, supportedClocksEventReasons)
7034 }
7035 pub unsafe fn nvmlDeviceGetSupportedClocksThrottleReasons(
7036 &self,
7037 device: nvmlDevice_t,
7038 supportedClocksThrottleReasons: *mut raw::c_ulonglong,
7039 ) -> nvmlReturn_t {
7040 (self
7041 .nvmlDeviceGetSupportedClocksThrottleReasons
7042 .as_ref()
7043 .expect("Expected function, got error."))(device, supportedClocksThrottleReasons)
7044 }
7045 pub unsafe fn nvmlDeviceGetPowerState(
7046 &self,
7047 device: nvmlDevice_t,
7048 pState: *mut nvmlPstates_t,
7049 ) -> nvmlReturn_t {
7050 (self
7051 .nvmlDeviceGetPowerState
7052 .as_ref()
7053 .expect("Expected function, got error."))(device, pState)
7054 }
7055 pub unsafe fn nvmlDeviceGetDynamicPstatesInfo(
7056 &self,
7057 device: nvmlDevice_t,
7058 pDynamicPstatesInfo: *mut nvmlGpuDynamicPstatesInfo_t,
7059 ) -> nvmlReturn_t {
7060 (self
7061 .nvmlDeviceGetDynamicPstatesInfo
7062 .as_ref()
7063 .expect("Expected function, got error."))(device, pDynamicPstatesInfo)
7064 }
7065 pub unsafe fn nvmlDeviceGetMemClkVfOffset(
7066 &self,
7067 device: nvmlDevice_t,
7068 offset: *mut raw::c_int,
7069 ) -> nvmlReturn_t {
7070 (self
7071 .nvmlDeviceGetMemClkVfOffset
7072 .as_ref()
7073 .expect("Expected function, got error."))(device, offset)
7074 }
7075 pub unsafe fn nvmlDeviceGetMinMaxClockOfPState(
7076 &self,
7077 device: nvmlDevice_t,
7078 type_: nvmlClockType_t,
7079 pstate: nvmlPstates_t,
7080 minClockMHz: *mut raw::c_uint,
7081 maxClockMHz: *mut raw::c_uint,
7082 ) -> nvmlReturn_t {
7083 (self
7084 .nvmlDeviceGetMinMaxClockOfPState
7085 .as_ref()
7086 .expect("Expected function, got error."))(
7087 device,
7088 type_,
7089 pstate,
7090 minClockMHz,
7091 maxClockMHz,
7092 )
7093 }
7094 pub unsafe fn nvmlDeviceGetSupportedPerformanceStates(
7095 &self,
7096 device: nvmlDevice_t,
7097 pstates: *mut nvmlPstates_t,
7098 size: raw::c_uint,
7099 ) -> nvmlReturn_t {
7100 (self
7101 .nvmlDeviceGetSupportedPerformanceStates
7102 .as_ref()
7103 .expect("Expected function, got error."))(device, pstates, size)
7104 }
7105 pub unsafe fn nvmlDeviceGetGpcClkMinMaxVfOffset(
7106 &self,
7107 device: nvmlDevice_t,
7108 minOffset: *mut raw::c_int,
7109 maxOffset: *mut raw::c_int,
7110 ) -> nvmlReturn_t {
7111 (self
7112 .nvmlDeviceGetGpcClkMinMaxVfOffset
7113 .as_ref()
7114 .expect("Expected function, got error."))(device, minOffset, maxOffset)
7115 }
7116 pub unsafe fn nvmlDeviceGetMemClkMinMaxVfOffset(
7117 &self,
7118 device: nvmlDevice_t,
7119 minOffset: *mut raw::c_int,
7120 maxOffset: *mut raw::c_int,
7121 ) -> nvmlReturn_t {
7122 (self
7123 .nvmlDeviceGetMemClkMinMaxVfOffset
7124 .as_ref()
7125 .expect("Expected function, got error."))(device, minOffset, maxOffset)
7126 }
7127 pub unsafe fn nvmlDeviceGetClockOffsets(
7128 &self,
7129 device: nvmlDevice_t,
7130 info: *mut nvmlClockOffset_t,
7131 ) -> nvmlReturn_t {
7132 (self
7133 .nvmlDeviceGetClockOffsets
7134 .as_ref()
7135 .expect("Expected function, got error."))(device, info)
7136 }
7137 pub unsafe fn nvmlDeviceSetClockOffsets(
7138 &self,
7139 device: nvmlDevice_t,
7140 info: *mut nvmlClockOffset_t,
7141 ) -> nvmlReturn_t {
7142 (self
7143 .nvmlDeviceSetClockOffsets
7144 .as_ref()
7145 .expect("Expected function, got error."))(device, info)
7146 }
7147 pub unsafe fn nvmlDeviceGetPerformanceModes(
7148 &self,
7149 device: nvmlDevice_t,
7150 perfModes: *mut nvmlDevicePerfModes_t,
7151 ) -> nvmlReturn_t {
7152 (self
7153 .nvmlDeviceGetPerformanceModes
7154 .as_ref()
7155 .expect("Expected function, got error."))(device, perfModes)
7156 }
7157 pub unsafe fn nvmlDeviceGetCurrentClockFreqs(
7158 &self,
7159 device: nvmlDevice_t,
7160 currentClockFreqs: *mut nvmlDeviceCurrentClockFreqs_t,
7161 ) -> nvmlReturn_t {
7162 (self
7163 .nvmlDeviceGetCurrentClockFreqs
7164 .as_ref()
7165 .expect("Expected function, got error."))(device, currentClockFreqs)
7166 }
7167 pub unsafe fn nvmlDeviceGetPowerManagementMode(
7168 &self,
7169 device: nvmlDevice_t,
7170 mode: *mut nvmlEnableState_t,
7171 ) -> nvmlReturn_t {
7172 (self
7173 .nvmlDeviceGetPowerManagementMode
7174 .as_ref()
7175 .expect("Expected function, got error."))(device, mode)
7176 }
7177 pub unsafe fn nvmlDeviceGetPowerManagementLimit(
7178 &self,
7179 device: nvmlDevice_t,
7180 limit: *mut raw::c_uint,
7181 ) -> nvmlReturn_t {
7182 (self
7183 .nvmlDeviceGetPowerManagementLimit
7184 .as_ref()
7185 .expect("Expected function, got error."))(device, limit)
7186 }
7187 pub unsafe fn nvmlDeviceGetPowerManagementLimitConstraints(
7188 &self,
7189 device: nvmlDevice_t,
7190 minLimit: *mut raw::c_uint,
7191 maxLimit: *mut raw::c_uint,
7192 ) -> nvmlReturn_t {
7193 (self
7194 .nvmlDeviceGetPowerManagementLimitConstraints
7195 .as_ref()
7196 .expect("Expected function, got error."))(device, minLimit, maxLimit)
7197 }
7198 pub unsafe fn nvmlDeviceGetPowerManagementDefaultLimit(
7199 &self,
7200 device: nvmlDevice_t,
7201 defaultLimit: *mut raw::c_uint,
7202 ) -> nvmlReturn_t {
7203 (self
7204 .nvmlDeviceGetPowerManagementDefaultLimit
7205 .as_ref()
7206 .expect("Expected function, got error."))(device, defaultLimit)
7207 }
7208 pub unsafe fn nvmlDeviceGetPowerUsage(
7209 &self,
7210 device: nvmlDevice_t,
7211 power: *mut raw::c_uint,
7212 ) -> nvmlReturn_t {
7213 (self
7214 .nvmlDeviceGetPowerUsage
7215 .as_ref()
7216 .expect("Expected function, got error."))(device, power)
7217 }
7218 pub unsafe fn nvmlDeviceGetTotalEnergyConsumption(
7219 &self,
7220 device: nvmlDevice_t,
7221 energy: *mut raw::c_ulonglong,
7222 ) -> nvmlReturn_t {
7223 (self
7224 .nvmlDeviceGetTotalEnergyConsumption
7225 .as_ref()
7226 .expect("Expected function, got error."))(device, energy)
7227 }
7228 pub unsafe fn nvmlDeviceGetEnforcedPowerLimit(
7229 &self,
7230 device: nvmlDevice_t,
7231 limit: *mut raw::c_uint,
7232 ) -> nvmlReturn_t {
7233 (self
7234 .nvmlDeviceGetEnforcedPowerLimit
7235 .as_ref()
7236 .expect("Expected function, got error."))(device, limit)
7237 }
7238 pub unsafe fn nvmlDeviceGetGpuOperationMode(
7239 &self,
7240 device: nvmlDevice_t,
7241 current: *mut nvmlGpuOperationMode_t,
7242 pending: *mut nvmlGpuOperationMode_t,
7243 ) -> nvmlReturn_t {
7244 (self
7245 .nvmlDeviceGetGpuOperationMode
7246 .as_ref()
7247 .expect("Expected function, got error."))(device, current, pending)
7248 }
7249 pub unsafe fn nvmlDeviceGetMemoryInfo(
7250 &self,
7251 device: nvmlDevice_t,
7252 memory: *mut nvmlMemory_t,
7253 ) -> nvmlReturn_t {
7254 (self
7255 .nvmlDeviceGetMemoryInfo
7256 .as_ref()
7257 .expect("Expected function, got error."))(device, memory)
7258 }
7259 pub unsafe fn nvmlDeviceGetMemoryInfo_v2(
7260 &self,
7261 device: nvmlDevice_t,
7262 memory: *mut nvmlMemory_v2_t,
7263 ) -> nvmlReturn_t {
7264 (self
7265 .nvmlDeviceGetMemoryInfo_v2
7266 .as_ref()
7267 .expect("Expected function, got error."))(device, memory)
7268 }
7269 pub unsafe fn nvmlDeviceGetComputeMode(
7270 &self,
7271 device: nvmlDevice_t,
7272 mode: *mut nvmlComputeMode_t,
7273 ) -> nvmlReturn_t {
7274 (self
7275 .nvmlDeviceGetComputeMode
7276 .as_ref()
7277 .expect("Expected function, got error."))(device, mode)
7278 }
7279 pub unsafe fn nvmlDeviceGetCudaComputeCapability(
7280 &self,
7281 device: nvmlDevice_t,
7282 major: *mut raw::c_int,
7283 minor: *mut raw::c_int,
7284 ) -> nvmlReturn_t {
7285 (self
7286 .nvmlDeviceGetCudaComputeCapability
7287 .as_ref()
7288 .expect("Expected function, got error."))(device, major, minor)
7289 }
7290 pub unsafe fn nvmlDeviceGetDramEncryptionMode(
7291 &self,
7292 device: nvmlDevice_t,
7293 current: *mut nvmlDramEncryptionInfo_t,
7294 pending: *mut nvmlDramEncryptionInfo_t,
7295 ) -> nvmlReturn_t {
7296 (self
7297 .nvmlDeviceGetDramEncryptionMode
7298 .as_ref()
7299 .expect("Expected function, got error."))(device, current, pending)
7300 }
7301 pub unsafe fn nvmlDeviceSetDramEncryptionMode(
7302 &self,
7303 device: nvmlDevice_t,
7304 dramEncryption: *const nvmlDramEncryptionInfo_t,
7305 ) -> nvmlReturn_t {
7306 (self
7307 .nvmlDeviceSetDramEncryptionMode
7308 .as_ref()
7309 .expect("Expected function, got error."))(device, dramEncryption)
7310 }
7311 pub unsafe fn nvmlDeviceGetEccMode(
7312 &self,
7313 device: nvmlDevice_t,
7314 current: *mut nvmlEnableState_t,
7315 pending: *mut nvmlEnableState_t,
7316 ) -> nvmlReturn_t {
7317 (self
7318 .nvmlDeviceGetEccMode
7319 .as_ref()
7320 .expect("Expected function, got error."))(device, current, pending)
7321 }
7322 pub unsafe fn nvmlDeviceGetDefaultEccMode(
7323 &self,
7324 device: nvmlDevice_t,
7325 defaultMode: *mut nvmlEnableState_t,
7326 ) -> nvmlReturn_t {
7327 (self
7328 .nvmlDeviceGetDefaultEccMode
7329 .as_ref()
7330 .expect("Expected function, got error."))(device, defaultMode)
7331 }
7332 pub unsafe fn nvmlDeviceGetBoardId(
7333 &self,
7334 device: nvmlDevice_t,
7335 boardId: *mut raw::c_uint,
7336 ) -> nvmlReturn_t {
7337 (self
7338 .nvmlDeviceGetBoardId
7339 .as_ref()
7340 .expect("Expected function, got error."))(device, boardId)
7341 }
7342 pub unsafe fn nvmlDeviceGetMultiGpuBoard(
7343 &self,
7344 device: nvmlDevice_t,
7345 multiGpuBool: *mut raw::c_uint,
7346 ) -> nvmlReturn_t {
7347 (self
7348 .nvmlDeviceGetMultiGpuBoard
7349 .as_ref()
7350 .expect("Expected function, got error."))(device, multiGpuBool)
7351 }
7352 pub unsafe fn nvmlDeviceGetTotalEccErrors(
7353 &self,
7354 device: nvmlDevice_t,
7355 errorType: nvmlMemoryErrorType_t,
7356 counterType: nvmlEccCounterType_t,
7357 eccCounts: *mut raw::c_ulonglong,
7358 ) -> nvmlReturn_t {
7359 (self
7360 .nvmlDeviceGetTotalEccErrors
7361 .as_ref()
7362 .expect("Expected function, got error."))(
7363 device, errorType, counterType, eccCounts
7364 )
7365 }
7366 pub unsafe fn nvmlDeviceGetDetailedEccErrors(
7367 &self,
7368 device: nvmlDevice_t,
7369 errorType: nvmlMemoryErrorType_t,
7370 counterType: nvmlEccCounterType_t,
7371 eccCounts: *mut nvmlEccErrorCounts_t,
7372 ) -> nvmlReturn_t {
7373 (self
7374 .nvmlDeviceGetDetailedEccErrors
7375 .as_ref()
7376 .expect("Expected function, got error."))(
7377 device, errorType, counterType, eccCounts
7378 )
7379 }
7380 pub unsafe fn nvmlDeviceGetMemoryErrorCounter(
7381 &self,
7382 device: nvmlDevice_t,
7383 errorType: nvmlMemoryErrorType_t,
7384 counterType: nvmlEccCounterType_t,
7385 locationType: nvmlMemoryLocation_t,
7386 count: *mut raw::c_ulonglong,
7387 ) -> nvmlReturn_t {
7388 (self
7389 .nvmlDeviceGetMemoryErrorCounter
7390 .as_ref()
7391 .expect("Expected function, got error."))(
7392 device,
7393 errorType,
7394 counterType,
7395 locationType,
7396 count,
7397 )
7398 }
7399 pub unsafe fn nvmlDeviceGetUtilizationRates(
7400 &self,
7401 device: nvmlDevice_t,
7402 utilization: *mut nvmlUtilization_t,
7403 ) -> nvmlReturn_t {
7404 (self
7405 .nvmlDeviceGetUtilizationRates
7406 .as_ref()
7407 .expect("Expected function, got error."))(device, utilization)
7408 }
7409 pub unsafe fn nvmlDeviceGetEncoderUtilization(
7410 &self,
7411 device: nvmlDevice_t,
7412 utilization: *mut raw::c_uint,
7413 samplingPeriodUs: *mut raw::c_uint,
7414 ) -> nvmlReturn_t {
7415 (self
7416 .nvmlDeviceGetEncoderUtilization
7417 .as_ref()
7418 .expect("Expected function, got error."))(device, utilization, samplingPeriodUs)
7419 }
7420 pub unsafe fn nvmlDeviceGetEncoderCapacity(
7421 &self,
7422 device: nvmlDevice_t,
7423 encoderQueryType: nvmlEncoderType_t,
7424 encoderCapacity: *mut raw::c_uint,
7425 ) -> nvmlReturn_t {
7426 (self
7427 .nvmlDeviceGetEncoderCapacity
7428 .as_ref()
7429 .expect("Expected function, got error."))(
7430 device, encoderQueryType, encoderCapacity
7431 )
7432 }
7433 pub unsafe fn nvmlDeviceGetEncoderStats(
7434 &self,
7435 device: nvmlDevice_t,
7436 sessionCount: *mut raw::c_uint,
7437 averageFps: *mut raw::c_uint,
7438 averageLatency: *mut raw::c_uint,
7439 ) -> nvmlReturn_t {
7440 (self
7441 .nvmlDeviceGetEncoderStats
7442 .as_ref()
7443 .expect("Expected function, got error."))(
7444 device,
7445 sessionCount,
7446 averageFps,
7447 averageLatency,
7448 )
7449 }
7450 pub unsafe fn nvmlDeviceGetEncoderSessions(
7451 &self,
7452 device: nvmlDevice_t,
7453 sessionCount: *mut raw::c_uint,
7454 sessionInfos: *mut nvmlEncoderSessionInfo_t,
7455 ) -> nvmlReturn_t {
7456 (self
7457 .nvmlDeviceGetEncoderSessions
7458 .as_ref()
7459 .expect("Expected function, got error."))(device, sessionCount, sessionInfos)
7460 }
7461 pub unsafe fn nvmlDeviceGetDecoderUtilization(
7462 &self,
7463 device: nvmlDevice_t,
7464 utilization: *mut raw::c_uint,
7465 samplingPeriodUs: *mut raw::c_uint,
7466 ) -> nvmlReturn_t {
7467 (self
7468 .nvmlDeviceGetDecoderUtilization
7469 .as_ref()
7470 .expect("Expected function, got error."))(device, utilization, samplingPeriodUs)
7471 }
7472 pub unsafe fn nvmlDeviceGetJpgUtilization(
7473 &self,
7474 device: nvmlDevice_t,
7475 utilization: *mut raw::c_uint,
7476 samplingPeriodUs: *mut raw::c_uint,
7477 ) -> nvmlReturn_t {
7478 (self
7479 .nvmlDeviceGetJpgUtilization
7480 .as_ref()
7481 .expect("Expected function, got error."))(device, utilization, samplingPeriodUs)
7482 }
7483 pub unsafe fn nvmlDeviceGetOfaUtilization(
7484 &self,
7485 device: nvmlDevice_t,
7486 utilization: *mut raw::c_uint,
7487 samplingPeriodUs: *mut raw::c_uint,
7488 ) -> nvmlReturn_t {
7489 (self
7490 .nvmlDeviceGetOfaUtilization
7491 .as_ref()
7492 .expect("Expected function, got error."))(device, utilization, samplingPeriodUs)
7493 }
7494 pub unsafe fn nvmlDeviceGetFBCStats(
7495 &self,
7496 device: nvmlDevice_t,
7497 fbcStats: *mut nvmlFBCStats_t,
7498 ) -> nvmlReturn_t {
7499 (self
7500 .nvmlDeviceGetFBCStats
7501 .as_ref()
7502 .expect("Expected function, got error."))(device, fbcStats)
7503 }
7504 pub unsafe fn nvmlDeviceGetFBCSessions(
7505 &self,
7506 device: nvmlDevice_t,
7507 sessionCount: *mut raw::c_uint,
7508 sessionInfo: *mut nvmlFBCSessionInfo_t,
7509 ) -> nvmlReturn_t {
7510 (self
7511 .nvmlDeviceGetFBCSessions
7512 .as_ref()
7513 .expect("Expected function, got error."))(device, sessionCount, sessionInfo)
7514 }
7515 pub unsafe fn nvmlDeviceGetDriverModel_v2(
7516 &self,
7517 device: nvmlDevice_t,
7518 current: *mut nvmlDriverModel_t,
7519 pending: *mut nvmlDriverModel_t,
7520 ) -> nvmlReturn_t {
7521 (self
7522 .nvmlDeviceGetDriverModel_v2
7523 .as_ref()
7524 .expect("Expected function, got error."))(device, current, pending)
7525 }
7526 pub unsafe fn nvmlDeviceGetVbiosVersion(
7527 &self,
7528 device: nvmlDevice_t,
7529 version: *mut raw::c_char,
7530 length: raw::c_uint,
7531 ) -> nvmlReturn_t {
7532 (self
7533 .nvmlDeviceGetVbiosVersion
7534 .as_ref()
7535 .expect("Expected function, got error."))(device, version, length)
7536 }
7537 pub unsafe fn nvmlDeviceGetBridgeChipInfo(
7538 &self,
7539 device: nvmlDevice_t,
7540 bridgeHierarchy: *mut nvmlBridgeChipHierarchy_t,
7541 ) -> nvmlReturn_t {
7542 (self
7543 .nvmlDeviceGetBridgeChipInfo
7544 .as_ref()
7545 .expect("Expected function, got error."))(device, bridgeHierarchy)
7546 }
7547 pub unsafe fn nvmlDeviceGetComputeRunningProcesses_v3(
7548 &self,
7549 device: nvmlDevice_t,
7550 infoCount: *mut raw::c_uint,
7551 infos: *mut nvmlProcessInfo_t,
7552 ) -> nvmlReturn_t {
7553 (self
7554 .nvmlDeviceGetComputeRunningProcesses_v3
7555 .as_ref()
7556 .expect("Expected function, got error."))(device, infoCount, infos)
7557 }
7558 pub unsafe fn nvmlDeviceGetGraphicsRunningProcesses_v3(
7559 &self,
7560 device: nvmlDevice_t,
7561 infoCount: *mut raw::c_uint,
7562 infos: *mut nvmlProcessInfo_t,
7563 ) -> nvmlReturn_t {
7564 (self
7565 .nvmlDeviceGetGraphicsRunningProcesses_v3
7566 .as_ref()
7567 .expect("Expected function, got error."))(device, infoCount, infos)
7568 }
7569 pub unsafe fn nvmlDeviceGetMPSComputeRunningProcesses_v3(
7570 &self,
7571 device: nvmlDevice_t,
7572 infoCount: *mut raw::c_uint,
7573 infos: *mut nvmlProcessInfo_t,
7574 ) -> nvmlReturn_t {
7575 (self
7576 .nvmlDeviceGetMPSComputeRunningProcesses_v3
7577 .as_ref()
7578 .expect("Expected function, got error."))(device, infoCount, infos)
7579 }
7580 pub unsafe fn nvmlDeviceGetRunningProcessDetailList(
7581 &self,
7582 device: nvmlDevice_t,
7583 plist: *mut nvmlProcessDetailList_t,
7584 ) -> nvmlReturn_t {
7585 (self
7586 .nvmlDeviceGetRunningProcessDetailList
7587 .as_ref()
7588 .expect("Expected function, got error."))(device, plist)
7589 }
7590 pub unsafe fn nvmlDeviceOnSameBoard(
7591 &self,
7592 device1: nvmlDevice_t,
7593 device2: nvmlDevice_t,
7594 onSameBoard: *mut raw::c_int,
7595 ) -> nvmlReturn_t {
7596 (self
7597 .nvmlDeviceOnSameBoard
7598 .as_ref()
7599 .expect("Expected function, got error."))(device1, device2, onSameBoard)
7600 }
7601 pub unsafe fn nvmlDeviceGetAPIRestriction(
7602 &self,
7603 device: nvmlDevice_t,
7604 apiType: nvmlRestrictedAPI_t,
7605 isRestricted: *mut nvmlEnableState_t,
7606 ) -> nvmlReturn_t {
7607 (self
7608 .nvmlDeviceGetAPIRestriction
7609 .as_ref()
7610 .expect("Expected function, got error."))(device, apiType, isRestricted)
7611 }
7612 pub unsafe fn nvmlDeviceGetSamples(
7613 &self,
7614 device: nvmlDevice_t,
7615 type_: nvmlSamplingType_t,
7616 lastSeenTimeStamp: raw::c_ulonglong,
7617 sampleValType: *mut nvmlValueType_t,
7618 sampleCount: *mut raw::c_uint,
7619 samples: *mut nvmlSample_t,
7620 ) -> nvmlReturn_t {
7621 (self
7622 .nvmlDeviceGetSamples
7623 .as_ref()
7624 .expect("Expected function, got error."))(
7625 device,
7626 type_,
7627 lastSeenTimeStamp,
7628 sampleValType,
7629 sampleCount,
7630 samples,
7631 )
7632 }
7633 pub unsafe fn nvmlDeviceGetBAR1MemoryInfo(
7634 &self,
7635 device: nvmlDevice_t,
7636 bar1Memory: *mut nvmlBAR1Memory_t,
7637 ) -> nvmlReturn_t {
7638 (self
7639 .nvmlDeviceGetBAR1MemoryInfo
7640 .as_ref()
7641 .expect("Expected function, got error."))(device, bar1Memory)
7642 }
7643 pub unsafe fn nvmlDeviceGetViolationStatus(
7644 &self,
7645 device: nvmlDevice_t,
7646 perfPolicyType: nvmlPerfPolicyType_t,
7647 violTime: *mut nvmlViolationTime_t,
7648 ) -> nvmlReturn_t {
7649 (self
7650 .nvmlDeviceGetViolationStatus
7651 .as_ref()
7652 .expect("Expected function, got error."))(device, perfPolicyType, violTime)
7653 }
7654 pub unsafe fn nvmlDeviceGetIrqNum(
7655 &self,
7656 device: nvmlDevice_t,
7657 irqNum: *mut raw::c_uint,
7658 ) -> nvmlReturn_t {
7659 (self
7660 .nvmlDeviceGetIrqNum
7661 .as_ref()
7662 .expect("Expected function, got error."))(device, irqNum)
7663 }
7664 pub unsafe fn nvmlDeviceGetNumGpuCores(
7665 &self,
7666 device: nvmlDevice_t,
7667 numCores: *mut raw::c_uint,
7668 ) -> nvmlReturn_t {
7669 (self
7670 .nvmlDeviceGetNumGpuCores
7671 .as_ref()
7672 .expect("Expected function, got error."))(device, numCores)
7673 }
7674 pub unsafe fn nvmlDeviceGetPowerSource(
7675 &self,
7676 device: nvmlDevice_t,
7677 powerSource: *mut nvmlPowerSource_t,
7678 ) -> nvmlReturn_t {
7679 (self
7680 .nvmlDeviceGetPowerSource
7681 .as_ref()
7682 .expect("Expected function, got error."))(device, powerSource)
7683 }
7684 pub unsafe fn nvmlDeviceGetMemoryBusWidth(
7685 &self,
7686 device: nvmlDevice_t,
7687 busWidth: *mut raw::c_uint,
7688 ) -> nvmlReturn_t {
7689 (self
7690 .nvmlDeviceGetMemoryBusWidth
7691 .as_ref()
7692 .expect("Expected function, got error."))(device, busWidth)
7693 }
7694 pub unsafe fn nvmlDeviceGetPcieLinkMaxSpeed(
7695 &self,
7696 device: nvmlDevice_t,
7697 maxSpeed: *mut raw::c_uint,
7698 ) -> nvmlReturn_t {
7699 (self
7700 .nvmlDeviceGetPcieLinkMaxSpeed
7701 .as_ref()
7702 .expect("Expected function, got error."))(device, maxSpeed)
7703 }
7704 pub unsafe fn nvmlDeviceGetPcieSpeed(
7705 &self,
7706 device: nvmlDevice_t,
7707 pcieSpeed: *mut raw::c_uint,
7708 ) -> nvmlReturn_t {
7709 (self
7710 .nvmlDeviceGetPcieSpeed
7711 .as_ref()
7712 .expect("Expected function, got error."))(device, pcieSpeed)
7713 }
7714 pub unsafe fn nvmlDeviceGetAdaptiveClockInfoStatus(
7715 &self,
7716 device: nvmlDevice_t,
7717 adaptiveClockStatus: *mut raw::c_uint,
7718 ) -> nvmlReturn_t {
7719 (self
7720 .nvmlDeviceGetAdaptiveClockInfoStatus
7721 .as_ref()
7722 .expect("Expected function, got error."))(device, adaptiveClockStatus)
7723 }
7724 pub unsafe fn nvmlDeviceGetBusType(
7725 &self,
7726 device: nvmlDevice_t,
7727 type_: *mut nvmlBusType_t,
7728 ) -> nvmlReturn_t {
7729 (self
7730 .nvmlDeviceGetBusType
7731 .as_ref()
7732 .expect("Expected function, got error."))(device, type_)
7733 }
7734 pub unsafe fn nvmlDeviceGetGpuFabricInfo(
7735 &self,
7736 device: nvmlDevice_t,
7737 gpuFabricInfo: *mut nvmlGpuFabricInfo_t,
7738 ) -> nvmlReturn_t {
7739 (self
7740 .nvmlDeviceGetGpuFabricInfo
7741 .as_ref()
7742 .expect("Expected function, got error."))(device, gpuFabricInfo)
7743 }
7744 pub unsafe fn nvmlDeviceGetGpuFabricInfoV(
7745 &self,
7746 device: nvmlDevice_t,
7747 gpuFabricInfo: *mut nvmlGpuFabricInfoV_t,
7748 ) -> nvmlReturn_t {
7749 (self
7750 .nvmlDeviceGetGpuFabricInfoV
7751 .as_ref()
7752 .expect("Expected function, got error."))(device, gpuFabricInfo)
7753 }
7754 pub unsafe fn nvmlSystemGetConfComputeCapabilities(
7755 &self,
7756 capabilities: *mut nvmlConfComputeSystemCaps_t,
7757 ) -> nvmlReturn_t {
7758 (self
7759 .nvmlSystemGetConfComputeCapabilities
7760 .as_ref()
7761 .expect("Expected function, got error."))(capabilities)
7762 }
7763 pub unsafe fn nvmlSystemGetConfComputeState(
7764 &self,
7765 state: *mut nvmlConfComputeSystemState_t,
7766 ) -> nvmlReturn_t {
7767 (self
7768 .nvmlSystemGetConfComputeState
7769 .as_ref()
7770 .expect("Expected function, got error."))(state)
7771 }
7772 pub unsafe fn nvmlDeviceGetConfComputeMemSizeInfo(
7773 &self,
7774 device: nvmlDevice_t,
7775 memInfo: *mut nvmlConfComputeMemSizeInfo_t,
7776 ) -> nvmlReturn_t {
7777 (self
7778 .nvmlDeviceGetConfComputeMemSizeInfo
7779 .as_ref()
7780 .expect("Expected function, got error."))(device, memInfo)
7781 }
7782 pub unsafe fn nvmlSystemGetConfComputeGpusReadyState(
7783 &self,
7784 isAcceptingWork: *mut raw::c_uint,
7785 ) -> nvmlReturn_t {
7786 (self
7787 .nvmlSystemGetConfComputeGpusReadyState
7788 .as_ref()
7789 .expect("Expected function, got error."))(isAcceptingWork)
7790 }
7791 pub unsafe fn nvmlDeviceGetConfComputeProtectedMemoryUsage(
7792 &self,
7793 device: nvmlDevice_t,
7794 memory: *mut nvmlMemory_t,
7795 ) -> nvmlReturn_t {
7796 (self
7797 .nvmlDeviceGetConfComputeProtectedMemoryUsage
7798 .as_ref()
7799 .expect("Expected function, got error."))(device, memory)
7800 }
7801 pub unsafe fn nvmlDeviceGetConfComputeGpuCertificate(
7802 &self,
7803 device: nvmlDevice_t,
7804 gpuCert: *mut nvmlConfComputeGpuCertificate_t,
7805 ) -> nvmlReturn_t {
7806 (self
7807 .nvmlDeviceGetConfComputeGpuCertificate
7808 .as_ref()
7809 .expect("Expected function, got error."))(device, gpuCert)
7810 }
7811 pub unsafe fn nvmlDeviceGetConfComputeGpuAttestationReport(
7812 &self,
7813 device: nvmlDevice_t,
7814 gpuAtstReport: *mut nvmlConfComputeGpuAttestationReport_t,
7815 ) -> nvmlReturn_t {
7816 (self
7817 .nvmlDeviceGetConfComputeGpuAttestationReport
7818 .as_ref()
7819 .expect("Expected function, got error."))(device, gpuAtstReport)
7820 }
7821 pub unsafe fn nvmlSystemGetConfComputeKeyRotationThresholdInfo(
7822 &self,
7823 pKeyRotationThrInfo: *mut nvmlConfComputeGetKeyRotationThresholdInfo_t,
7824 ) -> nvmlReturn_t {
7825 (self
7826 .nvmlSystemGetConfComputeKeyRotationThresholdInfo
7827 .as_ref()
7828 .expect("Expected function, got error."))(pKeyRotationThrInfo)
7829 }
7830 pub unsafe fn nvmlDeviceSetConfComputeUnprotectedMemSize(
7831 &self,
7832 device: nvmlDevice_t,
7833 sizeKiB: raw::c_ulonglong,
7834 ) -> nvmlReturn_t {
7835 (self
7836 .nvmlDeviceSetConfComputeUnprotectedMemSize
7837 .as_ref()
7838 .expect("Expected function, got error."))(device, sizeKiB)
7839 }
7840 pub unsafe fn nvmlSystemSetConfComputeGpusReadyState(
7841 &self,
7842 isAcceptingWork: raw::c_uint,
7843 ) -> nvmlReturn_t {
7844 (self
7845 .nvmlSystemSetConfComputeGpusReadyState
7846 .as_ref()
7847 .expect("Expected function, got error."))(isAcceptingWork)
7848 }
7849 pub unsafe fn nvmlSystemSetConfComputeKeyRotationThresholdInfo(
7850 &self,
7851 pKeyRotationThrInfo: *mut nvmlConfComputeSetKeyRotationThresholdInfo_t,
7852 ) -> nvmlReturn_t {
7853 (self
7854 .nvmlSystemSetConfComputeKeyRotationThresholdInfo
7855 .as_ref()
7856 .expect("Expected function, got error."))(pKeyRotationThrInfo)
7857 }
7858 pub unsafe fn nvmlSystemGetConfComputeSettings(
7859 &self,
7860 settings: *mut nvmlSystemConfComputeSettings_t,
7861 ) -> nvmlReturn_t {
7862 (self
7863 .nvmlSystemGetConfComputeSettings
7864 .as_ref()
7865 .expect("Expected function, got error."))(settings)
7866 }
7867 pub unsafe fn nvmlDeviceGetGspFirmwareVersion(
7868 &self,
7869 device: nvmlDevice_t,
7870 version: *mut raw::c_char,
7871 ) -> nvmlReturn_t {
7872 (self
7873 .nvmlDeviceGetGspFirmwareVersion
7874 .as_ref()
7875 .expect("Expected function, got error."))(device, version)
7876 }
7877 pub unsafe fn nvmlDeviceGetGspFirmwareMode(
7878 &self,
7879 device: nvmlDevice_t,
7880 isEnabled: *mut raw::c_uint,
7881 defaultMode: *mut raw::c_uint,
7882 ) -> nvmlReturn_t {
7883 (self
7884 .nvmlDeviceGetGspFirmwareMode
7885 .as_ref()
7886 .expect("Expected function, got error."))(device, isEnabled, defaultMode)
7887 }
7888 pub unsafe fn nvmlDeviceGetSramEccErrorStatus(
7889 &self,
7890 device: nvmlDevice_t,
7891 status: *mut nvmlEccSramErrorStatus_t,
7892 ) -> nvmlReturn_t {
7893 (self
7894 .nvmlDeviceGetSramEccErrorStatus
7895 .as_ref()
7896 .expect("Expected function, got error."))(device, status)
7897 }
7898 pub unsafe fn nvmlDeviceGetAccountingMode(
7899 &self,
7900 device: nvmlDevice_t,
7901 mode: *mut nvmlEnableState_t,
7902 ) -> nvmlReturn_t {
7903 (self
7904 .nvmlDeviceGetAccountingMode
7905 .as_ref()
7906 .expect("Expected function, got error."))(device, mode)
7907 }
7908 pub unsafe fn nvmlDeviceGetAccountingStats(
7909 &self,
7910 device: nvmlDevice_t,
7911 pid: raw::c_uint,
7912 stats: *mut nvmlAccountingStats_t,
7913 ) -> nvmlReturn_t {
7914 (self
7915 .nvmlDeviceGetAccountingStats
7916 .as_ref()
7917 .expect("Expected function, got error."))(device, pid, stats)
7918 }
7919 pub unsafe fn nvmlDeviceGetAccountingPids(
7920 &self,
7921 device: nvmlDevice_t,
7922 count: *mut raw::c_uint,
7923 pids: *mut raw::c_uint,
7924 ) -> nvmlReturn_t {
7925 (self
7926 .nvmlDeviceGetAccountingPids
7927 .as_ref()
7928 .expect("Expected function, got error."))(device, count, pids)
7929 }
7930 pub unsafe fn nvmlDeviceGetAccountingBufferSize(
7931 &self,
7932 device: nvmlDevice_t,
7933 bufferSize: *mut raw::c_uint,
7934 ) -> nvmlReturn_t {
7935 (self
7936 .nvmlDeviceGetAccountingBufferSize
7937 .as_ref()
7938 .expect("Expected function, got error."))(device, bufferSize)
7939 }
7940 pub unsafe fn nvmlDeviceGetRetiredPages(
7941 &self,
7942 device: nvmlDevice_t,
7943 cause: nvmlPageRetirementCause_t,
7944 pageCount: *mut raw::c_uint,
7945 addresses: *mut raw::c_ulonglong,
7946 ) -> nvmlReturn_t {
7947 (self
7948 .nvmlDeviceGetRetiredPages
7949 .as_ref()
7950 .expect("Expected function, got error."))(device, cause, pageCount, addresses)
7951 }
7952 pub unsafe fn nvmlDeviceGetRetiredPages_v2(
7953 &self,
7954 device: nvmlDevice_t,
7955 cause: nvmlPageRetirementCause_t,
7956 pageCount: *mut raw::c_uint,
7957 addresses: *mut raw::c_ulonglong,
7958 timestamps: *mut raw::c_ulonglong,
7959 ) -> nvmlReturn_t {
7960 (self
7961 .nvmlDeviceGetRetiredPages_v2
7962 .as_ref()
7963 .expect("Expected function, got error."))(
7964 device, cause, pageCount, addresses, timestamps,
7965 )
7966 }
7967 pub unsafe fn nvmlDeviceGetRetiredPagesPendingStatus(
7968 &self,
7969 device: nvmlDevice_t,
7970 isPending: *mut nvmlEnableState_t,
7971 ) -> nvmlReturn_t {
7972 (self
7973 .nvmlDeviceGetRetiredPagesPendingStatus
7974 .as_ref()
7975 .expect("Expected function, got error."))(device, isPending)
7976 }
7977 pub unsafe fn nvmlDeviceGetRemappedRows(
7978 &self,
7979 device: nvmlDevice_t,
7980 corrRows: *mut raw::c_uint,
7981 uncRows: *mut raw::c_uint,
7982 isPending: *mut raw::c_uint,
7983 failureOccurred: *mut raw::c_uint,
7984 ) -> nvmlReturn_t {
7985 (self
7986 .nvmlDeviceGetRemappedRows
7987 .as_ref()
7988 .expect("Expected function, got error."))(
7989 device,
7990 corrRows,
7991 uncRows,
7992 isPending,
7993 failureOccurred,
7994 )
7995 }
7996 pub unsafe fn nvmlDeviceGetRowRemapperHistogram(
7997 &self,
7998 device: nvmlDevice_t,
7999 values: *mut nvmlRowRemapperHistogramValues_t,
8000 ) -> nvmlReturn_t {
8001 (self
8002 .nvmlDeviceGetRowRemapperHistogram
8003 .as_ref()
8004 .expect("Expected function, got error."))(device, values)
8005 }
8006 pub unsafe fn nvmlDeviceGetArchitecture(
8007 &self,
8008 device: nvmlDevice_t,
8009 arch: *mut nvmlDeviceArchitecture_t,
8010 ) -> nvmlReturn_t {
8011 (self
8012 .nvmlDeviceGetArchitecture
8013 .as_ref()
8014 .expect("Expected function, got error."))(device, arch)
8015 }
8016 pub unsafe fn nvmlDeviceGetClkMonStatus(
8017 &self,
8018 device: nvmlDevice_t,
8019 status: *mut nvmlClkMonStatus_t,
8020 ) -> nvmlReturn_t {
8021 (self
8022 .nvmlDeviceGetClkMonStatus
8023 .as_ref()
8024 .expect("Expected function, got error."))(device, status)
8025 }
8026 pub unsafe fn nvmlDeviceGetProcessUtilization(
8027 &self,
8028 device: nvmlDevice_t,
8029 utilization: *mut nvmlProcessUtilizationSample_t,
8030 processSamplesCount: *mut raw::c_uint,
8031 lastSeenTimeStamp: raw::c_ulonglong,
8032 ) -> nvmlReturn_t {
8033 (self
8034 .nvmlDeviceGetProcessUtilization
8035 .as_ref()
8036 .expect("Expected function, got error."))(
8037 device,
8038 utilization,
8039 processSamplesCount,
8040 lastSeenTimeStamp,
8041 )
8042 }
8043 pub unsafe fn nvmlDeviceGetProcessesUtilizationInfo(
8044 &self,
8045 device: nvmlDevice_t,
8046 procesesUtilInfo: *mut nvmlProcessesUtilizationInfo_t,
8047 ) -> nvmlReturn_t {
8048 (self
8049 .nvmlDeviceGetProcessesUtilizationInfo
8050 .as_ref()
8051 .expect("Expected function, got error."))(device, procesesUtilInfo)
8052 }
8053 pub unsafe fn nvmlDeviceGetPlatformInfo(
8054 &self,
8055 device: nvmlDevice_t,
8056 platformInfo: *mut nvmlPlatformInfo_t,
8057 ) -> nvmlReturn_t {
8058 (self
8059 .nvmlDeviceGetPlatformInfo
8060 .as_ref()
8061 .expect("Expected function, got error."))(device, platformInfo)
8062 }
8063 pub unsafe fn nvmlUnitSetLedState(
8064 &self,
8065 unit: nvmlUnit_t,
8066 color: nvmlLedColor_t,
8067 ) -> nvmlReturn_t {
8068 (self
8069 .nvmlUnitSetLedState
8070 .as_ref()
8071 .expect("Expected function, got error."))(unit, color)
8072 }
8073 pub unsafe fn nvmlDeviceSetPersistenceMode(
8074 &self,
8075 device: nvmlDevice_t,
8076 mode: nvmlEnableState_t,
8077 ) -> nvmlReturn_t {
8078 (self
8079 .nvmlDeviceSetPersistenceMode
8080 .as_ref()
8081 .expect("Expected function, got error."))(device, mode)
8082 }
8083 pub unsafe fn nvmlDeviceSetComputeMode(
8084 &self,
8085 device: nvmlDevice_t,
8086 mode: nvmlComputeMode_t,
8087 ) -> nvmlReturn_t {
8088 (self
8089 .nvmlDeviceSetComputeMode
8090 .as_ref()
8091 .expect("Expected function, got error."))(device, mode)
8092 }
8093 pub unsafe fn nvmlDeviceSetEccMode(
8094 &self,
8095 device: nvmlDevice_t,
8096 ecc: nvmlEnableState_t,
8097 ) -> nvmlReturn_t {
8098 (self
8099 .nvmlDeviceSetEccMode
8100 .as_ref()
8101 .expect("Expected function, got error."))(device, ecc)
8102 }
8103 pub unsafe fn nvmlDeviceClearEccErrorCounts(
8104 &self,
8105 device: nvmlDevice_t,
8106 counterType: nvmlEccCounterType_t,
8107 ) -> nvmlReturn_t {
8108 (self
8109 .nvmlDeviceClearEccErrorCounts
8110 .as_ref()
8111 .expect("Expected function, got error."))(device, counterType)
8112 }
8113 pub unsafe fn nvmlDeviceSetDriverModel(
8114 &self,
8115 device: nvmlDevice_t,
8116 driverModel: nvmlDriverModel_t,
8117 flags: raw::c_uint,
8118 ) -> nvmlReturn_t {
8119 (self
8120 .nvmlDeviceSetDriverModel
8121 .as_ref()
8122 .expect("Expected function, got error."))(device, driverModel, flags)
8123 }
8124 pub unsafe fn nvmlDeviceSetGpuLockedClocks(
8125 &self,
8126 device: nvmlDevice_t,
8127 minGpuClockMHz: raw::c_uint,
8128 maxGpuClockMHz: raw::c_uint,
8129 ) -> nvmlReturn_t {
8130 (self
8131 .nvmlDeviceSetGpuLockedClocks
8132 .as_ref()
8133 .expect("Expected function, got error."))(device, minGpuClockMHz, maxGpuClockMHz)
8134 }
8135 pub unsafe fn nvmlDeviceResetGpuLockedClocks(&self, device: nvmlDevice_t) -> nvmlReturn_t {
8136 (self
8137 .nvmlDeviceResetGpuLockedClocks
8138 .as_ref()
8139 .expect("Expected function, got error."))(device)
8140 }
8141 pub unsafe fn nvmlDeviceSetMemoryLockedClocks(
8142 &self,
8143 device: nvmlDevice_t,
8144 minMemClockMHz: raw::c_uint,
8145 maxMemClockMHz: raw::c_uint,
8146 ) -> nvmlReturn_t {
8147 (self
8148 .nvmlDeviceSetMemoryLockedClocks
8149 .as_ref()
8150 .expect("Expected function, got error."))(device, minMemClockMHz, maxMemClockMHz)
8151 }
8152 pub unsafe fn nvmlDeviceResetMemoryLockedClocks(&self, device: nvmlDevice_t) -> nvmlReturn_t {
8153 (self
8154 .nvmlDeviceResetMemoryLockedClocks
8155 .as_ref()
8156 .expect("Expected function, got error."))(device)
8157 }
8158 pub unsafe fn nvmlDeviceSetApplicationsClocks(
8159 &self,
8160 device: nvmlDevice_t,
8161 memClockMHz: raw::c_uint,
8162 graphicsClockMHz: raw::c_uint,
8163 ) -> nvmlReturn_t {
8164 (self
8165 .nvmlDeviceSetApplicationsClocks
8166 .as_ref()
8167 .expect("Expected function, got error."))(device, memClockMHz, graphicsClockMHz)
8168 }
8169 pub unsafe fn nvmlDeviceResetApplicationsClocks(&self, device: nvmlDevice_t) -> nvmlReturn_t {
8170 (self
8171 .nvmlDeviceResetApplicationsClocks
8172 .as_ref()
8173 .expect("Expected function, got error."))(device)
8174 }
8175 pub unsafe fn nvmlDeviceSetAutoBoostedClocksEnabled(
8176 &self,
8177 device: nvmlDevice_t,
8178 enabled: nvmlEnableState_t,
8179 ) -> nvmlReturn_t {
8180 (self
8181 .nvmlDeviceSetAutoBoostedClocksEnabled
8182 .as_ref()
8183 .expect("Expected function, got error."))(device, enabled)
8184 }
8185 pub unsafe fn nvmlDeviceSetDefaultAutoBoostedClocksEnabled(
8186 &self,
8187 device: nvmlDevice_t,
8188 enabled: nvmlEnableState_t,
8189 flags: raw::c_uint,
8190 ) -> nvmlReturn_t {
8191 (self
8192 .nvmlDeviceSetDefaultAutoBoostedClocksEnabled
8193 .as_ref()
8194 .expect("Expected function, got error."))(device, enabled, flags)
8195 }
8196 pub unsafe fn nvmlDeviceSetDefaultFanSpeed_v2(
8197 &self,
8198 device: nvmlDevice_t,
8199 fan: raw::c_uint,
8200 ) -> nvmlReturn_t {
8201 (self
8202 .nvmlDeviceSetDefaultFanSpeed_v2
8203 .as_ref()
8204 .expect("Expected function, got error."))(device, fan)
8205 }
8206 pub unsafe fn nvmlDeviceSetFanControlPolicy(
8207 &self,
8208 device: nvmlDevice_t,
8209 fan: raw::c_uint,
8210 policy: nvmlFanControlPolicy_t,
8211 ) -> nvmlReturn_t {
8212 (self
8213 .nvmlDeviceSetFanControlPolicy
8214 .as_ref()
8215 .expect("Expected function, got error."))(device, fan, policy)
8216 }
8217 pub unsafe fn nvmlDeviceSetTemperatureThreshold(
8218 &self,
8219 device: nvmlDevice_t,
8220 thresholdType: nvmlTemperatureThresholds_t,
8221 temp: *mut raw::c_int,
8222 ) -> nvmlReturn_t {
8223 (self
8224 .nvmlDeviceSetTemperatureThreshold
8225 .as_ref()
8226 .expect("Expected function, got error."))(device, thresholdType, temp)
8227 }
8228 pub unsafe fn nvmlDeviceSetPowerManagementLimit(
8229 &self,
8230 device: nvmlDevice_t,
8231 limit: raw::c_uint,
8232 ) -> nvmlReturn_t {
8233 (self
8234 .nvmlDeviceSetPowerManagementLimit
8235 .as_ref()
8236 .expect("Expected function, got error."))(device, limit)
8237 }
8238 pub unsafe fn nvmlDeviceSetGpuOperationMode(
8239 &self,
8240 device: nvmlDevice_t,
8241 mode: nvmlGpuOperationMode_t,
8242 ) -> nvmlReturn_t {
8243 (self
8244 .nvmlDeviceSetGpuOperationMode
8245 .as_ref()
8246 .expect("Expected function, got error."))(device, mode)
8247 }
8248 pub unsafe fn nvmlDeviceSetAPIRestriction(
8249 &self,
8250 device: nvmlDevice_t,
8251 apiType: nvmlRestrictedAPI_t,
8252 isRestricted: nvmlEnableState_t,
8253 ) -> nvmlReturn_t {
8254 (self
8255 .nvmlDeviceSetAPIRestriction
8256 .as_ref()
8257 .expect("Expected function, got error."))(device, apiType, isRestricted)
8258 }
8259 pub unsafe fn nvmlDeviceSetFanSpeed_v2(
8260 &self,
8261 device: nvmlDevice_t,
8262 fan: raw::c_uint,
8263 speed: raw::c_uint,
8264 ) -> nvmlReturn_t {
8265 (self
8266 .nvmlDeviceSetFanSpeed_v2
8267 .as_ref()
8268 .expect("Expected function, got error."))(device, fan, speed)
8269 }
8270 pub unsafe fn nvmlDeviceSetGpcClkVfOffset(
8271 &self,
8272 device: nvmlDevice_t,
8273 offset: raw::c_int,
8274 ) -> nvmlReturn_t {
8275 (self
8276 .nvmlDeviceSetGpcClkVfOffset
8277 .as_ref()
8278 .expect("Expected function, got error."))(device, offset)
8279 }
8280 pub unsafe fn nvmlDeviceSetMemClkVfOffset(
8281 &self,
8282 device: nvmlDevice_t,
8283 offset: raw::c_int,
8284 ) -> nvmlReturn_t {
8285 (self
8286 .nvmlDeviceSetMemClkVfOffset
8287 .as_ref()
8288 .expect("Expected function, got error."))(device, offset)
8289 }
8290 pub unsafe fn nvmlDeviceSetAccountingMode(
8291 &self,
8292 device: nvmlDevice_t,
8293 mode: nvmlEnableState_t,
8294 ) -> nvmlReturn_t {
8295 (self
8296 .nvmlDeviceSetAccountingMode
8297 .as_ref()
8298 .expect("Expected function, got error."))(device, mode)
8299 }
8300 pub unsafe fn nvmlDeviceClearAccountingPids(&self, device: nvmlDevice_t) -> nvmlReturn_t {
8301 (self
8302 .nvmlDeviceClearAccountingPids
8303 .as_ref()
8304 .expect("Expected function, got error."))(device)
8305 }
8306 pub unsafe fn nvmlDeviceSetPowerManagementLimit_v2(
8307 &self,
8308 device: nvmlDevice_t,
8309 powerValue: *mut nvmlPowerValue_v2_t,
8310 ) -> nvmlReturn_t {
8311 (self
8312 .nvmlDeviceSetPowerManagementLimit_v2
8313 .as_ref()
8314 .expect("Expected function, got error."))(device, powerValue)
8315 }
8316 pub unsafe fn nvmlDeviceGetNvLinkState(
8317 &self,
8318 device: nvmlDevice_t,
8319 link: raw::c_uint,
8320 isActive: *mut nvmlEnableState_t,
8321 ) -> nvmlReturn_t {
8322 (self
8323 .nvmlDeviceGetNvLinkState
8324 .as_ref()
8325 .expect("Expected function, got error."))(device, link, isActive)
8326 }
8327 pub unsafe fn nvmlDeviceGetNvLinkVersion(
8328 &self,
8329 device: nvmlDevice_t,
8330 link: raw::c_uint,
8331 version: *mut raw::c_uint,
8332 ) -> nvmlReturn_t {
8333 (self
8334 .nvmlDeviceGetNvLinkVersion
8335 .as_ref()
8336 .expect("Expected function, got error."))(device, link, version)
8337 }
8338 pub unsafe fn nvmlDeviceGetNvLinkCapability(
8339 &self,
8340 device: nvmlDevice_t,
8341 link: raw::c_uint,
8342 capability: nvmlNvLinkCapability_t,
8343 capResult: *mut raw::c_uint,
8344 ) -> nvmlReturn_t {
8345 (self
8346 .nvmlDeviceGetNvLinkCapability
8347 .as_ref()
8348 .expect("Expected function, got error."))(device, link, capability, capResult)
8349 }
8350 pub unsafe fn nvmlDeviceGetNvLinkRemotePciInfo_v2(
8351 &self,
8352 device: nvmlDevice_t,
8353 link: raw::c_uint,
8354 pci: *mut nvmlPciInfo_t,
8355 ) -> nvmlReturn_t {
8356 (self
8357 .nvmlDeviceGetNvLinkRemotePciInfo_v2
8358 .as_ref()
8359 .expect("Expected function, got error."))(device, link, pci)
8360 }
8361 pub unsafe fn nvmlDeviceGetNvLinkErrorCounter(
8362 &self,
8363 device: nvmlDevice_t,
8364 link: raw::c_uint,
8365 counter: nvmlNvLinkErrorCounter_t,
8366 counterValue: *mut raw::c_ulonglong,
8367 ) -> nvmlReturn_t {
8368 (self
8369 .nvmlDeviceGetNvLinkErrorCounter
8370 .as_ref()
8371 .expect("Expected function, got error."))(device, link, counter, counterValue)
8372 }
8373 pub unsafe fn nvmlDeviceResetNvLinkErrorCounters(
8374 &self,
8375 device: nvmlDevice_t,
8376 link: raw::c_uint,
8377 ) -> nvmlReturn_t {
8378 (self
8379 .nvmlDeviceResetNvLinkErrorCounters
8380 .as_ref()
8381 .expect("Expected function, got error."))(device, link)
8382 }
8383 pub unsafe fn nvmlDeviceSetNvLinkUtilizationControl(
8384 &self,
8385 device: nvmlDevice_t,
8386 link: raw::c_uint,
8387 counter: raw::c_uint,
8388 control: *mut nvmlNvLinkUtilizationControl_t,
8389 reset: raw::c_uint,
8390 ) -> nvmlReturn_t {
8391 (self
8392 .nvmlDeviceSetNvLinkUtilizationControl
8393 .as_ref()
8394 .expect("Expected function, got error."))(device, link, counter, control, reset)
8395 }
8396 pub unsafe fn nvmlDeviceGetNvLinkUtilizationControl(
8397 &self,
8398 device: nvmlDevice_t,
8399 link: raw::c_uint,
8400 counter: raw::c_uint,
8401 control: *mut nvmlNvLinkUtilizationControl_t,
8402 ) -> nvmlReturn_t {
8403 (self
8404 .nvmlDeviceGetNvLinkUtilizationControl
8405 .as_ref()
8406 .expect("Expected function, got error."))(device, link, counter, control)
8407 }
8408 pub unsafe fn nvmlDeviceGetNvLinkUtilizationCounter(
8409 &self,
8410 device: nvmlDevice_t,
8411 link: raw::c_uint,
8412 counter: raw::c_uint,
8413 rxcounter: *mut raw::c_ulonglong,
8414 txcounter: *mut raw::c_ulonglong,
8415 ) -> nvmlReturn_t {
8416 (self
8417 .nvmlDeviceGetNvLinkUtilizationCounter
8418 .as_ref()
8419 .expect("Expected function, got error."))(
8420 device, link, counter, rxcounter, txcounter
8421 )
8422 }
8423 pub unsafe fn nvmlDeviceFreezeNvLinkUtilizationCounter(
8424 &self,
8425 device: nvmlDevice_t,
8426 link: raw::c_uint,
8427 counter: raw::c_uint,
8428 freeze: nvmlEnableState_t,
8429 ) -> nvmlReturn_t {
8430 (self
8431 .nvmlDeviceFreezeNvLinkUtilizationCounter
8432 .as_ref()
8433 .expect("Expected function, got error."))(device, link, counter, freeze)
8434 }
8435 pub unsafe fn nvmlDeviceResetNvLinkUtilizationCounter(
8436 &self,
8437 device: nvmlDevice_t,
8438 link: raw::c_uint,
8439 counter: raw::c_uint,
8440 ) -> nvmlReturn_t {
8441 (self
8442 .nvmlDeviceResetNvLinkUtilizationCounter
8443 .as_ref()
8444 .expect("Expected function, got error."))(device, link, counter)
8445 }
8446 pub unsafe fn nvmlDeviceGetNvLinkRemoteDeviceType(
8447 &self,
8448 device: nvmlDevice_t,
8449 link: raw::c_uint,
8450 pNvLinkDeviceType: *mut nvmlIntNvLinkDeviceType_t,
8451 ) -> nvmlReturn_t {
8452 (self
8453 .nvmlDeviceGetNvLinkRemoteDeviceType
8454 .as_ref()
8455 .expect("Expected function, got error."))(device, link, pNvLinkDeviceType)
8456 }
8457 pub unsafe fn nvmlDeviceSetNvLinkDeviceLowPowerThreshold(
8458 &self,
8459 device: nvmlDevice_t,
8460 info: *mut nvmlNvLinkPowerThres_t,
8461 ) -> nvmlReturn_t {
8462 (self
8463 .nvmlDeviceSetNvLinkDeviceLowPowerThreshold
8464 .as_ref()
8465 .expect("Expected function, got error."))(device, info)
8466 }
8467 pub unsafe fn nvmlSystemSetNvlinkBwMode(&self, nvlinkBwMode: raw::c_uint) -> nvmlReturn_t {
8468 (self
8469 .nvmlSystemSetNvlinkBwMode
8470 .as_ref()
8471 .expect("Expected function, got error."))(nvlinkBwMode)
8472 }
8473 pub unsafe fn nvmlSystemGetNvlinkBwMode(&self, nvlinkBwMode: *mut raw::c_uint) -> nvmlReturn_t {
8474 (self
8475 .nvmlSystemGetNvlinkBwMode
8476 .as_ref()
8477 .expect("Expected function, got error."))(nvlinkBwMode)
8478 }
8479 pub unsafe fn nvmlDeviceGetNvlinkSupportedBwModes(
8480 &self,
8481 device: nvmlDevice_t,
8482 supportedBwMode: *mut nvmlNvlinkSupportedBwModes_t,
8483 ) -> nvmlReturn_t {
8484 (self
8485 .nvmlDeviceGetNvlinkSupportedBwModes
8486 .as_ref()
8487 .expect("Expected function, got error."))(device, supportedBwMode)
8488 }
8489 pub unsafe fn nvmlDeviceGetNvlinkBwMode(
8490 &self,
8491 device: nvmlDevice_t,
8492 getBwMode: *mut nvmlNvlinkGetBwMode_t,
8493 ) -> nvmlReturn_t {
8494 (self
8495 .nvmlDeviceGetNvlinkBwMode
8496 .as_ref()
8497 .expect("Expected function, got error."))(device, getBwMode)
8498 }
8499 pub unsafe fn nvmlDeviceSetNvlinkBwMode(
8500 &self,
8501 device: nvmlDevice_t,
8502 setBwMode: *mut nvmlNvlinkSetBwMode_t,
8503 ) -> nvmlReturn_t {
8504 (self
8505 .nvmlDeviceSetNvlinkBwMode
8506 .as_ref()
8507 .expect("Expected function, got error."))(device, setBwMode)
8508 }
8509 pub unsafe fn nvmlEventSetCreate(&self, set: *mut nvmlEventSet_t) -> nvmlReturn_t {
8510 (self
8511 .nvmlEventSetCreate
8512 .as_ref()
8513 .expect("Expected function, got error."))(set)
8514 }
8515 pub unsafe fn nvmlDeviceRegisterEvents(
8516 &self,
8517 device: nvmlDevice_t,
8518 eventTypes: raw::c_ulonglong,
8519 set: nvmlEventSet_t,
8520 ) -> nvmlReturn_t {
8521 (self
8522 .nvmlDeviceRegisterEvents
8523 .as_ref()
8524 .expect("Expected function, got error."))(device, eventTypes, set)
8525 }
8526 pub unsafe fn nvmlDeviceGetSupportedEventTypes(
8527 &self,
8528 device: nvmlDevice_t,
8529 eventTypes: *mut raw::c_ulonglong,
8530 ) -> nvmlReturn_t {
8531 (self
8532 .nvmlDeviceGetSupportedEventTypes
8533 .as_ref()
8534 .expect("Expected function, got error."))(device, eventTypes)
8535 }
8536 pub unsafe fn nvmlEventSetWait_v2(
8537 &self,
8538 set: nvmlEventSet_t,
8539 data: *mut nvmlEventData_t,
8540 timeoutms: raw::c_uint,
8541 ) -> nvmlReturn_t {
8542 (self
8543 .nvmlEventSetWait_v2
8544 .as_ref()
8545 .expect("Expected function, got error."))(set, data, timeoutms)
8546 }
8547 pub unsafe fn nvmlEventSetFree(&self, set: nvmlEventSet_t) -> nvmlReturn_t {
8548 (self
8549 .nvmlEventSetFree
8550 .as_ref()
8551 .expect("Expected function, got error."))(set)
8552 }
8553 pub unsafe fn nvmlDeviceModifyDrainState(
8554 &self,
8555 pciInfo: *mut nvmlPciInfo_t,
8556 newState: nvmlEnableState_t,
8557 ) -> nvmlReturn_t {
8558 (self
8559 .nvmlDeviceModifyDrainState
8560 .as_ref()
8561 .expect("Expected function, got error."))(pciInfo, newState)
8562 }
8563 pub unsafe fn nvmlDeviceQueryDrainState(
8564 &self,
8565 pciInfo: *mut nvmlPciInfo_t,
8566 currentState: *mut nvmlEnableState_t,
8567 ) -> nvmlReturn_t {
8568 (self
8569 .nvmlDeviceQueryDrainState
8570 .as_ref()
8571 .expect("Expected function, got error."))(pciInfo, currentState)
8572 }
8573 pub unsafe fn nvmlDeviceRemoveGpu_v2(
8574 &self,
8575 pciInfo: *mut nvmlPciInfo_t,
8576 gpuState: nvmlDetachGpuState_t,
8577 linkState: nvmlPcieLinkState_t,
8578 ) -> nvmlReturn_t {
8579 (self
8580 .nvmlDeviceRemoveGpu_v2
8581 .as_ref()
8582 .expect("Expected function, got error."))(pciInfo, gpuState, linkState)
8583 }
8584 pub unsafe fn nvmlDeviceDiscoverGpus(&self, pciInfo: *mut nvmlPciInfo_t) -> nvmlReturn_t {
8585 (self
8586 .nvmlDeviceDiscoverGpus
8587 .as_ref()
8588 .expect("Expected function, got error."))(pciInfo)
8589 }
8590 pub unsafe fn nvmlDeviceGetFieldValues(
8591 &self,
8592 device: nvmlDevice_t,
8593 valuesCount: raw::c_int,
8594 values: *mut nvmlFieldValue_t,
8595 ) -> nvmlReturn_t {
8596 (self
8597 .nvmlDeviceGetFieldValues
8598 .as_ref()
8599 .expect("Expected function, got error."))(device, valuesCount, values)
8600 }
8601 pub unsafe fn nvmlDeviceClearFieldValues(
8602 &self,
8603 device: nvmlDevice_t,
8604 valuesCount: raw::c_int,
8605 values: *mut nvmlFieldValue_t,
8606 ) -> nvmlReturn_t {
8607 (self
8608 .nvmlDeviceClearFieldValues
8609 .as_ref()
8610 .expect("Expected function, got error."))(device, valuesCount, values)
8611 }
8612 pub unsafe fn nvmlDeviceGetVirtualizationMode(
8613 &self,
8614 device: nvmlDevice_t,
8615 pVirtualMode: *mut nvmlGpuVirtualizationMode_t,
8616 ) -> nvmlReturn_t {
8617 (self
8618 .nvmlDeviceGetVirtualizationMode
8619 .as_ref()
8620 .expect("Expected function, got error."))(device, pVirtualMode)
8621 }
8622 pub unsafe fn nvmlDeviceGetHostVgpuMode(
8623 &self,
8624 device: nvmlDevice_t,
8625 pHostVgpuMode: *mut nvmlHostVgpuMode_t,
8626 ) -> nvmlReturn_t {
8627 (self
8628 .nvmlDeviceGetHostVgpuMode
8629 .as_ref()
8630 .expect("Expected function, got error."))(device, pHostVgpuMode)
8631 }
8632 pub unsafe fn nvmlDeviceSetVirtualizationMode(
8633 &self,
8634 device: nvmlDevice_t,
8635 virtualMode: nvmlGpuVirtualizationMode_t,
8636 ) -> nvmlReturn_t {
8637 (self
8638 .nvmlDeviceSetVirtualizationMode
8639 .as_ref()
8640 .expect("Expected function, got error."))(device, virtualMode)
8641 }
8642 pub unsafe fn nvmlDeviceGetVgpuHeterogeneousMode(
8643 &self,
8644 device: nvmlDevice_t,
8645 pHeterogeneousMode: *mut nvmlVgpuHeterogeneousMode_t,
8646 ) -> nvmlReturn_t {
8647 (self
8648 .nvmlDeviceGetVgpuHeterogeneousMode
8649 .as_ref()
8650 .expect("Expected function, got error."))(device, pHeterogeneousMode)
8651 }
8652 pub unsafe fn nvmlDeviceSetVgpuHeterogeneousMode(
8653 &self,
8654 device: nvmlDevice_t,
8655 pHeterogeneousMode: *const nvmlVgpuHeterogeneousMode_t,
8656 ) -> nvmlReturn_t {
8657 (self
8658 .nvmlDeviceSetVgpuHeterogeneousMode
8659 .as_ref()
8660 .expect("Expected function, got error."))(device, pHeterogeneousMode)
8661 }
8662 pub unsafe fn nvmlVgpuInstanceGetPlacementId(
8663 &self,
8664 vgpuInstance: nvmlVgpuInstance_t,
8665 pPlacement: *mut nvmlVgpuPlacementId_t,
8666 ) -> nvmlReturn_t {
8667 (self
8668 .nvmlVgpuInstanceGetPlacementId
8669 .as_ref()
8670 .expect("Expected function, got error."))(vgpuInstance, pPlacement)
8671 }
8672 pub unsafe fn nvmlDeviceGetVgpuTypeSupportedPlacements(
8673 &self,
8674 device: nvmlDevice_t,
8675 vgpuTypeId: nvmlVgpuTypeId_t,
8676 pPlacementList: *mut nvmlVgpuPlacementList_t,
8677 ) -> nvmlReturn_t {
8678 (self
8679 .nvmlDeviceGetVgpuTypeSupportedPlacements
8680 .as_ref()
8681 .expect("Expected function, got error."))(device, vgpuTypeId, pPlacementList)
8682 }
8683 pub unsafe fn nvmlDeviceGetVgpuTypeCreatablePlacements(
8684 &self,
8685 device: nvmlDevice_t,
8686 vgpuTypeId: nvmlVgpuTypeId_t,
8687 pPlacementList: *mut nvmlVgpuPlacementList_t,
8688 ) -> nvmlReturn_t {
8689 (self
8690 .nvmlDeviceGetVgpuTypeCreatablePlacements
8691 .as_ref()
8692 .expect("Expected function, got error."))(device, vgpuTypeId, pPlacementList)
8693 }
8694 pub unsafe fn nvmlVgpuTypeGetGspHeapSize(
8695 &self,
8696 vgpuTypeId: nvmlVgpuTypeId_t,
8697 gspHeapSize: *mut raw::c_ulonglong,
8698 ) -> nvmlReturn_t {
8699 (self
8700 .nvmlVgpuTypeGetGspHeapSize
8701 .as_ref()
8702 .expect("Expected function, got error."))(vgpuTypeId, gspHeapSize)
8703 }
8704 pub unsafe fn nvmlVgpuTypeGetFbReservation(
8705 &self,
8706 vgpuTypeId: nvmlVgpuTypeId_t,
8707 fbReservation: *mut raw::c_ulonglong,
8708 ) -> nvmlReturn_t {
8709 (self
8710 .nvmlVgpuTypeGetFbReservation
8711 .as_ref()
8712 .expect("Expected function, got error."))(vgpuTypeId, fbReservation)
8713 }
8714 pub unsafe fn nvmlVgpuInstanceGetRuntimeStateSize(
8715 &self,
8716 vgpuInstance: nvmlVgpuInstance_t,
8717 pState: *mut nvmlVgpuRuntimeState_t,
8718 ) -> nvmlReturn_t {
8719 (self
8720 .nvmlVgpuInstanceGetRuntimeStateSize
8721 .as_ref()
8722 .expect("Expected function, got error."))(vgpuInstance, pState)
8723 }
8724 pub unsafe fn nvmlDeviceSetVgpuCapabilities(
8725 &self,
8726 device: nvmlDevice_t,
8727 capability: nvmlDeviceVgpuCapability_t,
8728 state: nvmlEnableState_t,
8729 ) -> nvmlReturn_t {
8730 (self
8731 .nvmlDeviceSetVgpuCapabilities
8732 .as_ref()
8733 .expect("Expected function, got error."))(device, capability, state)
8734 }
8735 pub unsafe fn nvmlDeviceGetGridLicensableFeatures_v4(
8736 &self,
8737 device: nvmlDevice_t,
8738 pGridLicensableFeatures: *mut nvmlGridLicensableFeatures_t,
8739 ) -> nvmlReturn_t {
8740 (self
8741 .nvmlDeviceGetGridLicensableFeatures_v4
8742 .as_ref()
8743 .expect("Expected function, got error."))(device, pGridLicensableFeatures)
8744 }
8745 pub unsafe fn nvmlGetVgpuDriverCapabilities(
8746 &self,
8747 capability: nvmlVgpuDriverCapability_t,
8748 capResult: *mut raw::c_uint,
8749 ) -> nvmlReturn_t {
8750 (self
8751 .nvmlGetVgpuDriverCapabilities
8752 .as_ref()
8753 .expect("Expected function, got error."))(capability, capResult)
8754 }
8755 pub unsafe fn nvmlDeviceGetVgpuCapabilities(
8756 &self,
8757 device: nvmlDevice_t,
8758 capability: nvmlDeviceVgpuCapability_t,
8759 capResult: *mut raw::c_uint,
8760 ) -> nvmlReturn_t {
8761 (self
8762 .nvmlDeviceGetVgpuCapabilities
8763 .as_ref()
8764 .expect("Expected function, got error."))(device, capability, capResult)
8765 }
8766 pub unsafe fn nvmlDeviceGetSupportedVgpus(
8767 &self,
8768 device: nvmlDevice_t,
8769 vgpuCount: *mut raw::c_uint,
8770 vgpuTypeIds: *mut nvmlVgpuTypeId_t,
8771 ) -> nvmlReturn_t {
8772 (self
8773 .nvmlDeviceGetSupportedVgpus
8774 .as_ref()
8775 .expect("Expected function, got error."))(device, vgpuCount, vgpuTypeIds)
8776 }
8777 pub unsafe fn nvmlDeviceGetCreatableVgpus(
8778 &self,
8779 device: nvmlDevice_t,
8780 vgpuCount: *mut raw::c_uint,
8781 vgpuTypeIds: *mut nvmlVgpuTypeId_t,
8782 ) -> nvmlReturn_t {
8783 (self
8784 .nvmlDeviceGetCreatableVgpus
8785 .as_ref()
8786 .expect("Expected function, got error."))(device, vgpuCount, vgpuTypeIds)
8787 }
8788 pub unsafe fn nvmlVgpuTypeGetClass(
8789 &self,
8790 vgpuTypeId: nvmlVgpuTypeId_t,
8791 vgpuTypeClass: *mut raw::c_char,
8792 size: *mut raw::c_uint,
8793 ) -> nvmlReturn_t {
8794 (self
8795 .nvmlVgpuTypeGetClass
8796 .as_ref()
8797 .expect("Expected function, got error."))(vgpuTypeId, vgpuTypeClass, size)
8798 }
8799 pub unsafe fn nvmlVgpuTypeGetName(
8800 &self,
8801 vgpuTypeId: nvmlVgpuTypeId_t,
8802 vgpuTypeName: *mut raw::c_char,
8803 size: *mut raw::c_uint,
8804 ) -> nvmlReturn_t {
8805 (self
8806 .nvmlVgpuTypeGetName
8807 .as_ref()
8808 .expect("Expected function, got error."))(vgpuTypeId, vgpuTypeName, size)
8809 }
8810 pub unsafe fn nvmlVgpuTypeGetGpuInstanceProfileId(
8811 &self,
8812 vgpuTypeId: nvmlVgpuTypeId_t,
8813 gpuInstanceProfileId: *mut raw::c_uint,
8814 ) -> nvmlReturn_t {
8815 (self
8816 .nvmlVgpuTypeGetGpuInstanceProfileId
8817 .as_ref()
8818 .expect("Expected function, got error."))(vgpuTypeId, gpuInstanceProfileId)
8819 }
8820 pub unsafe fn nvmlVgpuTypeGetDeviceID(
8821 &self,
8822 vgpuTypeId: nvmlVgpuTypeId_t,
8823 deviceID: *mut raw::c_ulonglong,
8824 subsystemID: *mut raw::c_ulonglong,
8825 ) -> nvmlReturn_t {
8826 (self
8827 .nvmlVgpuTypeGetDeviceID
8828 .as_ref()
8829 .expect("Expected function, got error."))(vgpuTypeId, deviceID, subsystemID)
8830 }
8831 pub unsafe fn nvmlVgpuTypeGetFramebufferSize(
8832 &self,
8833 vgpuTypeId: nvmlVgpuTypeId_t,
8834 fbSize: *mut raw::c_ulonglong,
8835 ) -> nvmlReturn_t {
8836 (self
8837 .nvmlVgpuTypeGetFramebufferSize
8838 .as_ref()
8839 .expect("Expected function, got error."))(vgpuTypeId, fbSize)
8840 }
8841 pub unsafe fn nvmlVgpuTypeGetNumDisplayHeads(
8842 &self,
8843 vgpuTypeId: nvmlVgpuTypeId_t,
8844 numDisplayHeads: *mut raw::c_uint,
8845 ) -> nvmlReturn_t {
8846 (self
8847 .nvmlVgpuTypeGetNumDisplayHeads
8848 .as_ref()
8849 .expect("Expected function, got error."))(vgpuTypeId, numDisplayHeads)
8850 }
8851 pub unsafe fn nvmlVgpuTypeGetResolution(
8852 &self,
8853 vgpuTypeId: nvmlVgpuTypeId_t,
8854 displayIndex: raw::c_uint,
8855 xdim: *mut raw::c_uint,
8856 ydim: *mut raw::c_uint,
8857 ) -> nvmlReturn_t {
8858 (self
8859 .nvmlVgpuTypeGetResolution
8860 .as_ref()
8861 .expect("Expected function, got error."))(vgpuTypeId, displayIndex, xdim, ydim)
8862 }
8863 pub unsafe fn nvmlVgpuTypeGetLicense(
8864 &self,
8865 vgpuTypeId: nvmlVgpuTypeId_t,
8866 vgpuTypeLicenseString: *mut raw::c_char,
8867 size: raw::c_uint,
8868 ) -> nvmlReturn_t {
8869 (self
8870 .nvmlVgpuTypeGetLicense
8871 .as_ref()
8872 .expect("Expected function, got error."))(
8873 vgpuTypeId, vgpuTypeLicenseString, size
8874 )
8875 }
8876 pub unsafe fn nvmlVgpuTypeGetFrameRateLimit(
8877 &self,
8878 vgpuTypeId: nvmlVgpuTypeId_t,
8879 frameRateLimit: *mut raw::c_uint,
8880 ) -> nvmlReturn_t {
8881 (self
8882 .nvmlVgpuTypeGetFrameRateLimit
8883 .as_ref()
8884 .expect("Expected function, got error."))(vgpuTypeId, frameRateLimit)
8885 }
8886 pub unsafe fn nvmlVgpuTypeGetMaxInstances(
8887 &self,
8888 device: nvmlDevice_t,
8889 vgpuTypeId: nvmlVgpuTypeId_t,
8890 vgpuInstanceCount: *mut raw::c_uint,
8891 ) -> nvmlReturn_t {
8892 (self
8893 .nvmlVgpuTypeGetMaxInstances
8894 .as_ref()
8895 .expect("Expected function, got error."))(device, vgpuTypeId, vgpuInstanceCount)
8896 }
8897 pub unsafe fn nvmlVgpuTypeGetMaxInstancesPerVm(
8898 &self,
8899 vgpuTypeId: nvmlVgpuTypeId_t,
8900 vgpuInstanceCountPerVm: *mut raw::c_uint,
8901 ) -> nvmlReturn_t {
8902 (self
8903 .nvmlVgpuTypeGetMaxInstancesPerVm
8904 .as_ref()
8905 .expect("Expected function, got error."))(vgpuTypeId, vgpuInstanceCountPerVm)
8906 }
8907 pub unsafe fn nvmlVgpuTypeGetBAR1Info(
8908 &self,
8909 vgpuTypeId: nvmlVgpuTypeId_t,
8910 bar1Info: *mut nvmlVgpuTypeBar1Info_t,
8911 ) -> nvmlReturn_t {
8912 (self
8913 .nvmlVgpuTypeGetBAR1Info
8914 .as_ref()
8915 .expect("Expected function, got error."))(vgpuTypeId, bar1Info)
8916 }
8917 pub unsafe fn nvmlDeviceGetActiveVgpus(
8918 &self,
8919 device: nvmlDevice_t,
8920 vgpuCount: *mut raw::c_uint,
8921 vgpuInstances: *mut nvmlVgpuInstance_t,
8922 ) -> nvmlReturn_t {
8923 (self
8924 .nvmlDeviceGetActiveVgpus
8925 .as_ref()
8926 .expect("Expected function, got error."))(device, vgpuCount, vgpuInstances)
8927 }
8928 pub unsafe fn nvmlVgpuInstanceGetVmID(
8929 &self,
8930 vgpuInstance: nvmlVgpuInstance_t,
8931 vmId: *mut raw::c_char,
8932 size: raw::c_uint,
8933 vmIdType: *mut nvmlVgpuVmIdType_t,
8934 ) -> nvmlReturn_t {
8935 (self
8936 .nvmlVgpuInstanceGetVmID
8937 .as_ref()
8938 .expect("Expected function, got error."))(vgpuInstance, vmId, size, vmIdType)
8939 }
8940 pub unsafe fn nvmlVgpuInstanceGetUUID(
8941 &self,
8942 vgpuInstance: nvmlVgpuInstance_t,
8943 uuid: *mut raw::c_char,
8944 size: raw::c_uint,
8945 ) -> nvmlReturn_t {
8946 (self
8947 .nvmlVgpuInstanceGetUUID
8948 .as_ref()
8949 .expect("Expected function, got error."))(vgpuInstance, uuid, size)
8950 }
8951 pub unsafe fn nvmlVgpuInstanceGetVmDriverVersion(
8952 &self,
8953 vgpuInstance: nvmlVgpuInstance_t,
8954 version: *mut raw::c_char,
8955 length: raw::c_uint,
8956 ) -> nvmlReturn_t {
8957 (self
8958 .nvmlVgpuInstanceGetVmDriverVersion
8959 .as_ref()
8960 .expect("Expected function, got error."))(vgpuInstance, version, length)
8961 }
8962 pub unsafe fn nvmlVgpuInstanceGetFbUsage(
8963 &self,
8964 vgpuInstance: nvmlVgpuInstance_t,
8965 fbUsage: *mut raw::c_ulonglong,
8966 ) -> nvmlReturn_t {
8967 (self
8968 .nvmlVgpuInstanceGetFbUsage
8969 .as_ref()
8970 .expect("Expected function, got error."))(vgpuInstance, fbUsage)
8971 }
8972 pub unsafe fn nvmlVgpuInstanceGetLicenseStatus(
8973 &self,
8974 vgpuInstance: nvmlVgpuInstance_t,
8975 licensed: *mut raw::c_uint,
8976 ) -> nvmlReturn_t {
8977 (self
8978 .nvmlVgpuInstanceGetLicenseStatus
8979 .as_ref()
8980 .expect("Expected function, got error."))(vgpuInstance, licensed)
8981 }
8982 pub unsafe fn nvmlVgpuInstanceGetType(
8983 &self,
8984 vgpuInstance: nvmlVgpuInstance_t,
8985 vgpuTypeId: *mut nvmlVgpuTypeId_t,
8986 ) -> nvmlReturn_t {
8987 (self
8988 .nvmlVgpuInstanceGetType
8989 .as_ref()
8990 .expect("Expected function, got error."))(vgpuInstance, vgpuTypeId)
8991 }
8992 pub unsafe fn nvmlVgpuInstanceGetFrameRateLimit(
8993 &self,
8994 vgpuInstance: nvmlVgpuInstance_t,
8995 frameRateLimit: *mut raw::c_uint,
8996 ) -> nvmlReturn_t {
8997 (self
8998 .nvmlVgpuInstanceGetFrameRateLimit
8999 .as_ref()
9000 .expect("Expected function, got error."))(vgpuInstance, frameRateLimit)
9001 }
9002 pub unsafe fn nvmlVgpuInstanceGetEccMode(
9003 &self,
9004 vgpuInstance: nvmlVgpuInstance_t,
9005 eccMode: *mut nvmlEnableState_t,
9006 ) -> nvmlReturn_t {
9007 (self
9008 .nvmlVgpuInstanceGetEccMode
9009 .as_ref()
9010 .expect("Expected function, got error."))(vgpuInstance, eccMode)
9011 }
9012 pub unsafe fn nvmlVgpuInstanceGetEncoderCapacity(
9013 &self,
9014 vgpuInstance: nvmlVgpuInstance_t,
9015 encoderCapacity: *mut raw::c_uint,
9016 ) -> nvmlReturn_t {
9017 (self
9018 .nvmlVgpuInstanceGetEncoderCapacity
9019 .as_ref()
9020 .expect("Expected function, got error."))(vgpuInstance, encoderCapacity)
9021 }
9022 pub unsafe fn nvmlVgpuInstanceSetEncoderCapacity(
9023 &self,
9024 vgpuInstance: nvmlVgpuInstance_t,
9025 encoderCapacity: raw::c_uint,
9026 ) -> nvmlReturn_t {
9027 (self
9028 .nvmlVgpuInstanceSetEncoderCapacity
9029 .as_ref()
9030 .expect("Expected function, got error."))(vgpuInstance, encoderCapacity)
9031 }
9032 pub unsafe fn nvmlVgpuInstanceGetEncoderStats(
9033 &self,
9034 vgpuInstance: nvmlVgpuInstance_t,
9035 sessionCount: *mut raw::c_uint,
9036 averageFps: *mut raw::c_uint,
9037 averageLatency: *mut raw::c_uint,
9038 ) -> nvmlReturn_t {
9039 (self
9040 .nvmlVgpuInstanceGetEncoderStats
9041 .as_ref()
9042 .expect("Expected function, got error."))(
9043 vgpuInstance,
9044 sessionCount,
9045 averageFps,
9046 averageLatency,
9047 )
9048 }
9049 pub unsafe fn nvmlVgpuInstanceGetEncoderSessions(
9050 &self,
9051 vgpuInstance: nvmlVgpuInstance_t,
9052 sessionCount: *mut raw::c_uint,
9053 sessionInfo: *mut nvmlEncoderSessionInfo_t,
9054 ) -> nvmlReturn_t {
9055 (self
9056 .nvmlVgpuInstanceGetEncoderSessions
9057 .as_ref()
9058 .expect("Expected function, got error."))(
9059 vgpuInstance, sessionCount, sessionInfo
9060 )
9061 }
9062 pub unsafe fn nvmlVgpuInstanceGetFBCStats(
9063 &self,
9064 vgpuInstance: nvmlVgpuInstance_t,
9065 fbcStats: *mut nvmlFBCStats_t,
9066 ) -> nvmlReturn_t {
9067 (self
9068 .nvmlVgpuInstanceGetFBCStats
9069 .as_ref()
9070 .expect("Expected function, got error."))(vgpuInstance, fbcStats)
9071 }
9072 pub unsafe fn nvmlVgpuInstanceGetFBCSessions(
9073 &self,
9074 vgpuInstance: nvmlVgpuInstance_t,
9075 sessionCount: *mut raw::c_uint,
9076 sessionInfo: *mut nvmlFBCSessionInfo_t,
9077 ) -> nvmlReturn_t {
9078 (self
9079 .nvmlVgpuInstanceGetFBCSessions
9080 .as_ref()
9081 .expect("Expected function, got error."))(
9082 vgpuInstance, sessionCount, sessionInfo
9083 )
9084 }
9085 pub unsafe fn nvmlVgpuInstanceGetGpuInstanceId(
9086 &self,
9087 vgpuInstance: nvmlVgpuInstance_t,
9088 gpuInstanceId: *mut raw::c_uint,
9089 ) -> nvmlReturn_t {
9090 (self
9091 .nvmlVgpuInstanceGetGpuInstanceId
9092 .as_ref()
9093 .expect("Expected function, got error."))(vgpuInstance, gpuInstanceId)
9094 }
9095 pub unsafe fn nvmlVgpuInstanceGetGpuPciId(
9096 &self,
9097 vgpuInstance: nvmlVgpuInstance_t,
9098 vgpuPciId: *mut raw::c_char,
9099 length: *mut raw::c_uint,
9100 ) -> nvmlReturn_t {
9101 (self
9102 .nvmlVgpuInstanceGetGpuPciId
9103 .as_ref()
9104 .expect("Expected function, got error."))(vgpuInstance, vgpuPciId, length)
9105 }
9106 pub unsafe fn nvmlVgpuTypeGetCapabilities(
9107 &self,
9108 vgpuTypeId: nvmlVgpuTypeId_t,
9109 capability: nvmlVgpuCapability_t,
9110 capResult: *mut raw::c_uint,
9111 ) -> nvmlReturn_t {
9112 (self
9113 .nvmlVgpuTypeGetCapabilities
9114 .as_ref()
9115 .expect("Expected function, got error."))(vgpuTypeId, capability, capResult)
9116 }
9117 pub unsafe fn nvmlVgpuInstanceGetMdevUUID(
9118 &self,
9119 vgpuInstance: nvmlVgpuInstance_t,
9120 mdevUuid: *mut raw::c_char,
9121 size: raw::c_uint,
9122 ) -> nvmlReturn_t {
9123 (self
9124 .nvmlVgpuInstanceGetMdevUUID
9125 .as_ref()
9126 .expect("Expected function, got error."))(vgpuInstance, mdevUuid, size)
9127 }
9128 pub unsafe fn nvmlVgpuInstanceGetMetadata(
9129 &self,
9130 vgpuInstance: nvmlVgpuInstance_t,
9131 vgpuMetadata: *mut nvmlVgpuMetadata_t,
9132 bufferSize: *mut raw::c_uint,
9133 ) -> nvmlReturn_t {
9134 (self
9135 .nvmlVgpuInstanceGetMetadata
9136 .as_ref()
9137 .expect("Expected function, got error."))(vgpuInstance, vgpuMetadata, bufferSize)
9138 }
9139 pub unsafe fn nvmlDeviceGetVgpuMetadata(
9140 &self,
9141 device: nvmlDevice_t,
9142 pgpuMetadata: *mut nvmlVgpuPgpuMetadata_t,
9143 bufferSize: *mut raw::c_uint,
9144 ) -> nvmlReturn_t {
9145 (self
9146 .nvmlDeviceGetVgpuMetadata
9147 .as_ref()
9148 .expect("Expected function, got error."))(device, pgpuMetadata, bufferSize)
9149 }
9150 pub unsafe fn nvmlGetVgpuCompatibility(
9151 &self,
9152 vgpuMetadata: *mut nvmlVgpuMetadata_t,
9153 pgpuMetadata: *mut nvmlVgpuPgpuMetadata_t,
9154 compatibilityInfo: *mut nvmlVgpuPgpuCompatibility_t,
9155 ) -> nvmlReturn_t {
9156 (self
9157 .nvmlGetVgpuCompatibility
9158 .as_ref()
9159 .expect("Expected function, got error."))(
9160 vgpuMetadata, pgpuMetadata, compatibilityInfo
9161 )
9162 }
9163 pub unsafe fn nvmlDeviceGetPgpuMetadataString(
9164 &self,
9165 device: nvmlDevice_t,
9166 pgpuMetadata: *mut raw::c_char,
9167 bufferSize: *mut raw::c_uint,
9168 ) -> nvmlReturn_t {
9169 (self
9170 .nvmlDeviceGetPgpuMetadataString
9171 .as_ref()
9172 .expect("Expected function, got error."))(device, pgpuMetadata, bufferSize)
9173 }
9174 pub unsafe fn nvmlDeviceGetVgpuSchedulerLog(
9175 &self,
9176 device: nvmlDevice_t,
9177 pSchedulerLog: *mut nvmlVgpuSchedulerLog_t,
9178 ) -> nvmlReturn_t {
9179 (self
9180 .nvmlDeviceGetVgpuSchedulerLog
9181 .as_ref()
9182 .expect("Expected function, got error."))(device, pSchedulerLog)
9183 }
9184 pub unsafe fn nvmlDeviceGetVgpuSchedulerState(
9185 &self,
9186 device: nvmlDevice_t,
9187 pSchedulerState: *mut nvmlVgpuSchedulerGetState_t,
9188 ) -> nvmlReturn_t {
9189 (self
9190 .nvmlDeviceGetVgpuSchedulerState
9191 .as_ref()
9192 .expect("Expected function, got error."))(device, pSchedulerState)
9193 }
9194 pub unsafe fn nvmlDeviceGetVgpuSchedulerCapabilities(
9195 &self,
9196 device: nvmlDevice_t,
9197 pCapabilities: *mut nvmlVgpuSchedulerCapabilities_t,
9198 ) -> nvmlReturn_t {
9199 (self
9200 .nvmlDeviceGetVgpuSchedulerCapabilities
9201 .as_ref()
9202 .expect("Expected function, got error."))(device, pCapabilities)
9203 }
9204 pub unsafe fn nvmlDeviceSetVgpuSchedulerState(
9205 &self,
9206 device: nvmlDevice_t,
9207 pSchedulerState: *mut nvmlVgpuSchedulerSetState_t,
9208 ) -> nvmlReturn_t {
9209 (self
9210 .nvmlDeviceSetVgpuSchedulerState
9211 .as_ref()
9212 .expect("Expected function, got error."))(device, pSchedulerState)
9213 }
9214 pub unsafe fn nvmlGetVgpuVersion(
9215 &self,
9216 supported: *mut nvmlVgpuVersion_t,
9217 current: *mut nvmlVgpuVersion_t,
9218 ) -> nvmlReturn_t {
9219 (self
9220 .nvmlGetVgpuVersion
9221 .as_ref()
9222 .expect("Expected function, got error."))(supported, current)
9223 }
9224 pub unsafe fn nvmlSetVgpuVersion(&self, vgpuVersion: *mut nvmlVgpuVersion_t) -> nvmlReturn_t {
9225 (self
9226 .nvmlSetVgpuVersion
9227 .as_ref()
9228 .expect("Expected function, got error."))(vgpuVersion)
9229 }
9230 pub unsafe fn nvmlDeviceGetVgpuUtilization(
9231 &self,
9232 device: nvmlDevice_t,
9233 lastSeenTimeStamp: raw::c_ulonglong,
9234 sampleValType: *mut nvmlValueType_t,
9235 vgpuInstanceSamplesCount: *mut raw::c_uint,
9236 utilizationSamples: *mut nvmlVgpuInstanceUtilizationSample_t,
9237 ) -> nvmlReturn_t {
9238 (self
9239 .nvmlDeviceGetVgpuUtilization
9240 .as_ref()
9241 .expect("Expected function, got error."))(
9242 device,
9243 lastSeenTimeStamp,
9244 sampleValType,
9245 vgpuInstanceSamplesCount,
9246 utilizationSamples,
9247 )
9248 }
9249 pub unsafe fn nvmlDeviceGetVgpuInstancesUtilizationInfo(
9250 &self,
9251 device: nvmlDevice_t,
9252 vgpuUtilInfo: *mut nvmlVgpuInstancesUtilizationInfo_t,
9253 ) -> nvmlReturn_t {
9254 (self
9255 .nvmlDeviceGetVgpuInstancesUtilizationInfo
9256 .as_ref()
9257 .expect("Expected function, got error."))(device, vgpuUtilInfo)
9258 }
9259 pub unsafe fn nvmlDeviceGetVgpuProcessUtilization(
9260 &self,
9261 device: nvmlDevice_t,
9262 lastSeenTimeStamp: raw::c_ulonglong,
9263 vgpuProcessSamplesCount: *mut raw::c_uint,
9264 utilizationSamples: *mut nvmlVgpuProcessUtilizationSample_t,
9265 ) -> nvmlReturn_t {
9266 (self
9267 .nvmlDeviceGetVgpuProcessUtilization
9268 .as_ref()
9269 .expect("Expected function, got error."))(
9270 device,
9271 lastSeenTimeStamp,
9272 vgpuProcessSamplesCount,
9273 utilizationSamples,
9274 )
9275 }
9276 pub unsafe fn nvmlDeviceGetVgpuProcessesUtilizationInfo(
9277 &self,
9278 device: nvmlDevice_t,
9279 vgpuProcUtilInfo: *mut nvmlVgpuProcessesUtilizationInfo_t,
9280 ) -> nvmlReturn_t {
9281 (self
9282 .nvmlDeviceGetVgpuProcessesUtilizationInfo
9283 .as_ref()
9284 .expect("Expected function, got error."))(device, vgpuProcUtilInfo)
9285 }
9286 pub unsafe fn nvmlVgpuInstanceGetAccountingMode(
9287 &self,
9288 vgpuInstance: nvmlVgpuInstance_t,
9289 mode: *mut nvmlEnableState_t,
9290 ) -> nvmlReturn_t {
9291 (self
9292 .nvmlVgpuInstanceGetAccountingMode
9293 .as_ref()
9294 .expect("Expected function, got error."))(vgpuInstance, mode)
9295 }
9296 pub unsafe fn nvmlVgpuInstanceGetAccountingPids(
9297 &self,
9298 vgpuInstance: nvmlVgpuInstance_t,
9299 count: *mut raw::c_uint,
9300 pids: *mut raw::c_uint,
9301 ) -> nvmlReturn_t {
9302 (self
9303 .nvmlVgpuInstanceGetAccountingPids
9304 .as_ref()
9305 .expect("Expected function, got error."))(vgpuInstance, count, pids)
9306 }
9307 pub unsafe fn nvmlVgpuInstanceGetAccountingStats(
9308 &self,
9309 vgpuInstance: nvmlVgpuInstance_t,
9310 pid: raw::c_uint,
9311 stats: *mut nvmlAccountingStats_t,
9312 ) -> nvmlReturn_t {
9313 (self
9314 .nvmlVgpuInstanceGetAccountingStats
9315 .as_ref()
9316 .expect("Expected function, got error."))(vgpuInstance, pid, stats)
9317 }
9318 pub unsafe fn nvmlVgpuInstanceClearAccountingPids(
9319 &self,
9320 vgpuInstance: nvmlVgpuInstance_t,
9321 ) -> nvmlReturn_t {
9322 (self
9323 .nvmlVgpuInstanceClearAccountingPids
9324 .as_ref()
9325 .expect("Expected function, got error."))(vgpuInstance)
9326 }
9327 pub unsafe fn nvmlVgpuInstanceGetLicenseInfo_v2(
9328 &self,
9329 vgpuInstance: nvmlVgpuInstance_t,
9330 licenseInfo: *mut nvmlVgpuLicenseInfo_t,
9331 ) -> nvmlReturn_t {
9332 (self
9333 .nvmlVgpuInstanceGetLicenseInfo_v2
9334 .as_ref()
9335 .expect("Expected function, got error."))(vgpuInstance, licenseInfo)
9336 }
9337 pub unsafe fn nvmlGetExcludedDeviceCount(&self, deviceCount: *mut raw::c_uint) -> nvmlReturn_t {
9338 (self
9339 .nvmlGetExcludedDeviceCount
9340 .as_ref()
9341 .expect("Expected function, got error."))(deviceCount)
9342 }
9343 pub unsafe fn nvmlGetExcludedDeviceInfoByIndex(
9344 &self,
9345 index: raw::c_uint,
9346 info: *mut nvmlExcludedDeviceInfo_t,
9347 ) -> nvmlReturn_t {
9348 (self
9349 .nvmlGetExcludedDeviceInfoByIndex
9350 .as_ref()
9351 .expect("Expected function, got error."))(index, info)
9352 }
9353 pub unsafe fn nvmlDeviceSetMigMode(
9354 &self,
9355 device: nvmlDevice_t,
9356 mode: raw::c_uint,
9357 activationStatus: *mut nvmlReturn_t,
9358 ) -> nvmlReturn_t {
9359 (self
9360 .nvmlDeviceSetMigMode
9361 .as_ref()
9362 .expect("Expected function, got error."))(device, mode, activationStatus)
9363 }
9364 pub unsafe fn nvmlDeviceGetMigMode(
9365 &self,
9366 device: nvmlDevice_t,
9367 currentMode: *mut raw::c_uint,
9368 pendingMode: *mut raw::c_uint,
9369 ) -> nvmlReturn_t {
9370 (self
9371 .nvmlDeviceGetMigMode
9372 .as_ref()
9373 .expect("Expected function, got error."))(device, currentMode, pendingMode)
9374 }
9375 pub unsafe fn nvmlDeviceGetGpuInstanceProfileInfo(
9376 &self,
9377 device: nvmlDevice_t,
9378 profile: raw::c_uint,
9379 info: *mut nvmlGpuInstanceProfileInfo_t,
9380 ) -> nvmlReturn_t {
9381 (self
9382 .nvmlDeviceGetGpuInstanceProfileInfo
9383 .as_ref()
9384 .expect("Expected function, got error."))(device, profile, info)
9385 }
9386 pub unsafe fn nvmlDeviceGetGpuInstanceProfileInfoV(
9387 &self,
9388 device: nvmlDevice_t,
9389 profile: raw::c_uint,
9390 info: *mut nvmlGpuInstanceProfileInfo_v2_t,
9391 ) -> nvmlReturn_t {
9392 (self
9393 .nvmlDeviceGetGpuInstanceProfileInfoV
9394 .as_ref()
9395 .expect("Expected function, got error."))(device, profile, info)
9396 }
9397 pub unsafe fn nvmlDeviceGetGpuInstancePossiblePlacements_v2(
9398 &self,
9399 device: nvmlDevice_t,
9400 profileId: raw::c_uint,
9401 placements: *mut nvmlGpuInstancePlacement_t,
9402 count: *mut raw::c_uint,
9403 ) -> nvmlReturn_t {
9404 (self
9405 .nvmlDeviceGetGpuInstancePossiblePlacements_v2
9406 .as_ref()
9407 .expect("Expected function, got error."))(device, profileId, placements, count)
9408 }
9409 pub unsafe fn nvmlDeviceGetGpuInstanceRemainingCapacity(
9410 &self,
9411 device: nvmlDevice_t,
9412 profileId: raw::c_uint,
9413 count: *mut raw::c_uint,
9414 ) -> nvmlReturn_t {
9415 (self
9416 .nvmlDeviceGetGpuInstanceRemainingCapacity
9417 .as_ref()
9418 .expect("Expected function, got error."))(device, profileId, count)
9419 }
9420 pub unsafe fn nvmlDeviceCreateGpuInstance(
9421 &self,
9422 device: nvmlDevice_t,
9423 profileId: raw::c_uint,
9424 gpuInstance: *mut nvmlGpuInstance_t,
9425 ) -> nvmlReturn_t {
9426 (self
9427 .nvmlDeviceCreateGpuInstance
9428 .as_ref()
9429 .expect("Expected function, got error."))(device, profileId, gpuInstance)
9430 }
9431 pub unsafe fn nvmlDeviceCreateGpuInstanceWithPlacement(
9432 &self,
9433 device: nvmlDevice_t,
9434 profileId: raw::c_uint,
9435 placement: *const nvmlGpuInstancePlacement_t,
9436 gpuInstance: *mut nvmlGpuInstance_t,
9437 ) -> nvmlReturn_t {
9438 (self
9439 .nvmlDeviceCreateGpuInstanceWithPlacement
9440 .as_ref()
9441 .expect("Expected function, got error."))(
9442 device, profileId, placement, gpuInstance
9443 )
9444 }
9445 pub unsafe fn nvmlGpuInstanceDestroy(&self, gpuInstance: nvmlGpuInstance_t) -> nvmlReturn_t {
9446 (self
9447 .nvmlGpuInstanceDestroy
9448 .as_ref()
9449 .expect("Expected function, got error."))(gpuInstance)
9450 }
9451 pub unsafe fn nvmlDeviceGetGpuInstances(
9452 &self,
9453 device: nvmlDevice_t,
9454 profileId: raw::c_uint,
9455 gpuInstances: *mut nvmlGpuInstance_t,
9456 count: *mut raw::c_uint,
9457 ) -> nvmlReturn_t {
9458 (self
9459 .nvmlDeviceGetGpuInstances
9460 .as_ref()
9461 .expect("Expected function, got error."))(device, profileId, gpuInstances, count)
9462 }
9463 pub unsafe fn nvmlDeviceGetGpuInstanceById(
9464 &self,
9465 device: nvmlDevice_t,
9466 id: raw::c_uint,
9467 gpuInstance: *mut nvmlGpuInstance_t,
9468 ) -> nvmlReturn_t {
9469 (self
9470 .nvmlDeviceGetGpuInstanceById
9471 .as_ref()
9472 .expect("Expected function, got error."))(device, id, gpuInstance)
9473 }
9474 pub unsafe fn nvmlGpuInstanceGetInfo(
9475 &self,
9476 gpuInstance: nvmlGpuInstance_t,
9477 info: *mut nvmlGpuInstanceInfo_t,
9478 ) -> nvmlReturn_t {
9479 (self
9480 .nvmlGpuInstanceGetInfo
9481 .as_ref()
9482 .expect("Expected function, got error."))(gpuInstance, info)
9483 }
9484 pub unsafe fn nvmlGpuInstanceGetComputeInstanceProfileInfo(
9485 &self,
9486 gpuInstance: nvmlGpuInstance_t,
9487 profile: raw::c_uint,
9488 engProfile: raw::c_uint,
9489 info: *mut nvmlComputeInstanceProfileInfo_t,
9490 ) -> nvmlReturn_t {
9491 (self
9492 .nvmlGpuInstanceGetComputeInstanceProfileInfo
9493 .as_ref()
9494 .expect("Expected function, got error."))(gpuInstance, profile, engProfile, info)
9495 }
9496 pub unsafe fn nvmlGpuInstanceGetComputeInstanceProfileInfoV(
9497 &self,
9498 gpuInstance: nvmlGpuInstance_t,
9499 profile: raw::c_uint,
9500 engProfile: raw::c_uint,
9501 info: *mut nvmlComputeInstanceProfileInfo_v2_t,
9502 ) -> nvmlReturn_t {
9503 (self
9504 .nvmlGpuInstanceGetComputeInstanceProfileInfoV
9505 .as_ref()
9506 .expect("Expected function, got error."))(gpuInstance, profile, engProfile, info)
9507 }
9508 pub unsafe fn nvmlGpuInstanceGetComputeInstanceRemainingCapacity(
9509 &self,
9510 gpuInstance: nvmlGpuInstance_t,
9511 profileId: raw::c_uint,
9512 count: *mut raw::c_uint,
9513 ) -> nvmlReturn_t {
9514 (self
9515 .nvmlGpuInstanceGetComputeInstanceRemainingCapacity
9516 .as_ref()
9517 .expect("Expected function, got error."))(gpuInstance, profileId, count)
9518 }
9519 pub unsafe fn nvmlGpuInstanceGetComputeInstancePossiblePlacements(
9520 &self,
9521 gpuInstance: nvmlGpuInstance_t,
9522 profileId: raw::c_uint,
9523 placements: *mut nvmlComputeInstancePlacement_t,
9524 count: *mut raw::c_uint,
9525 ) -> nvmlReturn_t {
9526 (self
9527 .nvmlGpuInstanceGetComputeInstancePossiblePlacements
9528 .as_ref()
9529 .expect("Expected function, got error."))(
9530 gpuInstance, profileId, placements, count
9531 )
9532 }
9533 pub unsafe fn nvmlGpuInstanceCreateComputeInstance(
9534 &self,
9535 gpuInstance: nvmlGpuInstance_t,
9536 profileId: raw::c_uint,
9537 computeInstance: *mut nvmlComputeInstance_t,
9538 ) -> nvmlReturn_t {
9539 (self
9540 .nvmlGpuInstanceCreateComputeInstance
9541 .as_ref()
9542 .expect("Expected function, got error."))(
9543 gpuInstance, profileId, computeInstance
9544 )
9545 }
9546 pub unsafe fn nvmlGpuInstanceCreateComputeInstanceWithPlacement(
9547 &self,
9548 gpuInstance: nvmlGpuInstance_t,
9549 profileId: raw::c_uint,
9550 placement: *const nvmlComputeInstancePlacement_t,
9551 computeInstance: *mut nvmlComputeInstance_t,
9552 ) -> nvmlReturn_t {
9553 (self
9554 .nvmlGpuInstanceCreateComputeInstanceWithPlacement
9555 .as_ref()
9556 .expect("Expected function, got error."))(
9557 gpuInstance,
9558 profileId,
9559 placement,
9560 computeInstance,
9561 )
9562 }
9563 pub unsafe fn nvmlComputeInstanceDestroy(
9564 &self,
9565 computeInstance: nvmlComputeInstance_t,
9566 ) -> nvmlReturn_t {
9567 (self
9568 .nvmlComputeInstanceDestroy
9569 .as_ref()
9570 .expect("Expected function, got error."))(computeInstance)
9571 }
9572 pub unsafe fn nvmlGpuInstanceGetComputeInstances(
9573 &self,
9574 gpuInstance: nvmlGpuInstance_t,
9575 profileId: raw::c_uint,
9576 computeInstances: *mut nvmlComputeInstance_t,
9577 count: *mut raw::c_uint,
9578 ) -> nvmlReturn_t {
9579 (self
9580 .nvmlGpuInstanceGetComputeInstances
9581 .as_ref()
9582 .expect("Expected function, got error."))(
9583 gpuInstance,
9584 profileId,
9585 computeInstances,
9586 count,
9587 )
9588 }
9589 pub unsafe fn nvmlGpuInstanceGetComputeInstanceById(
9590 &self,
9591 gpuInstance: nvmlGpuInstance_t,
9592 id: raw::c_uint,
9593 computeInstance: *mut nvmlComputeInstance_t,
9594 ) -> nvmlReturn_t {
9595 (self
9596 .nvmlGpuInstanceGetComputeInstanceById
9597 .as_ref()
9598 .expect("Expected function, got error."))(gpuInstance, id, computeInstance)
9599 }
9600 pub unsafe fn nvmlComputeInstanceGetInfo_v2(
9601 &self,
9602 computeInstance: nvmlComputeInstance_t,
9603 info: *mut nvmlComputeInstanceInfo_t,
9604 ) -> nvmlReturn_t {
9605 (self
9606 .nvmlComputeInstanceGetInfo_v2
9607 .as_ref()
9608 .expect("Expected function, got error."))(computeInstance, info)
9609 }
9610 pub unsafe fn nvmlDeviceIsMigDeviceHandle(
9611 &self,
9612 device: nvmlDevice_t,
9613 isMigDevice: *mut raw::c_uint,
9614 ) -> nvmlReturn_t {
9615 (self
9616 .nvmlDeviceIsMigDeviceHandle
9617 .as_ref()
9618 .expect("Expected function, got error."))(device, isMigDevice)
9619 }
9620 pub unsafe fn nvmlDeviceGetGpuInstanceId(
9621 &self,
9622 device: nvmlDevice_t,
9623 id: *mut raw::c_uint,
9624 ) -> nvmlReturn_t {
9625 (self
9626 .nvmlDeviceGetGpuInstanceId
9627 .as_ref()
9628 .expect("Expected function, got error."))(device, id)
9629 }
9630 pub unsafe fn nvmlDeviceGetComputeInstanceId(
9631 &self,
9632 device: nvmlDevice_t,
9633 id: *mut raw::c_uint,
9634 ) -> nvmlReturn_t {
9635 (self
9636 .nvmlDeviceGetComputeInstanceId
9637 .as_ref()
9638 .expect("Expected function, got error."))(device, id)
9639 }
9640 pub unsafe fn nvmlDeviceGetMaxMigDeviceCount(
9641 &self,
9642 device: nvmlDevice_t,
9643 count: *mut raw::c_uint,
9644 ) -> nvmlReturn_t {
9645 (self
9646 .nvmlDeviceGetMaxMigDeviceCount
9647 .as_ref()
9648 .expect("Expected function, got error."))(device, count)
9649 }
9650 pub unsafe fn nvmlDeviceGetMigDeviceHandleByIndex(
9651 &self,
9652 device: nvmlDevice_t,
9653 index: raw::c_uint,
9654 migDevice: *mut nvmlDevice_t,
9655 ) -> nvmlReturn_t {
9656 (self
9657 .nvmlDeviceGetMigDeviceHandleByIndex
9658 .as_ref()
9659 .expect("Expected function, got error."))(device, index, migDevice)
9660 }
9661 pub unsafe fn nvmlDeviceGetDeviceHandleFromMigDeviceHandle(
9662 &self,
9663 migDevice: nvmlDevice_t,
9664 device: *mut nvmlDevice_t,
9665 ) -> nvmlReturn_t {
9666 (self
9667 .nvmlDeviceGetDeviceHandleFromMigDeviceHandle
9668 .as_ref()
9669 .expect("Expected function, got error."))(migDevice, device)
9670 }
9671 pub unsafe fn nvmlGpmMetricsGet(&self, metricsGet: *mut nvmlGpmMetricsGet_t) -> nvmlReturn_t {
9672 (self
9673 .nvmlGpmMetricsGet
9674 .as_ref()
9675 .expect("Expected function, got error."))(metricsGet)
9676 }
9677 pub unsafe fn nvmlGpmSampleFree(&self, gpmSample: nvmlGpmSample_t) -> nvmlReturn_t {
9678 (self
9679 .nvmlGpmSampleFree
9680 .as_ref()
9681 .expect("Expected function, got error."))(gpmSample)
9682 }
9683 pub unsafe fn nvmlGpmSampleAlloc(&self, gpmSample: *mut nvmlGpmSample_t) -> nvmlReturn_t {
9684 (self
9685 .nvmlGpmSampleAlloc
9686 .as_ref()
9687 .expect("Expected function, got error."))(gpmSample)
9688 }
9689 pub unsafe fn nvmlGpmSampleGet(
9690 &self,
9691 device: nvmlDevice_t,
9692 gpmSample: nvmlGpmSample_t,
9693 ) -> nvmlReturn_t {
9694 (self
9695 .nvmlGpmSampleGet
9696 .as_ref()
9697 .expect("Expected function, got error."))(device, gpmSample)
9698 }
9699 pub unsafe fn nvmlGpmMigSampleGet(
9700 &self,
9701 device: nvmlDevice_t,
9702 gpuInstanceId: raw::c_uint,
9703 gpmSample: nvmlGpmSample_t,
9704 ) -> nvmlReturn_t {
9705 (self
9706 .nvmlGpmMigSampleGet
9707 .as_ref()
9708 .expect("Expected function, got error."))(device, gpuInstanceId, gpmSample)
9709 }
9710 pub unsafe fn nvmlGpmQueryDeviceSupport(
9711 &self,
9712 device: nvmlDevice_t,
9713 gpmSupport: *mut nvmlGpmSupport_t,
9714 ) -> nvmlReturn_t {
9715 (self
9716 .nvmlGpmQueryDeviceSupport
9717 .as_ref()
9718 .expect("Expected function, got error."))(device, gpmSupport)
9719 }
9720 pub unsafe fn nvmlGpmQueryIfStreamingEnabled(
9721 &self,
9722 device: nvmlDevice_t,
9723 state: *mut raw::c_uint,
9724 ) -> nvmlReturn_t {
9725 (self
9726 .nvmlGpmQueryIfStreamingEnabled
9727 .as_ref()
9728 .expect("Expected function, got error."))(device, state)
9729 }
9730 pub unsafe fn nvmlGpmSetStreamingEnabled(
9731 &self,
9732 device: nvmlDevice_t,
9733 state: raw::c_uint,
9734 ) -> nvmlReturn_t {
9735 (self
9736 .nvmlGpmSetStreamingEnabled
9737 .as_ref()
9738 .expect("Expected function, got error."))(device, state)
9739 }
9740 pub unsafe fn nvmlDeviceGetCapabilities(
9741 &self,
9742 device: nvmlDevice_t,
9743 caps: *mut nvmlDeviceCapabilities_t,
9744 ) -> nvmlReturn_t {
9745 (self
9746 .nvmlDeviceGetCapabilities
9747 .as_ref()
9748 .expect("Expected function, got error."))(device, caps)
9749 }
9750 pub unsafe fn nvmlDeviceWorkloadPowerProfileGetProfilesInfo(
9751 &self,
9752 device: nvmlDevice_t,
9753 profilesInfo: *mut nvmlWorkloadPowerProfileProfilesInfo_t,
9754 ) -> nvmlReturn_t {
9755 (self
9756 .nvmlDeviceWorkloadPowerProfileGetProfilesInfo
9757 .as_ref()
9758 .expect("Expected function, got error."))(device, profilesInfo)
9759 }
9760 pub unsafe fn nvmlDeviceWorkloadPowerProfileGetCurrentProfiles(
9761 &self,
9762 device: nvmlDevice_t,
9763 currentProfiles: *mut nvmlWorkloadPowerProfileCurrentProfiles_t,
9764 ) -> nvmlReturn_t {
9765 (self
9766 .nvmlDeviceWorkloadPowerProfileGetCurrentProfiles
9767 .as_ref()
9768 .expect("Expected function, got error."))(device, currentProfiles)
9769 }
9770 pub unsafe fn nvmlDeviceWorkloadPowerProfileSetRequestedProfiles(
9771 &self,
9772 device: nvmlDevice_t,
9773 requestedProfiles: *mut nvmlWorkloadPowerProfileRequestedProfiles_t,
9774 ) -> nvmlReturn_t {
9775 (self
9776 .nvmlDeviceWorkloadPowerProfileSetRequestedProfiles
9777 .as_ref()
9778 .expect("Expected function, got error."))(device, requestedProfiles)
9779 }
9780 pub unsafe fn nvmlDeviceWorkloadPowerProfileClearRequestedProfiles(
9781 &self,
9782 device: nvmlDevice_t,
9783 requestedProfiles: *mut nvmlWorkloadPowerProfileRequestedProfiles_t,
9784 ) -> nvmlReturn_t {
9785 (self
9786 .nvmlDeviceWorkloadPowerProfileClearRequestedProfiles
9787 .as_ref()
9788 .expect("Expected function, got error."))(device, requestedProfiles)
9789 }
9790 pub unsafe fn nvmlDevicePowerSmoothingActivatePresetProfile(
9791 &self,
9792 device: nvmlDevice_t,
9793 profile: *mut nvmlPowerSmoothingProfile_t,
9794 ) -> nvmlReturn_t {
9795 (self
9796 .nvmlDevicePowerSmoothingActivatePresetProfile
9797 .as_ref()
9798 .expect("Expected function, got error."))(device, profile)
9799 }
9800 pub unsafe fn nvmlDevicePowerSmoothingUpdatePresetProfileParam(
9801 &self,
9802 device: nvmlDevice_t,
9803 profile: *mut nvmlPowerSmoothingProfile_t,
9804 ) -> nvmlReturn_t {
9805 (self
9806 .nvmlDevicePowerSmoothingUpdatePresetProfileParam
9807 .as_ref()
9808 .expect("Expected function, got error."))(device, profile)
9809 }
9810 pub unsafe fn nvmlDevicePowerSmoothingSetState(
9811 &self,
9812 device: nvmlDevice_t,
9813 state: *mut nvmlPowerSmoothingState_t,
9814 ) -> nvmlReturn_t {
9815 (self
9816 .nvmlDevicePowerSmoothingSetState
9817 .as_ref()
9818 .expect("Expected function, got error."))(device, state)
9819 }
9820 #[cfg(feature = "legacy-functions")]
9821 pub unsafe fn nvmlInit(&self) -> nvmlReturn_t {
9822 (self
9823 .nvmlInit
9824 .as_ref()
9825 .expect("Expected function, got error."))()
9826 }
9827 #[cfg(feature = "legacy-functions")]
9828 pub unsafe fn nvmlDeviceGetCount(&self, deviceCount: *mut raw::c_uint) -> nvmlReturn_t {
9829 (self
9830 .nvmlDeviceGetCount
9831 .as_ref()
9832 .expect("Expected function, got error."))(deviceCount)
9833 }
9834 #[cfg(feature = "legacy-functions")]
9835 pub unsafe fn nvmlDeviceGetHandleByIndex(
9836 &self,
9837 index: raw::c_uint,
9838 device: *mut nvmlDevice_t,
9839 ) -> nvmlReturn_t {
9840 (self
9841 .nvmlDeviceGetHandleByIndex
9842 .as_ref()
9843 .expect("Expected function, got error."))(index, device)
9844 }
9845 #[cfg(feature = "legacy-functions")]
9846 pub unsafe fn nvmlDeviceGetHandleByPciBusId(
9847 &self,
9848 pciBusId: *const raw::c_char,
9849 device: *mut nvmlDevice_t,
9850 ) -> nvmlReturn_t {
9851 (self
9852 .nvmlDeviceGetHandleByPciBusId
9853 .as_ref()
9854 .expect("Expected function, got error."))(pciBusId, device)
9855 }
9856 #[cfg(feature = "legacy-functions")]
9857 pub unsafe fn nvmlDeviceGetPciInfo(
9858 &self,
9859 device: nvmlDevice_t,
9860 pci: *mut nvmlPciInfo_t,
9861 ) -> nvmlReturn_t {
9862 (self
9863 .nvmlDeviceGetPciInfo
9864 .as_ref()
9865 .expect("Expected function, got error."))(device, pci)
9866 }
9867 #[cfg(feature = "legacy-functions")]
9868 pub unsafe fn nvmlDeviceGetPciInfo_v2(
9869 &self,
9870 device: nvmlDevice_t,
9871 pci: *mut nvmlPciInfo_t,
9872 ) -> nvmlReturn_t {
9873 (self
9874 .nvmlDeviceGetPciInfo_v2
9875 .as_ref()
9876 .expect("Expected function, got error."))(device, pci)
9877 }
9878 #[cfg(feature = "legacy-functions")]
9879 pub unsafe fn nvmlDeviceGetNvLinkRemotePciInfo(
9880 &self,
9881 device: nvmlDevice_t,
9882 link: raw::c_uint,
9883 pci: *mut nvmlPciInfo_t,
9884 ) -> nvmlReturn_t {
9885 (self
9886 .nvmlDeviceGetNvLinkRemotePciInfo
9887 .as_ref()
9888 .expect("Expected function, got error."))(device, link, pci)
9889 }
9890 #[cfg(feature = "legacy-functions")]
9891 pub unsafe fn nvmlDeviceGetGridLicensableFeatures(
9892 &self,
9893 device: nvmlDevice_t,
9894 pGridLicensableFeatures: *mut nvmlGridLicensableFeatures_t,
9895 ) -> nvmlReturn_t {
9896 (self
9897 .nvmlDeviceGetGridLicensableFeatures
9898 .as_ref()
9899 .expect("Expected function, got error."))(device, pGridLicensableFeatures)
9900 }
9901 #[cfg(feature = "legacy-functions")]
9902 pub unsafe fn nvmlDeviceGetGridLicensableFeatures_v2(
9903 &self,
9904 device: nvmlDevice_t,
9905 pGridLicensableFeatures: *mut nvmlGridLicensableFeatures_t,
9906 ) -> nvmlReturn_t {
9907 (self
9908 .nvmlDeviceGetGridLicensableFeatures_v2
9909 .as_ref()
9910 .expect("Expected function, got error."))(device, pGridLicensableFeatures)
9911 }
9912 #[cfg(feature = "legacy-functions")]
9913 pub unsafe fn nvmlDeviceGetGridLicensableFeatures_v3(
9914 &self,
9915 device: nvmlDevice_t,
9916 pGridLicensableFeatures: *mut nvmlGridLicensableFeatures_t,
9917 ) -> nvmlReturn_t {
9918 (self
9919 .nvmlDeviceGetGridLicensableFeatures_v3
9920 .as_ref()
9921 .expect("Expected function, got error."))(device, pGridLicensableFeatures)
9922 }
9923 #[cfg(feature = "legacy-functions")]
9924 pub unsafe fn nvmlDeviceRemoveGpu(&self, pciInfo: *mut nvmlPciInfo_t) -> nvmlReturn_t {
9925 (self
9926 .nvmlDeviceRemoveGpu
9927 .as_ref()
9928 .expect("Expected function, got error."))(pciInfo)
9929 }
9930 #[cfg(feature = "legacy-functions")]
9931 pub unsafe fn nvmlEventSetWait(
9932 &self,
9933 set: nvmlEventSet_t,
9934 data: *mut nvmlEventData_t,
9935 timeoutms: raw::c_uint,
9936 ) -> nvmlReturn_t {
9937 (self
9938 .nvmlEventSetWait
9939 .as_ref()
9940 .expect("Expected function, got error."))(set, data, timeoutms)
9941 }
9942 #[cfg(feature = "legacy-functions")]
9943 pub unsafe fn nvmlDeviceGetAttributes(
9944 &self,
9945 device: nvmlDevice_t,
9946 attributes: *mut nvmlDeviceAttributes_t,
9947 ) -> nvmlReturn_t {
9948 (self
9949 .nvmlDeviceGetAttributes
9950 .as_ref()
9951 .expect("Expected function, got error."))(device, attributes)
9952 }
9953 #[cfg(feature = "legacy-functions")]
9954 pub unsafe fn nvmlComputeInstanceGetInfo(
9955 &self,
9956 computeInstance: nvmlComputeInstance_t,
9957 info: *mut nvmlComputeInstanceInfo_t,
9958 ) -> nvmlReturn_t {
9959 (self
9960 .nvmlComputeInstanceGetInfo
9961 .as_ref()
9962 .expect("Expected function, got error."))(computeInstance, info)
9963 }
9964 #[cfg(feature = "legacy-functions")]
9965 pub unsafe fn nvmlDeviceGetComputeRunningProcesses(
9966 &self,
9967 device: nvmlDevice_t,
9968 infoCount: *mut raw::c_uint,
9969 infos: *mut nvmlProcessInfo_v1_t,
9970 ) -> nvmlReturn_t {
9971 (self
9972 .nvmlDeviceGetComputeRunningProcesses
9973 .as_ref()
9974 .expect("Expected function, got error."))(device, infoCount, infos)
9975 }
9976 #[cfg(feature = "legacy-functions")]
9977 pub unsafe fn nvmlDeviceGetComputeRunningProcesses_v2(
9978 &self,
9979 device: nvmlDevice_t,
9980 infoCount: *mut raw::c_uint,
9981 infos: *mut nvmlProcessInfo_v2_t,
9982 ) -> nvmlReturn_t {
9983 (self
9984 .nvmlDeviceGetComputeRunningProcesses_v2
9985 .as_ref()
9986 .expect("Expected function, got error."))(device, infoCount, infos)
9987 }
9988 #[cfg(feature = "legacy-functions")]
9989 pub unsafe fn nvmlDeviceGetGraphicsRunningProcesses(
9990 &self,
9991 device: nvmlDevice_t,
9992 infoCount: *mut raw::c_uint,
9993 infos: *mut nvmlProcessInfo_v1_t,
9994 ) -> nvmlReturn_t {
9995 (self
9996 .nvmlDeviceGetGraphicsRunningProcesses
9997 .as_ref()
9998 .expect("Expected function, got error."))(device, infoCount, infos)
9999 }
10000 #[cfg(feature = "legacy-functions")]
10001 pub unsafe fn nvmlDeviceGetGraphicsRunningProcesses_v2(
10002 &self,
10003 device: nvmlDevice_t,
10004 infoCount: *mut raw::c_uint,
10005 infos: *mut nvmlProcessInfo_v2_t,
10006 ) -> nvmlReturn_t {
10007 (self
10008 .nvmlDeviceGetGraphicsRunningProcesses_v2
10009 .as_ref()
10010 .expect("Expected function, got error."))(device, infoCount, infos)
10011 }
10012 #[cfg(feature = "legacy-functions")]
10013 pub unsafe fn nvmlDeviceGetMPSComputeRunningProcesses(
10014 &self,
10015 device: nvmlDevice_t,
10016 infoCount: *mut raw::c_uint,
10017 infos: *mut nvmlProcessInfo_v1_t,
10018 ) -> nvmlReturn_t {
10019 (self
10020 .nvmlDeviceGetMPSComputeRunningProcesses
10021 .as_ref()
10022 .expect("Expected function, got error."))(device, infoCount, infos)
10023 }
10024 #[cfg(feature = "legacy-functions")]
10025 pub unsafe fn nvmlDeviceGetMPSComputeRunningProcesses_v2(
10026 &self,
10027 device: nvmlDevice_t,
10028 infoCount: *mut raw::c_uint,
10029 infos: *mut nvmlProcessInfo_v2_t,
10030 ) -> nvmlReturn_t {
10031 (self
10032 .nvmlDeviceGetMPSComputeRunningProcesses_v2
10033 .as_ref()
10034 .expect("Expected function, got error."))(device, infoCount, infos)
10035 }
10036 #[cfg(feature = "legacy-functions")]
10037 pub unsafe fn nvmlDeviceGetGpuInstancePossiblePlacements(
10038 &self,
10039 device: nvmlDevice_t,
10040 profileId: raw::c_uint,
10041 placements: *mut nvmlGpuInstancePlacement_t,
10042 count: *mut raw::c_uint,
10043 ) -> nvmlReturn_t {
10044 (self
10045 .nvmlDeviceGetGpuInstancePossiblePlacements
10046 .as_ref()
10047 .expect("Expected function, got error."))(device, profileId, placements, count)
10048 }
10049 #[cfg(feature = "legacy-functions")]
10050 pub unsafe fn nvmlVgpuInstanceGetLicenseInfo(
10051 &self,
10052 vgpuInstance: nvmlVgpuInstance_t,
10053 licenseInfo: *mut nvmlVgpuLicenseInfo_t,
10054 ) -> nvmlReturn_t {
10055 (self
10056 .nvmlVgpuInstanceGetLicenseInfo
10057 .as_ref()
10058 .expect("Expected function, got error."))(vgpuInstance, licenseInfo)
10059 }
10060 pub unsafe fn nvmlDeviceGetDriverModel(
10061 &self,
10062 device: nvmlDevice_t,
10063 current: *mut nvmlDriverModel_t,
10064 pending: *mut nvmlDriverModel_t,
10065 ) -> nvmlReturn_t {
10066 (self
10067 .nvmlDeviceGetDriverModel
10068 .as_ref()
10069 .expect("Expected function, got error."))(device, current, pending)
10070 }
10071}