summaryrefslogtreecommitdiffstats
path: root/src/go/collectors/go.d.plugin/modules/nvidia_smi
diff options
context:
space:
mode:
Diffstat (limited to 'src/go/collectors/go.d.plugin/modules/nvidia_smi')
l---------src/go/collectors/go.d.plugin/modules/nvidia_smi/README.md1
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/charts.go411
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/collect.go72
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/collect_csv.go198
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/collect_xml.go265
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/config_schema.json53
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/exec.go78
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/init.go22
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/integrations/nvidia_gpu.md217
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/metadata.yaml296
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/nvidia_smi.go116
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/nvidia_smi_test.go561
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/a100-sxm4-mig.xml359
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/config.json6
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/config.yaml4
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/help-query-gpu.txt414
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/rtx-2080-win.xml776
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/rtx-3060.xml917
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/rtx-4090-driver-535.xml1082
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/tesla-p100.csv2
-rw-r--r--src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/tesla-p100.xml313
21 files changed, 6163 insertions, 0 deletions
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/README.md b/src/go/collectors/go.d.plugin/modules/nvidia_smi/README.md
new file mode 120000
index 000000000..3527bdb4b
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/README.md
@@ -0,0 +1 @@
+integrations/nvidia_gpu.md \ No newline at end of file
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/charts.go b/src/go/collectors/go.d.plugin/modules/nvidia_smi/charts.go
new file mode 100644
index 000000000..4ffdb47b1
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/charts.go
@@ -0,0 +1,411 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+package nvidia_smi
+
+import (
+ "fmt"
+ "strings"
+
+ "github.com/netdata/netdata/go/go.d.plugin/agent/module"
+)
+
+const (
+ prioGPUPCIBandwidthUsage = module.Priority + iota
+ prioGPUPCIBandwidthUtilization
+ prioGPUFanSpeed
+ prioGPUUtilization
+ prioGPUMemUtilization
+ prioGPUDecoderUtilization
+ prioGPUEncoderUtilization
+ prioGPUMIGModeStatus
+ prioGPUMIGDevicesCount
+ prioGPUFBMemoryUsage
+ prioGPUMIGFBMemoryUsage
+ prioGPUBAR1MemoryUsage
+ prioGPUMIGBAR1MemoryUsage
+ prioGPUTemperatureChart
+ prioGPUVoltageChart
+ prioGPUClockFreq
+ prioGPUPowerDraw
+ prioGPUPerformanceState
+)
+
+var (
+ gpuXMLCharts = module.Charts{
+ gpuPCIBandwidthUsageChartTmpl.Copy(),
+ gpuPCIBandwidthUtilizationChartTmpl.Copy(),
+ gpuFanSpeedPercChartTmpl.Copy(),
+ gpuUtilizationChartTmpl.Copy(),
+ gpuMemUtilizationChartTmpl.Copy(),
+ gpuDecoderUtilizationChartTmpl.Copy(),
+ gpuEncoderUtilizationChartTmpl.Copy(),
+ gpuMIGModeCurrentStatusChartTmpl.Copy(),
+ gpuMIGDevicesCountChartTmpl.Copy(),
+ gpuFrameBufferMemoryUsageChartTmpl.Copy(),
+ gpuBAR1MemoryUsageChartTmpl.Copy(),
+ gpuVoltageChartTmpl.Copy(),
+ gpuTemperatureChartTmpl.Copy(),
+ gpuClockFreqChartTmpl.Copy(),
+ gpuPowerDrawChartTmpl.Copy(),
+ gpuPerformanceStateChartTmpl.Copy(),
+ }
+ migDeviceXMLCharts = module.Charts{
+ migDeviceFrameBufferMemoryUsageChartTmpl.Copy(),
+ migDeviceBAR1MemoryUsageChartTmpl.Copy(),
+ }
+ gpuCSVCharts = module.Charts{
+ gpuFanSpeedPercChartTmpl.Copy(),
+ gpuUtilizationChartTmpl.Copy(),
+ gpuMemUtilizationChartTmpl.Copy(),
+ gpuFrameBufferMemoryUsageChartTmpl.Copy(),
+ gpuTemperatureChartTmpl.Copy(),
+ gpuClockFreqChartTmpl.Copy(),
+ gpuPowerDrawChartTmpl.Copy(),
+ gpuPerformanceStateChartTmpl.Copy(),
+ }
+)
+
+var (
+ gpuPCIBandwidthUsageChartTmpl = module.Chart{
+ ID: "gpu_%s_pcie_bandwidth_usage",
+ Title: "PCI Express Bandwidth Usage",
+ Units: "B/s",
+ Fam: "pcie bandwidth",
+ Ctx: "nvidia_smi.gpu_pcie_bandwidth_usage",
+ Type: module.Area,
+ Priority: prioGPUPCIBandwidthUsage,
+ Dims: module.Dims{
+ {ID: "gpu_%s_pcie_bandwidth_usage_rx", Name: "rx"},
+ {ID: "gpu_%s_pcie_bandwidth_usage_tx", Name: "tx", Mul: -1},
+ },
+ }
+ gpuPCIBandwidthUtilizationChartTmpl = module.Chart{
+ ID: "gpu_%s_pcie_bandwidth_utilization",
+ Title: "PCI Express Bandwidth Utilization",
+ Units: "percentage",
+ Fam: "pcie bandwidth",
+ Ctx: "nvidia_smi.gpu_pcie_bandwidth_utilization",
+ Priority: prioGPUPCIBandwidthUtilization,
+ Dims: module.Dims{
+ {ID: "gpu_%s_pcie_bandwidth_utilization_rx", Name: "rx", Div: 100},
+ {ID: "gpu_%s_pcie_bandwidth_utilization_tx", Name: "tx", Div: 100},
+ },
+ }
+ gpuFanSpeedPercChartTmpl = module.Chart{
+ ID: "gpu_%s_fan_speed_perc",
+ Title: "Fan speed",
+ Units: "%",
+ Fam: "fan speed",
+ Ctx: "nvidia_smi.gpu_fan_speed_perc",
+ Priority: prioGPUFanSpeed,
+ Dims: module.Dims{
+ {ID: "gpu_%s_fan_speed_perc", Name: "fan_speed"},
+ },
+ }
+ gpuUtilizationChartTmpl = module.Chart{
+ ID: "gpu_%s_gpu_utilization",
+ Title: "GPU utilization",
+ Units: "%",
+ Fam: "gpu utilization",
+ Ctx: "nvidia_smi.gpu_utilization",
+ Priority: prioGPUUtilization,
+ Dims: module.Dims{
+ {ID: "gpu_%s_gpu_utilization", Name: "gpu"},
+ },
+ }
+ gpuMemUtilizationChartTmpl = module.Chart{
+ ID: "gpu_%s_memory_utilization",
+ Title: "Memory utilization",
+ Units: "%",
+ Fam: "mem utilization",
+ Ctx: "nvidia_smi.gpu_memory_utilization",
+ Priority: prioGPUMemUtilization,
+ Dims: module.Dims{
+ {ID: "gpu_%s_mem_utilization", Name: "memory"},
+ },
+ }
+ gpuDecoderUtilizationChartTmpl = module.Chart{
+ ID: "gpu_%s_decoder_utilization",
+ Title: "Decoder utilization",
+ Units: "%",
+ Fam: "dec utilization",
+ Ctx: "nvidia_smi.gpu_decoder_utilization",
+ Priority: prioGPUDecoderUtilization,
+ Dims: module.Dims{
+ {ID: "gpu_%s_decoder_utilization", Name: "decoder"},
+ },
+ }
+ gpuEncoderUtilizationChartTmpl = module.Chart{
+ ID: "gpu_%s_encoder_utilization",
+ Title: "Encoder utilization",
+ Units: "%",
+ Fam: "enc utilization",
+ Ctx: "nvidia_smi.gpu_encoder_utilization",
+ Priority: prioGPUEncoderUtilization,
+ Dims: module.Dims{
+ {ID: "gpu_%s_encoder_utilization", Name: "encoder"},
+ },
+ }
+ gpuMIGModeCurrentStatusChartTmpl = module.Chart{
+ ID: "gpu_%s_mig_mode_current_status",
+ Title: "MIG current mode",
+ Units: "status",
+ Fam: "mig",
+ Ctx: "nvidia_smi.gpu_mig_mode_current_status",
+ Priority: prioGPUMIGModeStatus,
+ Dims: module.Dims{
+ {ID: "gpu_%s_mig_current_mode_enabled", Name: "enabled"},
+ {ID: "gpu_%s_mig_current_mode_disabled", Name: "disabled"},
+ },
+ }
+ gpuMIGDevicesCountChartTmpl = module.Chart{
+ ID: "gpu_%s_mig_devices_count",
+ Title: "MIG devices",
+ Units: "devices",
+ Fam: "mig",
+ Ctx: "nvidia_smi.gpu_mig_devices_count",
+ Priority: prioGPUMIGDevicesCount,
+ Dims: module.Dims{
+ {ID: "gpu_%s_mig_devices_count", Name: "mig"},
+ },
+ }
+ gpuFrameBufferMemoryUsageChartTmpl = module.Chart{
+ ID: "gpu_%s_frame_buffer_memory_usage",
+ Title: "Frame buffer memory usage",
+ Units: "B",
+ Fam: "fb mem usage",
+ Ctx: "nvidia_smi.gpu_frame_buffer_memory_usage",
+ Type: module.Stacked,
+ Priority: prioGPUFBMemoryUsage,
+ Dims: module.Dims{
+ {ID: "gpu_%s_frame_buffer_memory_usage_free", Name: "free"},
+ {ID: "gpu_%s_frame_buffer_memory_usage_used", Name: "used"},
+ {ID: "gpu_%s_frame_buffer_memory_usage_reserved", Name: "reserved"},
+ },
+ }
+ gpuBAR1MemoryUsageChartTmpl = module.Chart{
+ ID: "gpu_%s_bar1_memory_usage",
+ Title: "BAR1 memory usage",
+ Units: "B",
+ Fam: "bar1 mem usage",
+ Ctx: "nvidia_smi.gpu_bar1_memory_usage",
+ Type: module.Stacked,
+ Priority: prioGPUBAR1MemoryUsage,
+ Dims: module.Dims{
+ {ID: "gpu_%s_bar1_memory_usage_free", Name: "free"},
+ {ID: "gpu_%s_bar1_memory_usage_used", Name: "used"},
+ },
+ }
+ gpuTemperatureChartTmpl = module.Chart{
+ ID: "gpu_%s_temperature",
+ Title: "Temperature",
+ Units: "Celsius",
+ Fam: "temperature",
+ Ctx: "nvidia_smi.gpu_temperature",
+ Priority: prioGPUTemperatureChart,
+ Dims: module.Dims{
+ {ID: "gpu_%s_temperature", Name: "temperature"},
+ },
+ }
+ gpuVoltageChartTmpl = module.Chart{
+ ID: "gpu_%s_voltage",
+ Title: "Voltage",
+ Units: "V",
+ Fam: "voltage",
+ Ctx: "nvidia_smi.gpu_voltage",
+ Priority: prioGPUVoltageChart,
+ Dims: module.Dims{
+ {ID: "gpu_%s_voltage", Name: "voltage", Div: 1000}, // mV => V
+ },
+ }
+ gpuClockFreqChartTmpl = module.Chart{
+ ID: "gpu_%s_clock_freq",
+ Title: "Clock current frequency",
+ Units: "MHz",
+ Fam: "clocks",
+ Ctx: "nvidia_smi.gpu_clock_freq",
+ Priority: prioGPUClockFreq,
+ Dims: module.Dims{
+ {ID: "gpu_%s_graphics_clock", Name: "graphics"},
+ {ID: "gpu_%s_video_clock", Name: "video"},
+ {ID: "gpu_%s_sm_clock", Name: "sm"},
+ {ID: "gpu_%s_mem_clock", Name: "mem"},
+ },
+ }
+ gpuPowerDrawChartTmpl = module.Chart{
+ ID: "gpu_%s_power_draw",
+ Title: "Power draw",
+ Units: "Watts",
+ Fam: "power draw",
+ Ctx: "nvidia_smi.gpu_power_draw",
+ Priority: prioGPUPowerDraw,
+ Dims: module.Dims{
+ {ID: "gpu_%s_power_draw", Name: "power_draw"},
+ },
+ }
+ gpuPerformanceStateChartTmpl = module.Chart{
+ ID: "gpu_%s_performance_state",
+ Title: "Performance state",
+ Units: "state",
+ Fam: "performance state",
+ Ctx: "nvidia_smi.gpu_performance_state",
+ Priority: prioGPUPerformanceState,
+ Dims: module.Dims{
+ {ID: "gpu_%s_performance_state_P0", Name: "P0"},
+ {ID: "gpu_%s_performance_state_P1", Name: "P1"},
+ {ID: "gpu_%s_performance_state_P2", Name: "P2"},
+ {ID: "gpu_%s_performance_state_P3", Name: "P3"},
+ {ID: "gpu_%s_performance_state_P4", Name: "P4"},
+ {ID: "gpu_%s_performance_state_P5", Name: "P5"},
+ {ID: "gpu_%s_performance_state_P6", Name: "P6"},
+ {ID: "gpu_%s_performance_state_P7", Name: "P7"},
+ {ID: "gpu_%s_performance_state_P8", Name: "P8"},
+ {ID: "gpu_%s_performance_state_P9", Name: "P9"},
+ {ID: "gpu_%s_performance_state_P10", Name: "P10"},
+ {ID: "gpu_%s_performance_state_P11", Name: "P11"},
+ {ID: "gpu_%s_performance_state_P12", Name: "P12"},
+ {ID: "gpu_%s_performance_state_P13", Name: "P13"},
+ {ID: "gpu_%s_performance_state_P14", Name: "P14"},
+ {ID: "gpu_%s_performance_state_P15", Name: "P15"},
+ },
+ }
+)
+
+func (nv *NvidiaSMI) addGPUXMLCharts(gpu xmlGPUInfo) {
+ charts := gpuXMLCharts.Copy()
+
+ if !isValidValue(gpu.Utilization.GpuUtil) {
+ _ = charts.Remove(gpuUtilizationChartTmpl.ID)
+ }
+ if !isValidValue(gpu.Utilization.MemoryUtil) {
+ _ = charts.Remove(gpuMemUtilizationChartTmpl.ID)
+ }
+ if !isValidValue(gpu.Utilization.DecoderUtil) {
+ _ = charts.Remove(gpuDecoderUtilizationChartTmpl.ID)
+ }
+ if !isValidValue(gpu.Utilization.EncoderUtil) {
+ _ = charts.Remove(gpuEncoderUtilizationChartTmpl.ID)
+ }
+ if !isValidValue(gpu.MIGMode.CurrentMIG) {
+ _ = charts.Remove(gpuMIGModeCurrentStatusChartTmpl.ID)
+ _ = charts.Remove(gpuMIGDevicesCountChartTmpl.ID)
+ }
+ if !isValidValue(gpu.FanSpeed) {
+ _ = charts.Remove(gpuFanSpeedPercChartTmpl.ID)
+ }
+ if (gpu.PowerReadings == nil || !isValidValue(gpu.PowerReadings.PowerDraw)) &&
+ (gpu.GPUPowerReadings == nil || !isValidValue(gpu.GPUPowerReadings.PowerDraw)) {
+ _ = charts.Remove(gpuPowerDrawChartTmpl.ID)
+ }
+ if !isValidValue(gpu.Voltage.GraphicsVolt) {
+ _ = charts.Remove(gpuVoltageChartTmpl.ID)
+ }
+
+ for _, c := range *charts {
+ c.ID = fmt.Sprintf(c.ID, strings.ToLower(gpu.UUID))
+ c.Labels = []module.Label{
+ // csv output has no 'product_brand'
+ {Key: "uuid", Value: gpu.UUID},
+ {Key: "product_name", Value: gpu.ProductName},
+ }
+ for _, d := range c.Dims {
+ d.ID = fmt.Sprintf(d.ID, gpu.UUID)
+ }
+ }
+
+ if err := nv.Charts().Add(*charts...); err != nil {
+ nv.Warning(err)
+ }
+}
+
+func (nv *NvidiaSMI) addGPUCSVCharts(gpu csvGPUInfo) {
+ charts := gpuCSVCharts.Copy()
+
+ if !isValidValue(gpu.utilizationGPU) {
+ _ = charts.Remove(gpuUtilizationChartTmpl.ID)
+ }
+ if !isValidValue(gpu.utilizationMemory) {
+ _ = charts.Remove(gpuMemUtilizationChartTmpl.ID)
+ }
+ if !isValidValue(gpu.fanSpeed) {
+ _ = charts.Remove(gpuFanSpeedPercChartTmpl.ID)
+ }
+ if !isValidValue(gpu.powerDraw) {
+ _ = charts.Remove(gpuPowerDrawChartTmpl.ID)
+ }
+
+ for _, c := range *charts {
+ c.ID = fmt.Sprintf(c.ID, strings.ToLower(gpu.uuid))
+ c.Labels = []module.Label{
+ {Key: "product_name", Value: gpu.name},
+ }
+ for _, d := range c.Dims {
+ d.ID = fmt.Sprintf(d.ID, gpu.uuid)
+ }
+ }
+
+ if err := nv.Charts().Add(*charts...); err != nil {
+ nv.Warning(err)
+ }
+}
+
+var (
+ migDeviceFrameBufferMemoryUsageChartTmpl = module.Chart{
+ ID: "mig_instance_%s_gpu_%s_frame_buffer_memory_usage",
+ Title: "MIG Frame buffer memory usage",
+ Units: "B",
+ Fam: "fb mem usage",
+ Ctx: "nvidia_smi.gpu_mig_frame_buffer_memory_usage",
+ Type: module.Stacked,
+ Priority: prioGPUMIGFBMemoryUsage,
+ Dims: module.Dims{
+ {ID: "mig_instance_%s_gpu_%s_frame_buffer_memory_usage_free", Name: "free"},
+ {ID: "mig_instance_%s_gpu_%s_frame_buffer_memory_usage_used", Name: "used"},
+ {ID: "mig_instance_%s_gpu_%s_frame_buffer_memory_usage_reserved", Name: "reserved"},
+ },
+ }
+ migDeviceBAR1MemoryUsageChartTmpl = module.Chart{
+ ID: "mig_instance_%s_gpu_%s_bar1_memory_usage",
+ Title: "MIG BAR1 memory usage",
+ Units: "B",
+ Fam: "bar1 mem usage",
+ Ctx: "nvidia_smi.gpu_mig_bar1_memory_usage",
+ Type: module.Stacked,
+ Priority: prioGPUMIGBAR1MemoryUsage,
+ Dims: module.Dims{
+ {ID: "mig_instance_%s_gpu_%s_bar1_memory_usage_free", Name: "free"},
+ {ID: "mig_instance_%s_gpu_%s_bar1_memory_usage_used", Name: "used"},
+ },
+ }
+)
+
+func (nv *NvidiaSMI) addMIGDeviceXMLCharts(gpu xmlGPUInfo, mig xmlMIGDeviceInfo) {
+ charts := migDeviceXMLCharts.Copy()
+
+ for _, c := range *charts {
+ c.ID = fmt.Sprintf(c.ID, strings.ToLower(mig.GPUInstanceID), strings.ToLower(gpu.UUID))
+ c.Labels = []module.Label{
+ {Key: "gpu_uuid", Value: gpu.UUID},
+ {Key: "gpu_product_name", Value: gpu.ProductName},
+ {Key: "gpu_instance_id", Value: mig.GPUInstanceID},
+ }
+ for _, d := range c.Dims {
+ d.ID = fmt.Sprintf(d.ID, mig.GPUInstanceID, gpu.UUID)
+ }
+ }
+
+ if err := nv.Charts().Add(*charts...); err != nil {
+ nv.Warning(err)
+ }
+}
+
+func (nv *NvidiaSMI) removeCharts(prefix string) {
+ prefix = strings.ToLower(prefix)
+
+ for _, c := range *nv.Charts() {
+ if strings.HasPrefix(c.ID, prefix) {
+ c.MarkRemove()
+ c.MarkNotCreated()
+ }
+ }
+}
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/collect.go b/src/go/collectors/go.d.plugin/modules/nvidia_smi/collect.go
new file mode 100644
index 000000000..0830b54a3
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/collect.go
@@ -0,0 +1,72 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+package nvidia_smi
+
+import (
+ "errors"
+ "strconv"
+ "strings"
+)
+
+func (nv *NvidiaSMI) collect() (map[string]int64, error) {
+ if nv.exec == nil {
+ return nil, errors.New("nvidia-smi exec is not initialized")
+ }
+
+ mx := make(map[string]int64)
+
+ if err := nv.collectGPUInfo(mx); err != nil {
+ return nil, err
+ }
+
+ return mx, nil
+}
+
+func (nv *NvidiaSMI) collectGPUInfo(mx map[string]int64) error {
+ if nv.UseCSVFormat {
+ return nv.collectGPUInfoCSV(mx)
+ }
+ return nv.collectGPUInfoXML(mx)
+}
+
+func addMetric(mx map[string]int64, key, value string, mul int) {
+ if !isValidValue(value) {
+ return
+ }
+
+ value = removeUnits(value)
+
+ v, err := strconv.ParseFloat(value, 64)
+ if err != nil {
+ return
+ }
+
+ if mul > 0 {
+ v *= float64(mul)
+ }
+
+ mx[key] = int64(v)
+}
+
+func isValidValue(v string) bool {
+ return v != "" && v != "N/A" && v != "[N/A]"
+}
+
+func parseFloat(s string) float64 {
+ v, _ := strconv.ParseFloat(removeUnits(s), 64)
+ return v
+}
+
+func removeUnits(s string) string {
+ if i := strings.IndexByte(s, ' '); i != -1 {
+ s = s[:i]
+ }
+ return s
+}
+
+func boolToInt(v bool) int64 {
+ if v {
+ return 1
+ }
+ return 0
+}
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/collect_csv.go b/src/go/collectors/go.d.plugin/modules/nvidia_smi/collect_csv.go
new file mode 100644
index 000000000..2584aaffe
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/collect_csv.go
@@ -0,0 +1,198 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+package nvidia_smi
+
+import (
+ "bufio"
+ "bytes"
+ "encoding/csv"
+ "errors"
+ "fmt"
+ "io"
+ "regexp"
+ "strconv"
+ "strings"
+)
+
+// use of property aliases is not implemented ('"<property>" or "<alias>"' in help-query-gpu)
+var knownProperties = map[string]bool{
+ "uuid": true,
+ "name": true,
+ "fan.speed": true,
+ "pstate": true,
+ "utilization.gpu": true,
+ "utilization.memory": true,
+ "memory.used": true,
+ "memory.free": true,
+ "memory.reserved": true,
+ "temperature.gpu": true,
+ "clocks.current.graphics": true,
+ "clocks.current.video": true,
+ "clocks.current.sm": true,
+ "clocks.current.memory": true,
+ "power.draw": true,
+}
+
+var reHelpProperty = regexp.MustCompile(`"([a-zA-Z_.]+)"`)
+
+func (nv *NvidiaSMI) collectGPUInfoCSV(mx map[string]int64) error {
+ if len(nv.gpuQueryProperties) == 0 {
+ bs, err := nv.exec.queryHelpQueryGPU()
+ if err != nil {
+ return err
+ }
+
+ sc := bufio.NewScanner(bytes.NewBuffer(bs))
+
+ for sc.Scan() {
+ if !strings.HasPrefix(sc.Text(), "\"") {
+ continue
+ }
+ matches := reHelpProperty.FindAllString(sc.Text(), -1)
+ if len(matches) == 0 {
+ continue
+ }
+ for _, v := range matches {
+ if v = strings.Trim(v, "\""); knownProperties[v] {
+ nv.gpuQueryProperties = append(nv.gpuQueryProperties, v)
+ }
+ }
+ }
+ nv.Debugf("found query GPU properties: %v", nv.gpuQueryProperties)
+ }
+
+ bs, err := nv.exec.queryGPUInfoCSV(nv.gpuQueryProperties)
+ if err != nil {
+ return err
+ }
+
+ nv.Debugf("GPU info:\n%s", bs)
+
+ r := csv.NewReader(bytes.NewBuffer(bs))
+ r.Comma = ','
+ r.ReuseRecord = true
+ r.TrimLeadingSpace = true
+
+ // skip headers
+ if _, err := r.Read(); err != nil && err != io.EOF {
+ return err
+ }
+
+ var gpusInfo []csvGPUInfo
+ for {
+ record, err := r.Read()
+ if err != nil {
+ if errors.Is(err, io.EOF) {
+ break
+ }
+ return err
+ }
+
+ if len(record) != len(nv.gpuQueryProperties) {
+ return fmt.Errorf("record values (%d) != queried properties (%d)", len(record), len(nv.gpuQueryProperties))
+ }
+
+ var gpu csvGPUInfo
+ for i, v := range record {
+ switch nv.gpuQueryProperties[i] {
+ case "uuid":
+ gpu.uuid = v
+ case "name":
+ gpu.name = v
+ case "fan.speed":
+ gpu.fanSpeed = v
+ case "pstate":
+ gpu.pstate = v
+ case "utilization.gpu":
+ gpu.utilizationGPU = v
+ case "utilization.memory":
+ gpu.utilizationMemory = v
+ case "memory.used":
+ gpu.memoryUsed = v
+ case "memory.free":
+ gpu.memoryFree = v
+ case "memory.reserved":
+ gpu.memoryReserved = v
+ case "temperature.gpu":
+ gpu.temperatureGPU = v
+ case "clocks.current.graphics":
+ gpu.clocksCurrentGraphics = v
+ case "clocks.current.video":
+ gpu.clocksCurrentVideo = v
+ case "clocks.current.sm":
+ gpu.clocksCurrentSM = v
+ case "clocks.current.memory":
+ gpu.clocksCurrentMemory = v
+ case "power.draw":
+ gpu.powerDraw = v
+ }
+ }
+ gpusInfo = append(gpusInfo, gpu)
+ }
+
+ seen := make(map[string]bool)
+
+ for _, gpu := range gpusInfo {
+ if !isValidValue(gpu.uuid) || !isValidValue(gpu.name) {
+ continue
+ }
+
+ px := "gpu_" + gpu.uuid + "_"
+
+ seen[px] = true
+
+ if !nv.gpus[px] {
+ nv.gpus[px] = true
+ nv.addGPUCSVCharts(gpu)
+ }
+
+ addMetric(mx, px+"fan_speed_perc", gpu.fanSpeed, 0)
+ addMetric(mx, px+"gpu_utilization", gpu.utilizationGPU, 0)
+ addMetric(mx, px+"mem_utilization", gpu.utilizationMemory, 0)
+ addMetric(mx, px+"frame_buffer_memory_usage_free", gpu.memoryFree, 1024*1024) // MiB => bytes
+ addMetric(mx, px+"frame_buffer_memory_usage_used", gpu.memoryUsed, 1024*1024) // MiB => bytes
+ addMetric(mx, px+"frame_buffer_memory_usage_reserved", gpu.memoryReserved, 1024*1024) // MiB => bytes
+ addMetric(mx, px+"temperature", gpu.temperatureGPU, 0)
+ addMetric(mx, px+"graphics_clock", gpu.clocksCurrentGraphics, 0)
+ addMetric(mx, px+"video_clock", gpu.clocksCurrentVideo, 0)
+ addMetric(mx, px+"sm_clock", gpu.clocksCurrentSM, 0)
+ addMetric(mx, px+"mem_clock", gpu.clocksCurrentMemory, 0)
+ addMetric(mx, px+"power_draw", gpu.powerDraw, 0)
+ for i := 0; i < 16; i++ {
+ if s := "P" + strconv.Itoa(i); gpu.pstate == s {
+ mx[px+"performance_state_"+s] = 1
+ } else {
+ mx[px+"performance_state_"+s] = 0
+ }
+ }
+ }
+
+ for px := range nv.gpus {
+ if !seen[px] {
+ delete(nv.gpus, px)
+ nv.removeCharts(px)
+ }
+ }
+
+ return nil
+}
+
+type (
+ csvGPUInfo struct {
+ uuid string
+ name string
+ fanSpeed string
+ pstate string
+ utilizationGPU string
+ utilizationMemory string
+ memoryUsed string
+ memoryFree string
+ memoryReserved string
+ temperatureGPU string
+ clocksCurrentGraphics string
+ clocksCurrentVideo string
+ clocksCurrentSM string
+ clocksCurrentMemory string
+ powerDraw string
+ }
+)
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/collect_xml.go b/src/go/collectors/go.d.plugin/modules/nvidia_smi/collect_xml.go
new file mode 100644
index 000000000..2ab3180a8
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/collect_xml.go
@@ -0,0 +1,265 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+package nvidia_smi
+
+import (
+ "encoding/xml"
+ "fmt"
+ "strconv"
+ "strings"
+)
+
+func (nv *NvidiaSMI) collectGPUInfoXML(mx map[string]int64) error {
+ bs, err := nv.exec.queryGPUInfoXML()
+ if err != nil {
+ return fmt.Errorf("error on quering XML GPU info: %v", err)
+ }
+
+ info := &xmlInfo{}
+ if err := xml.Unmarshal(bs, info); err != nil {
+ return fmt.Errorf("error on unmarshaling XML GPU info response: %v", err)
+ }
+
+ seenGPU := make(map[string]bool)
+ seenMIG := make(map[string]bool)
+
+ for _, gpu := range info.GPUs {
+ if !isValidValue(gpu.UUID) {
+ continue
+ }
+
+ px := "gpu_" + gpu.UUID + "_"
+
+ seenGPU[px] = true
+
+ if !nv.gpus[px] {
+ nv.gpus[px] = true
+ nv.addGPUXMLCharts(gpu)
+ }
+
+ addMetric(mx, px+"pcie_bandwidth_usage_rx", gpu.PCI.RxUtil, 1024) // KB => bytes
+ addMetric(mx, px+"pcie_bandwidth_usage_tx", gpu.PCI.TxUtil, 1024) // KB => bytes
+ if max := calcMaxPCIEBandwidth(gpu); max > 0 {
+ rx := parseFloat(gpu.PCI.RxUtil) * 1024 // KB => bytes
+ tx := parseFloat(gpu.PCI.TxUtil) * 1024 // KB => bytes
+ mx[px+"pcie_bandwidth_utilization_rx"] = int64((rx * 100 / max) * 100)
+ mx[px+"pcie_bandwidth_utilization_tx"] = int64((tx * 100 / max) * 100)
+ }
+ addMetric(mx, px+"fan_speed_perc", gpu.FanSpeed, 0)
+ addMetric(mx, px+"gpu_utilization", gpu.Utilization.GpuUtil, 0)
+ addMetric(mx, px+"mem_utilization", gpu.Utilization.MemoryUtil, 0)
+ addMetric(mx, px+"decoder_utilization", gpu.Utilization.DecoderUtil, 0)
+ addMetric(mx, px+"encoder_utilization", gpu.Utilization.EncoderUtil, 0)
+ addMetric(mx, px+"frame_buffer_memory_usage_free", gpu.FBMemoryUsage.Free, 1024*1024) // MiB => bytes
+ addMetric(mx, px+"frame_buffer_memory_usage_used", gpu.FBMemoryUsage.Used, 1024*1024) // MiB => bytes
+ addMetric(mx, px+"frame_buffer_memory_usage_reserved", gpu.FBMemoryUsage.Reserved, 1024*1024) // MiB => bytes
+ addMetric(mx, px+"bar1_memory_usage_free", gpu.Bar1MemoryUsage.Free, 1024*1024) // MiB => bytes
+ addMetric(mx, px+"bar1_memory_usage_used", gpu.Bar1MemoryUsage.Used, 1024*1024) // MiB => bytes
+ addMetric(mx, px+"temperature", gpu.Temperature.GpuTemp, 0)
+ addMetric(mx, px+"graphics_clock", gpu.Clocks.GraphicsClock, 0)
+ addMetric(mx, px+"video_clock", gpu.Clocks.VideoClock, 0)
+ addMetric(mx, px+"sm_clock", gpu.Clocks.SmClock, 0)
+ addMetric(mx, px+"mem_clock", gpu.Clocks.MemClock, 0)
+ if gpu.PowerReadings != nil {
+ addMetric(mx, px+"power_draw", gpu.PowerReadings.PowerDraw, 0)
+ } else if gpu.GPUPowerReadings != nil {
+ addMetric(mx, px+"power_draw", gpu.GPUPowerReadings.PowerDraw, 0)
+ }
+ addMetric(mx, px+"voltage", gpu.Voltage.GraphicsVolt, 0)
+ for i := 0; i < 16; i++ {
+ s := "P" + strconv.Itoa(i)
+ mx[px+"performance_state_"+s] = boolToInt(gpu.PerformanceState == s)
+ }
+ if isValidValue(gpu.MIGMode.CurrentMIG) {
+ mode := strings.ToLower(gpu.MIGMode.CurrentMIG)
+ mx[px+"mig_current_mode_enabled"] = boolToInt(mode == "enabled")
+ mx[px+"mig_current_mode_disabled"] = boolToInt(mode == "disabled")
+ mx[px+"mig_devices_count"] = int64(len(gpu.MIGDevices.MIGDevice))
+ }
+
+ for _, mig := range gpu.MIGDevices.MIGDevice {
+ if !isValidValue(mig.GPUInstanceID) {
+ continue
+ }
+
+ px := "mig_instance_" + mig.GPUInstanceID + "_" + px
+
+ seenMIG[px] = true
+
+ if !nv.migs[px] {
+ nv.migs[px] = true
+ nv.addMIGDeviceXMLCharts(gpu, mig)
+ }
+
+ addMetric(mx, px+"ecc_error_sram_uncorrectable", mig.ECCErrorCount.VolatileCount.SRAMUncorrectable, 0)
+ addMetric(mx, px+"frame_buffer_memory_usage_free", mig.FBMemoryUsage.Free, 1024*1024) // MiB => bytes
+ addMetric(mx, px+"frame_buffer_memory_usage_used", mig.FBMemoryUsage.Used, 1024*1024) // MiB => bytes
+ addMetric(mx, px+"frame_buffer_memory_usage_reserved", mig.FBMemoryUsage.Reserved, 1024*1024) // MiB => bytes
+ addMetric(mx, px+"bar1_memory_usage_free", mig.BAR1MemoryUsage.Free, 1024*1024) // MiB => bytes
+ addMetric(mx, px+"bar1_memory_usage_used", mig.BAR1MemoryUsage.Used, 1024*1024) // MiB => bytes
+ }
+ }
+
+ for px := range nv.gpus {
+ if !seenGPU[px] {
+ delete(nv.gpus, px)
+ nv.removeCharts(px)
+ }
+ }
+
+ for px := range nv.migs {
+ if !seenMIG[px] {
+ delete(nv.migs, px)
+ nv.removeCharts(px)
+ }
+ }
+
+ return nil
+}
+
+func calcMaxPCIEBandwidth(gpu xmlGPUInfo) float64 {
+ gen := gpu.PCI.PCIGPULinkInfo.PCIEGen.MaxLinkGen
+ width := strings.TrimSuffix(gpu.PCI.PCIGPULinkInfo.LinkWidths.MaxLinkWidth, "x")
+
+ if !isValidValue(gen) || !isValidValue(width) {
+ return 0
+ }
+
+ // https://enterprise-support.nvidia.com/s/article/understanding-pcie-configuration-for-maximum-performance
+ var speed, enc float64
+ switch gen {
+ case "1":
+ speed, enc = 2.5, 1.0/5.0
+ case "2":
+ speed, enc = 5, 1.0/5.0
+ case "3":
+ speed, enc = 8, 2.0/130.0
+ case "4":
+ speed, enc = 16, 2.0/130.0
+ case "5":
+ speed, enc = 32, 2.0/130.0
+ default:
+ return 0
+ }
+
+ // Maximum PCIe Bandwidth = SPEED * WIDTH * (1 - ENCODING) - 1Gb/s
+ return (speed*parseFloat(width)*(1-enc) - 1) * 1e9 / 8 // Gb/s => bytes
+}
+
+type (
+ xmlInfo struct {
+ GPUs []xmlGPUInfo `xml:"gpu"`
+ }
+ xmlGPUInfo struct {
+ ID string `xml:"id,attr"`
+ ProductName string `xml:"product_name"`
+ ProductBrand string `xml:"product_brand"`
+ ProductArchitecture string `xml:"product_architecture"`
+ UUID string `xml:"uuid"`
+ FanSpeed string `xml:"fan_speed"`
+ PerformanceState string `xml:"performance_state"`
+ MIGMode struct {
+ CurrentMIG string `xml:"current_mig"`
+ } `xml:"mig_mode"`
+ MIGDevices struct {
+ MIGDevice []xmlMIGDeviceInfo `xml:"mig_device"`
+ } `xml:"mig_devices"`
+ PCI struct {
+ TxUtil string `xml:"tx_util"`
+ RxUtil string `xml:"rx_util"`
+ PCIGPULinkInfo struct {
+ PCIEGen struct {
+ MaxLinkGen string `xml:"max_link_gen"`
+ } `xml:"pcie_gen"`
+ LinkWidths struct {
+ MaxLinkWidth string `xml:"max_link_width"`
+ } `xml:"link_widths"`
+ } `xml:"pci_gpu_link_info"`
+ } `xml:"pci"`
+ Utilization struct {
+ GpuUtil string `xml:"gpu_util"`
+ MemoryUtil string `xml:"memory_util"`
+ EncoderUtil string `xml:"encoder_util"`
+ DecoderUtil string `xml:"decoder_util"`
+ } `xml:"utilization"`
+ FBMemoryUsage struct {
+ Total string `xml:"total"`
+ Reserved string `xml:"reserved"`
+ Used string `xml:"used"`
+ Free string `xml:"free"`
+ } `xml:"fb_memory_usage"`
+ Bar1MemoryUsage struct {
+ Total string `xml:"total"`
+ Used string `xml:"used"`
+ Free string `xml:"free"`
+ } `xml:"bar1_memory_usage"`
+ Temperature struct {
+ GpuTemp string `xml:"gpu_temp"`
+ GpuTempMaxThreshold string `xml:"gpu_temp_max_threshold"`
+ GpuTempSlowThreshold string `xml:"gpu_temp_slow_threshold"`
+ GpuTempMaxGpuThreshold string `xml:"gpu_temp_max_gpu_threshold"`
+ GpuTargetTemperature string `xml:"gpu_target_temperature"`
+ MemoryTemp string `xml:"memory_temp"`
+ GpuTempMaxMemThreshold string `xml:"gpu_temp_max_mem_threshold"`
+ } `xml:"temperature"`
+ Clocks struct {
+ GraphicsClock string `xml:"graphics_clock"`
+ SmClock string `xml:"sm_clock"`
+ MemClock string `xml:"mem_clock"`
+ VideoClock string `xml:"video_clock"`
+ } `xml:"clocks"`
+ PowerReadings *xmlPowerReadings `xml:"power_readings"`
+ GPUPowerReadings *xmlPowerReadings `xml:"gpu_power_readings"`
+ Voltage struct {
+ GraphicsVolt string `xml:"graphics_volt"`
+ } `xml:"voltage"`
+ Processes struct {
+ ProcessInfo []struct {
+ PID string `xml:"pid"`
+ ProcessName string `xml:"process_name"`
+ UsedMemory string `xml:"used_memory"`
+ } `sml:"process_info"`
+ } `xml:"processes"`
+ }
+
+ xmlPowerReadings struct {
+ //PowerState string `xml:"power_state"`
+ //PowerManagement string `xml:"power_management"`
+ PowerDraw string `xml:"power_draw"`
+ //PowerLimit string `xml:"power_limit"`
+ //DefaultPowerLimit string `xml:"default_power_limit"`
+ //EnforcedPowerLimit string `xml:"enforced_power_limit"`
+ //MinPowerLimit string `xml:"min_power_limit"`
+ //MaxPowerLimit string `xml:"max_power_limit"`
+ }
+
+ xmlMIGDeviceInfo struct {
+ Index string `xml:"index"`
+ GPUInstanceID string `xml:"gpu_instance_id"`
+ ComputeInstanceID string `xml:"compute_instance_id"`
+ DeviceAttributes struct {
+ Shared struct {
+ MultiprocessorCount string `xml:"multiprocessor_count"`
+ CopyEngineCount string `xml:"copy_engine_count"`
+ EncoderCount string `xml:"encoder_count"`
+ DecoderCount string `xml:"decoder_count"`
+ OFACount string `xml:"ofa_count"`
+ JPGCount string `xml:"jpg_count"`
+ } `xml:"shared"`
+ } `xml:"device_attributes"`
+ ECCErrorCount struct {
+ VolatileCount struct {
+ SRAMUncorrectable string `xml:"sram_uncorrectable"`
+ } `xml:"volatile_count"`
+ } `xml:"ecc_error_count"`
+ FBMemoryUsage struct {
+ Free string `xml:"free"`
+ Used string `xml:"used"`
+ Reserved string `xml:"reserved"`
+ } `xml:"fb_memory_usage"`
+ BAR1MemoryUsage struct {
+ Free string `xml:"free"`
+ Used string `xml:"used"`
+ } `xml:"bar1_memory_usage"`
+ }
+)
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/config_schema.json b/src/go/collectors/go.d.plugin/modules/nvidia_smi/config_schema.json
new file mode 100644
index 000000000..da9fb251a
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/config_schema.json
@@ -0,0 +1,53 @@
+{
+ "jsonSchema": {
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "title": "NVIDIA SMI collector configuration.",
+ "type": "object",
+ "properties": {
+ "update_every": {
+ "title": "Update every",
+ "description": "Data collection interval, measured in seconds.",
+ "type": "integer",
+ "minimum": 1,
+ "default": 10
+ },
+ "binary_path": {
+ "title": "Binary path",
+ "description": "Path to the `nvidia-smi` binary.",
+ "type": "string",
+ "default": "nvidia-smi"
+ },
+ "timeout": {
+ "title": "Timeout",
+ "description": "Timeout for executing the binary, specified in seconds.",
+ "type": "number",
+ "minimum": 0.5,
+ "default": 10
+ },
+ "use_csv_format": {
+ "title": "Use CSV format",
+ "description": "Determines the format used for requesting GPU information. If set, CSV format is used, otherwise XML.",
+ "type": "boolean",
+ "default": true
+ }
+ },
+ "required": [
+ "binary_path"
+ ],
+ "additionalProperties": false,
+ "patternProperties": {
+ "^name$": {}
+ }
+ },
+ "uiSchema": {
+ "uiOptions": {
+ "fullPage": true
+ },
+ "binary_path": {
+ "ui:help": "If an absolute path is provided, the collector will use it directly; otherwise, it will search for the binary in directories specified in the PATH environment variable."
+ },
+ "timeout": {
+ "ui:help": "Accepts decimals for precise control (e.g., type 1.5 for 1.5 seconds)."
+ }
+ }
+}
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/exec.go b/src/go/collectors/go.d.plugin/modules/nvidia_smi/exec.go
new file mode 100644
index 000000000..ff26f59c8
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/exec.go
@@ -0,0 +1,78 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+package nvidia_smi
+
+import (
+ "context"
+ "errors"
+ "fmt"
+ "os/exec"
+ "strings"
+ "time"
+
+ "github.com/netdata/netdata/go/go.d.plugin/logger"
+)
+
+func newNvidiaSMIExec(path string, cfg Config, log *logger.Logger) (*nvidiaSMIExec, error) {
+ return &nvidiaSMIExec{
+ binPath: path,
+ timeout: cfg.Timeout.Duration(),
+ Logger: log,
+ }, nil
+}
+
+type nvidiaSMIExec struct {
+ binPath string
+ timeout time.Duration
+ *logger.Logger
+}
+
+func (e *nvidiaSMIExec) queryGPUInfoXML() ([]byte, error) {
+ ctx, cancel := context.WithTimeout(context.Background(), e.timeout)
+ defer cancel()
+
+ cmd := exec.CommandContext(ctx, e.binPath, "-q", "-x")
+
+ e.Debugf("executing '%s'", cmd)
+ bs, err := cmd.Output()
+ if err != nil {
+ return nil, fmt.Errorf("error on '%s': %v", cmd, err)
+ }
+
+ return bs, nil
+}
+
+func (e *nvidiaSMIExec) queryGPUInfoCSV(properties []string) ([]byte, error) {
+ if len(properties) == 0 {
+ return nil, errors.New("can not query CSV GPU Info without properties")
+ }
+
+ ctx, cancel := context.WithTimeout(context.Background(), e.timeout)
+ defer cancel()
+
+ cmd := exec.CommandContext(ctx, e.binPath, "--query-gpu="+strings.Join(properties, ","), "--format=csv,nounits")
+
+ e.Debugf("executing '%s'", cmd)
+
+ bs, err := cmd.Output()
+ if err != nil {
+ return nil, fmt.Errorf("error on '%s': %v", cmd, err)
+ }
+
+ return bs, nil
+}
+
+func (e *nvidiaSMIExec) queryHelpQueryGPU() ([]byte, error) {
+ ctx, cancel := context.WithTimeout(context.Background(), e.timeout)
+ defer cancel()
+
+ cmd := exec.CommandContext(ctx, e.binPath, "--help-query-gpu")
+
+ e.Debugf("executing '%s'", cmd)
+ bs, err := cmd.Output()
+ if err != nil {
+ return nil, fmt.Errorf("error on '%s': %v", cmd, err)
+ }
+
+ return bs, err
+}
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/init.go b/src/go/collectors/go.d.plugin/modules/nvidia_smi/init.go
new file mode 100644
index 000000000..d8a815bb4
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/init.go
@@ -0,0 +1,22 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+package nvidia_smi
+
+import (
+ "fmt"
+ "os"
+ "os/exec"
+)
+
+func (nv *NvidiaSMI) initNvidiaSMIExec() (nvidiaSMI, error) {
+ binPath := nv.BinaryPath
+ if _, err := os.Stat(binPath); os.IsNotExist(err) {
+ path, err := exec.LookPath(nv.binName)
+ if err != nil {
+ return nil, fmt.Errorf("error on lookup '%s': %v", nv.binName, err)
+ }
+ binPath = path
+ }
+
+ return newNvidiaSMIExec(binPath, nv.Config, nv.Logger)
+}
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/integrations/nvidia_gpu.md b/src/go/collectors/go.d.plugin/modules/nvidia_smi/integrations/nvidia_gpu.md
new file mode 100644
index 000000000..2622c9fdb
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/integrations/nvidia_gpu.md
@@ -0,0 +1,217 @@
+<!--startmeta
+custom_edit_url: "https://github.com/netdata/netdata/edit/master/src/go/collectors/go.d.plugin/modules/nvidia_smi/README.md"
+meta_yaml: "https://github.com/netdata/netdata/edit/master/src/go/collectors/go.d.plugin/modules/nvidia_smi/metadata.yaml"
+sidebar_label: "Nvidia GPU"
+learn_status: "Published"
+learn_rel_path: "Collecting Metrics/Hardware Devices and Sensors"
+most_popular: False
+message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE"
+endmeta-->
+
+# Nvidia GPU
+
+
+<img src="https://netdata.cloud/img/nvidia.svg" width="150"/>
+
+
+Plugin: go.d.plugin
+Module: nvidia_smi
+
+<img src="https://img.shields.io/badge/maintained%20by-Netdata-%2300ab44" />
+
+## Overview
+
+This collector monitors GPUs performance metrics using
+the [nvidia-smi](https://developer.nvidia.com/nvidia-system-management-interface) CLI tool.
+
+> **Warning**: under development, [loop mode](https://github.com/netdata/netdata/issues/14522) not implemented yet.
+
+
+
+
+This collector is supported on all platforms.
+
+This collector supports collecting metrics from multiple instances of this integration, including remote instances.
+
+
+### Default Behavior
+
+#### Auto-Detection
+
+This integration doesn't support auto-detection.
+
+#### Limits
+
+The default configuration for this integration does not impose any limits on data collection.
+
+#### Performance Impact
+
+The default configuration for this integration is not expected to impose a significant performance impact on the system.
+
+
+## Metrics
+
+Metrics grouped by *scope*.
+
+The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.
+
+
+
+### Per gpu
+
+These metrics refer to the GPU.
+
+Labels:
+
+| Label | Description |
+|:-----------|:----------------|
+| uuid | GPU id (e.g. 00000000:00:04.0) |
+| product_name | GPU product name (e.g. NVIDIA A100-SXM4-40GB) |
+
+Metrics:
+
+| Metric | Dimensions | Unit | XML | CSV |
+|:------|:----------|:----|:---:|:---:|
+| nvidia_smi.gpu_pcie_bandwidth_usage | rx, tx | B/s | • | |
+| nvidia_smi.gpu_pcie_bandwidth_utilization | rx, tx | % | • | |
+| nvidia_smi.gpu_fan_speed_perc | fan_speed | % | • | • |
+| nvidia_smi.gpu_utilization | gpu | % | • | • |
+| nvidia_smi.gpu_memory_utilization | memory | % | • | • |
+| nvidia_smi.gpu_decoder_utilization | decoder | % | • | |
+| nvidia_smi.gpu_encoder_utilization | encoder | % | • | |
+| nvidia_smi.gpu_frame_buffer_memory_usage | free, used, reserved | B | • | • |
+| nvidia_smi.gpu_bar1_memory_usage | free, used | B | • | |
+| nvidia_smi.gpu_temperature | temperature | Celsius | • | • |
+| nvidia_smi.gpu_voltage | voltage | V | • | |
+| nvidia_smi.gpu_clock_freq | graphics, video, sm, mem | MHz | • | • |
+| nvidia_smi.gpu_power_draw | power_draw | Watts | • | • |
+| nvidia_smi.gpu_performance_state | P0-P15 | state | • | • |
+| nvidia_smi.gpu_mig_mode_current_status | enabled, disabled | status | • | |
+| nvidia_smi.gpu_mig_devices_count | mig | devices | • | |
+
+### Per mig
+
+These metrics refer to the Multi-Instance GPU (MIG).
+
+Labels:
+
+| Label | Description |
+|:-----------|:----------------|
+| uuid | GPU id (e.g. 00000000:00:04.0) |
+| product_name | GPU product name (e.g. NVIDIA A100-SXM4-40GB) |
+| gpu_instance_id | GPU instance id (e.g. 1) |
+
+Metrics:
+
+| Metric | Dimensions | Unit | XML | CSV |
+|:------|:----------|:----|:---:|:---:|
+| nvidia_smi.gpu_mig_frame_buffer_memory_usage | free, used, reserved | B | • | |
+| nvidia_smi.gpu_mig_bar1_memory_usage | free, used | B | • | |
+
+
+
+## Alerts
+
+There are no alerts configured by default for this integration.
+
+
+## Setup
+
+### Prerequisites
+
+#### Enable in go.d.conf.
+
+This collector is disabled by default. You need to explicitly enable it in the `go.d.conf` file.
+
+
+
+### Configuration
+
+#### File
+
+The configuration file name for this integration is `go.d/nvidia_smi.conf`.
+
+
+You can edit the configuration file using the `edit-config` script from the
+Netdata [config directory](https://github.com/netdata/netdata/blob/master/docs/netdata-agent/configuration.md#the-netdata-config-directory).
+
+```bash
+cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
+sudo ./edit-config go.d/nvidia_smi.conf
+```
+#### Options
+
+The following options can be defined globally: update_every, autodetection_retry.
+
+
+<details><summary>Config options</summary>
+
+| Name | Description | Default | Required |
+|:----|:-----------|:-------|:--------:|
+| update_every | Data collection frequency. | 10 | no |
+| autodetection_retry | Recheck interval in seconds. Zero means no recheck will be scheduled. | 0 | no |
+| binary_path | Path to nvidia_smi binary. The default is "nvidia_smi" and the executable is looked for in the directories specified in the PATH environment variable. | nvidia_smi | no |
+| timeout | nvidia_smi binary execution timeout. | 2 | no |
+| use_csv_format | Used format when requesting GPU information. XML is used if set to 'no'. | yes | no |
+
+</details>
+
+#### Examples
+
+##### XML format
+
+Use XML format when requesting GPU information.
+
+<details><summary>Config</summary>
+
+```yaml
+jobs:
+ - name: nvidia_smi
+ use_csv_format: no
+
+```
+</details>
+
+##### Custom binary path
+
+The executable is not in the directories specified in the PATH environment variable.
+
+<details><summary>Config</summary>
+
+```yaml
+jobs:
+ - name: nvidia_smi
+ binary_path: /usr/local/sbin/nvidia_smi
+
+```
+</details>
+
+
+
+## Troubleshooting
+
+### Debug Mode
+
+To troubleshoot issues with the `nvidia_smi` collector, run the `go.d.plugin` with the debug option enabled. The output
+should give you clues as to why the collector isn't working.
+
+- Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on
+ your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`.
+
+ ```bash
+ cd /usr/libexec/netdata/plugins.d/
+ ```
+
+- Switch to the `netdata` user.
+
+ ```bash
+ sudo -u netdata -s
+ ```
+
+- Run the `go.d.plugin` to debug the collector:
+
+ ```bash
+ ./go.d.plugin -d -m nvidia_smi
+ ```
+
+
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/metadata.yaml b/src/go/collectors/go.d.plugin/modules/nvidia_smi/metadata.yaml
new file mode 100644
index 000000000..e18370baf
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/metadata.yaml
@@ -0,0 +1,296 @@
+plugin_name: go.d.plugin
+modules:
+ - meta:
+ id: collector-go.d.plugin-nvidia_smi
+ plugin_name: go.d.plugin
+ module_name: nvidia_smi
+ monitored_instance:
+ name: Nvidia GPU
+ link: https://www.nvidia.com/en-us/
+ icon_filename: nvidia.svg
+ categories:
+ - data-collection.hardware-devices-and-sensors
+ keywords:
+ - nvidia
+ - gpu
+ - hardware
+ related_resources:
+ integrations:
+ list: []
+ info_provided_to_referring_integrations:
+ description: ""
+ most_popular: false
+ overview:
+ data_collection:
+ metrics_description: |
+ This collector monitors GPUs performance metrics using
+ the [nvidia-smi](https://developer.nvidia.com/nvidia-system-management-interface) CLI tool.
+
+ > **Warning**: under development, [loop mode](https://github.com/netdata/netdata/issues/14522) not implemented yet.
+ method_description: ""
+ supported_platforms:
+ include: []
+ exclude: []
+ multi_instance: true
+ additional_permissions:
+ description: ""
+ default_behavior:
+ auto_detection:
+ description: ""
+ limits:
+ description: ""
+ performance_impact:
+ description: ""
+ setup:
+ prerequisites:
+ list:
+ - title: Enable in go.d.conf.
+ description: |
+ This collector is disabled by default. You need to explicitly enable it in the `go.d.conf` file.
+ configuration:
+ file:
+ name: go.d/nvidia_smi.conf
+ options:
+ description: |
+ The following options can be defined globally: update_every, autodetection_retry.
+ folding:
+ title: Config options
+ enabled: true
+ list:
+ - name: update_every
+ description: Data collection frequency.
+ default_value: 10
+ required: false
+ - name: autodetection_retry
+ description: Recheck interval in seconds. Zero means no recheck will be scheduled.
+ default_value: 0
+ required: false
+ - name: binary_path
+ description: Path to nvidia_smi binary. The default is "nvidia_smi" and the executable is looked for in the directories specified in the PATH environment variable.
+ default_value: nvidia_smi
+ required: false
+ - name: timeout
+ description: nvidia_smi binary execution timeout.
+ default_value: 2
+ required: false
+ - name: use_csv_format
+ description: Used format when requesting GPU information. XML is used if set to 'no'.
+ default_value: true
+ required: false
+ details: |
+ This module supports data collection in CSV and XML formats. The default is CSV.
+
+ - XML provides more metrics, but requesting GPU information consumes more CPU, especially if there are multiple GPUs in the system.
+ - CSV provides fewer metrics, but is much lighter than XML in terms of CPU usage.
+ examples:
+ folding:
+ title: Config
+ enabled: true
+ list:
+ - name: XML format
+ description: Use XML format when requesting GPU information.
+ config: |
+ jobs:
+ - name: nvidia_smi
+ use_csv_format: no
+ - name: Custom binary path
+ description: The executable is not in the directories specified in the PATH environment variable.
+ config: |
+ jobs:
+ - name: nvidia_smi
+ binary_path: /usr/local/sbin/nvidia_smi
+ troubleshooting:
+ problems:
+ list: []
+ alerts: []
+ metrics:
+ folding:
+ title: Metrics
+ enabled: false
+ description: ""
+ availability:
+ - XML
+ - CSV
+ scopes:
+ - name: gpu
+ description: These metrics refer to the GPU.
+ labels:
+ - name: uuid
+ description: GPU id (e.g. 00000000:00:04.0)
+ - name: product_name
+ description: GPU product name (e.g. NVIDIA A100-SXM4-40GB)
+ metrics:
+ - name: nvidia_smi.gpu_pcie_bandwidth_usage
+ availability:
+ - XML
+ description: PCI Express Bandwidth Usage
+ unit: B/s
+ chart_type: line
+ dimensions:
+ - name: rx
+ - name: tx
+ - name: nvidia_smi.gpu_pcie_bandwidth_utilization
+ availability:
+ - XML
+ description: PCI Express Bandwidth Utilization
+ unit: '%'
+ chart_type: line
+ dimensions:
+ - name: rx
+ - name: tx
+ - name: nvidia_smi.gpu_fan_speed_perc
+ availability:
+ - XML
+ - CSV
+ description: Fan speed
+ unit: '%'
+ chart_type: line
+ dimensions:
+ - name: fan_speed
+ - name: nvidia_smi.gpu_utilization
+ availability:
+ - XML
+ - CSV
+ description: GPU utilization
+ unit: '%'
+ chart_type: line
+ dimensions:
+ - name: gpu
+ - name: nvidia_smi.gpu_memory_utilization
+ availability:
+ - XML
+ - CSV
+ description: Memory utilization
+ unit: '%'
+ chart_type: line
+ dimensions:
+ - name: memory
+ - name: nvidia_smi.gpu_decoder_utilization
+ availability:
+ - XML
+ description: Decoder utilization
+ unit: '%'
+ chart_type: line
+ dimensions:
+ - name: decoder
+ - name: nvidia_smi.gpu_encoder_utilization
+ availability:
+ - XML
+ description: Encoder utilization
+ unit: '%'
+ chart_type: line
+ dimensions:
+ - name: encoder
+ - name: nvidia_smi.gpu_frame_buffer_memory_usage
+ availability:
+ - XML
+ - CSV
+ description: Frame buffer memory usage
+ unit: B
+ chart_type: stacked
+ dimensions:
+ - name: free
+ - name: used
+ - name: reserved
+ - name: nvidia_smi.gpu_bar1_memory_usage
+ availability:
+ - XML
+ description: BAR1 memory usage
+ unit: B
+ chart_type: stacked
+ dimensions:
+ - name: free
+ - name: used
+ - name: nvidia_smi.gpu_temperature
+ availability:
+ - XML
+ - CSV
+ description: Temperature
+ unit: Celsius
+ chart_type: line
+ dimensions:
+ - name: temperature
+ - name: nvidia_smi.gpu_voltage
+ availability:
+ - XML
+ description: Voltage
+ unit: V
+ chart_type: line
+ dimensions:
+ - name: voltage
+ - name: nvidia_smi.gpu_clock_freq
+ availability:
+ - XML
+ - CSV
+ description: Clock current frequency
+ unit: MHz
+ chart_type: line
+ dimensions:
+ - name: graphics
+ - name: video
+ - name: sm
+ - name: mem
+ - name: nvidia_smi.gpu_power_draw
+ availability:
+ - XML
+ - CSV
+ description: Power draw
+ unit: Watts
+ chart_type: line
+ dimensions:
+ - name: power_draw
+ - name: nvidia_smi.gpu_performance_state
+ availability:
+ - XML
+ - CSV
+ description: Performance state
+ unit: state
+ chart_type: line
+ dimensions:
+ - name: P0-P15
+ - name: nvidia_smi.gpu_mig_mode_current_status
+ availability:
+ - XML
+ description: MIG current mode
+ unit: status
+ chart_type: line
+ dimensions:
+ - name: enabled
+ - name: disabled
+ - name: nvidia_smi.gpu_mig_devices_count
+ availability:
+ - XML
+ description: MIG devices
+ unit: devices
+ chart_type: line
+ dimensions:
+ - name: mig
+ - name: mig
+ description: These metrics refer to the Multi-Instance GPU (MIG).
+ labels:
+ - name: uuid
+ description: GPU id (e.g. 00000000:00:04.0)
+ - name: product_name
+ description: GPU product name (e.g. NVIDIA A100-SXM4-40GB)
+ - name: gpu_instance_id
+ description: GPU instance id (e.g. 1)
+ metrics:
+ - name: nvidia_smi.gpu_mig_frame_buffer_memory_usage
+ availability:
+ - XML
+ description: Frame buffer memory usage
+ unit: B
+ chart_type: stacked
+ dimensions:
+ - name: free
+ - name: used
+ - name: reserved
+ - name: nvidia_smi.gpu_mig_bar1_memory_usage
+ availability:
+ - XML
+ description: BAR1 memory usage
+ unit: B
+ chart_type: stacked
+ dimensions:
+ - name: free
+ - name: used
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/nvidia_smi.go b/src/go/collectors/go.d.plugin/modules/nvidia_smi/nvidia_smi.go
new file mode 100644
index 000000000..fb1b4bbc9
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/nvidia_smi.go
@@ -0,0 +1,116 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+package nvidia_smi
+
+import (
+ _ "embed"
+ "errors"
+ "time"
+
+ "github.com/netdata/netdata/go/go.d.plugin/agent/module"
+ "github.com/netdata/netdata/go/go.d.plugin/pkg/web"
+)
+
+//go:embed "config_schema.json"
+var configSchema string
+
+func init() {
+ module.Register("nvidia_smi", module.Creator{
+ JobConfigSchema: configSchema,
+ Defaults: module.Defaults{
+ Disabled: true,
+ UpdateEvery: 10,
+ },
+ Create: func() module.Module { return New() },
+ })
+}
+
+func New() *NvidiaSMI {
+ return &NvidiaSMI{
+ Config: Config{
+ Timeout: web.Duration(time.Second * 10),
+ UseCSVFormat: true,
+ },
+ binName: "nvidia-smi",
+ charts: &module.Charts{},
+ gpus: make(map[string]bool),
+ migs: make(map[string]bool),
+ }
+
+}
+
+type Config struct {
+ UpdateEvery int `yaml:"update_every" json:"update_every"`
+ Timeout web.Duration `yaml:"timeout" json:"timeout"`
+ BinaryPath string `yaml:"binary_path" json:"binary_path"`
+ UseCSVFormat bool `yaml:"use_csv_format" json:"use_csv_format"`
+}
+
+type (
+ NvidiaSMI struct {
+ module.Base
+ Config `yaml:",inline" json:""`
+
+ charts *module.Charts
+
+ exec nvidiaSMI
+ binName string
+
+ gpuQueryProperties []string
+
+ gpus map[string]bool
+ migs map[string]bool
+ }
+ nvidiaSMI interface {
+ queryGPUInfoXML() ([]byte, error)
+ queryGPUInfoCSV(properties []string) ([]byte, error)
+ queryHelpQueryGPU() ([]byte, error)
+ }
+)
+
+func (nv *NvidiaSMI) Configuration() any {
+ return nv.Config
+}
+
+func (nv *NvidiaSMI) Init() error {
+ if nv.exec == nil {
+ smi, err := nv.initNvidiaSMIExec()
+ if err != nil {
+ nv.Error(err)
+ return err
+ }
+ nv.exec = smi
+ }
+
+ return nil
+}
+
+func (nv *NvidiaSMI) Check() error {
+ mx, err := nv.collect()
+ if err != nil {
+ nv.Error(err)
+ return err
+ }
+ if len(mx) == 0 {
+ return errors.New("no metrics collected")
+ }
+ return nil
+}
+
+func (nv *NvidiaSMI) Charts() *module.Charts {
+ return nv.charts
+}
+
+func (nv *NvidiaSMI) Collect() map[string]int64 {
+ mx, err := nv.collect()
+ if err != nil {
+ nv.Error(err)
+ }
+
+ if len(mx) == 0 {
+ return nil
+ }
+ return mx
+}
+
+func (nv *NvidiaSMI) Cleanup() {}
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/nvidia_smi_test.go b/src/go/collectors/go.d.plugin/modules/nvidia_smi/nvidia_smi_test.go
new file mode 100644
index 000000000..af2d3a159
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/nvidia_smi_test.go
@@ -0,0 +1,561 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+package nvidia_smi
+
+import (
+ "errors"
+ "fmt"
+ "os"
+ "testing"
+
+ "github.com/netdata/netdata/go/go.d.plugin/agent/module"
+
+ "github.com/stretchr/testify/assert"
+ "github.com/stretchr/testify/require"
+)
+
+var (
+ dataConfigJSON, _ = os.ReadFile("testdata/config.json")
+ dataConfigYAML, _ = os.ReadFile("testdata/config.yaml")
+
+ dataXMLRTX2080Win, _ = os.ReadFile("testdata/rtx-2080-win.xml")
+ dataXMLRTX4090Driver535, _ = os.ReadFile("testdata/rtx-4090-driver-535.xml")
+ dataXMLRTX3060, _ = os.ReadFile("testdata/rtx-3060.xml")
+ dataXMLTeslaP100, _ = os.ReadFile("testdata/tesla-p100.xml")
+
+ dataXMLA100SXM4MIG, _ = os.ReadFile("testdata/a100-sxm4-mig.xml")
+
+ dataHelpQueryGPU, _ = os.ReadFile("testdata/help-query-gpu.txt")
+ dataCSVTeslaP100, _ = os.ReadFile("testdata/tesla-p100.csv")
+)
+
+func Test_testDataIsValid(t *testing.T) {
+ for name, data := range map[string][]byte{
+ "dataConfigJSON": dataConfigJSON,
+ "dataConfigYAML": dataConfigYAML,
+ "dataXMLRTX2080Win": dataXMLRTX2080Win,
+ "dataXMLRTX4090Driver535": dataXMLRTX4090Driver535,
+ "dataXMLRTX3060": dataXMLRTX3060,
+ "dataXMLTeslaP100": dataXMLTeslaP100,
+ "dataXMLA100SXM4MIG": dataXMLA100SXM4MIG,
+ "dataHelpQueryGPU": dataHelpQueryGPU,
+ "dataCSVTeslaP100": dataCSVTeslaP100,
+ } {
+ require.NotNil(t, data, name)
+ }
+}
+
+func TestNvidiaSMI_ConfigurationSerialize(t *testing.T) {
+ module.TestConfigurationSerialize(t, &NvidiaSMI{}, dataConfigJSON, dataConfigYAML)
+}
+
+func TestNvidiaSMI_Init(t *testing.T) {
+ tests := map[string]struct {
+ prepare func(nv *NvidiaSMI)
+ wantFail bool
+ }{
+ "fails if can't local nvidia-smi": {
+ wantFail: true,
+ prepare: func(nv *NvidiaSMI) {
+ nv.binName += "!!!"
+ },
+ },
+ }
+
+ for name, test := range tests {
+ t.Run(name, func(t *testing.T) {
+ nv := New()
+
+ test.prepare(nv)
+
+ if test.wantFail {
+ assert.Error(t, nv.Init())
+ } else {
+ assert.NoError(t, nv.Init())
+ }
+ })
+ }
+}
+
+func TestNvidiaSMI_Charts(t *testing.T) {
+ assert.NotNil(t, New().Charts())
+}
+
+func TestNvidiaSMI_Check(t *testing.T) {
+ tests := map[string]struct {
+ prepare func(nv *NvidiaSMI)
+ wantFail bool
+ }{
+ "success A100-SXM4 MIG [XML]": {
+ wantFail: false,
+ prepare: prepareCaseMIGA100formatXML,
+ },
+ "success RTX 3060 [XML]": {
+ wantFail: false,
+ prepare: prepareCaseRTX3060formatXML,
+ },
+ "success Tesla P100 [XML]": {
+ wantFail: false,
+ prepare: prepareCaseTeslaP100formatXML,
+ },
+ "success Tesla P100 [CSV]": {
+ wantFail: false,
+ prepare: prepareCaseTeslaP100formatCSV,
+ },
+ "success RTX 2080 Win [XML]": {
+ wantFail: false,
+ prepare: prepareCaseRTX2080WinFormatXML,
+ },
+ "fail on queryGPUInfoXML error": {
+ wantFail: true,
+ prepare: prepareCaseErrOnQueryGPUInfoXML,
+ },
+ "fail on queryGPUInfoCSV error": {
+ wantFail: true,
+ prepare: prepareCaseErrOnQueryGPUInfoCSV,
+ },
+ "fail on queryHelpQueryGPU error": {
+ wantFail: true,
+ prepare: prepareCaseErrOnQueryHelpQueryGPU,
+ },
+ }
+
+ for name, test := range tests {
+ t.Run(name, func(t *testing.T) {
+ nv := New()
+
+ test.prepare(nv)
+
+ if test.wantFail {
+ assert.Error(t, nv.Check())
+ } else {
+ assert.NoError(t, nv.Check())
+ }
+ })
+ }
+}
+
+func TestNvidiaSMI_Collect(t *testing.T) {
+ type testCaseStep struct {
+ prepare func(nv *NvidiaSMI)
+ check func(t *testing.T, nv *NvidiaSMI)
+ }
+ tests := map[string][]testCaseStep{
+ "success A100-SXM4 MIG [XML]": {
+ {
+ prepare: prepareCaseMIGA100formatXML,
+ check: func(t *testing.T, nv *NvidiaSMI) {
+ mx := nv.Collect()
+
+ expected := map[string]int64{
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_bar1_memory_usage_free": 68718428160,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_bar1_memory_usage_used": 1048576,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_frame_buffer_memory_usage_free": 42273341440,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_frame_buffer_memory_usage_reserved": 634388480,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_frame_buffer_memory_usage_used": 39845888,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_graphics_clock": 1410,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_mem_clock": 1215,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_mig_current_mode_disabled": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_mig_current_mode_enabled": 1,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_mig_devices_count": 2,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_pcie_bandwidth_usage_rx": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_pcie_bandwidth_usage_tx": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_pcie_bandwidth_utilization_rx": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_pcie_bandwidth_utilization_tx": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P0": 1,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P1": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P10": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P11": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P12": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P13": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P14": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P15": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P2": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P3": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P4": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P5": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P6": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P7": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P8": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_performance_state_P9": 0,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_power_draw": 66,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_sm_clock": 1410,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_temperature": 36,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_video_clock": 1275,
+ "gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_voltage": 881,
+ "mig_instance_1_gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_bar1_memory_usage_free": 34358689792,
+ "mig_instance_1_gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_bar1_memory_usage_used": 0,
+ "mig_instance_1_gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_ecc_error_sram_uncorrectable": 0,
+ "mig_instance_1_gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_frame_buffer_memory_usage_free": 20916994048,
+ "mig_instance_1_gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_frame_buffer_memory_usage_reserved": 0,
+ "mig_instance_1_gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_frame_buffer_memory_usage_used": 19922944,
+ "mig_instance_2_gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_bar1_memory_usage_free": 34358689792,
+ "mig_instance_2_gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_bar1_memory_usage_used": 0,
+ "mig_instance_2_gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_ecc_error_sram_uncorrectable": 0,
+ "mig_instance_2_gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_frame_buffer_memory_usage_free": 20916994048,
+ "mig_instance_2_gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_frame_buffer_memory_usage_reserved": 0,
+ "mig_instance_2_gpu_GPU-27b94a00-ed54-5c24-b1fd-1054085de32a_frame_buffer_memory_usage_used": 19922944,
+ }
+
+ assert.Equal(t, expected, mx)
+ },
+ },
+ },
+ "success RTX 4090 Driver 535 [XML]": {
+ {
+ prepare: prepareCaseRTX4090Driver535formatXML,
+ check: func(t *testing.T, nv *NvidiaSMI) {
+ mx := nv.Collect()
+
+ expected := map[string]int64{
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_bar1_memory_usage_free": 267386880,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_bar1_memory_usage_used": 1048576,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_decoder_utilization": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_encoder_utilization": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_fan_speed_perc": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_frame_buffer_memory_usage_free": 25390219264,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_frame_buffer_memory_usage_reserved": 362807296,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_frame_buffer_memory_usage_used": 2097152,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_gpu_utilization": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_graphics_clock": 210,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_mem_clock": 405,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_mem_utilization": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_pcie_bandwidth_usage_rx": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_pcie_bandwidth_usage_tx": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_pcie_bandwidth_utilization_rx": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_pcie_bandwidth_utilization_tx": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P0": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P1": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P10": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P11": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P12": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P13": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P14": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P15": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P2": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P3": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P4": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P5": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P6": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P7": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P8": 1,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_performance_state_P9": 0,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_power_draw": 26,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_sm_clock": 210,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_temperature": 40,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_video_clock": 1185,
+ "gpu_GPU-71d1acc2-662d-2166-bf9f-65272d2fc437_voltage": 880,
+ }
+
+ assert.Equal(t, expected, mx)
+ },
+ },
+ },
+ "success RTX 3060 [XML]": {
+ {
+ prepare: prepareCaseRTX3060formatXML,
+ check: func(t *testing.T, nv *NvidiaSMI) {
+ mx := nv.Collect()
+
+ expected := map[string]int64{
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_bar1_memory_usage_free": 8586788864,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_bar1_memory_usage_used": 3145728,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_decoder_utilization": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_encoder_utilization": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_frame_buffer_memory_usage_free": 6228541440,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_frame_buffer_memory_usage_reserved": 206569472,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_frame_buffer_memory_usage_used": 5242880,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_gpu_utilization": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_graphics_clock": 210,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_mem_clock": 405,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_mem_utilization": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_pcie_bandwidth_usage_rx": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_pcie_bandwidth_usage_tx": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_pcie_bandwidth_utilization_rx": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_pcie_bandwidth_utilization_tx": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P0": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P1": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P10": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P11": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P12": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P13": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P14": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P15": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P2": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P3": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P4": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P5": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P6": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P7": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P8": 1,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_performance_state_P9": 0,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_power_draw": 8,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_sm_clock": 210,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_temperature": 45,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_video_clock": 555,
+ "gpu_GPU-473d8d0f-d462-185c-6b36-6fc23e23e571_voltage": 631,
+ }
+
+ assert.Equal(t, expected, mx)
+ },
+ },
+ },
+ "success Tesla P100 [XML]": {
+ {
+ prepare: prepareCaseTeslaP100formatXML,
+ check: func(t *testing.T, nv *NvidiaSMI) {
+ mx := nv.Collect()
+
+ expected := map[string]int64{
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_bar1_memory_usage_free": 17177772032,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_bar1_memory_usage_used": 2097152,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_decoder_utilization": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_encoder_utilization": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_frame_buffer_memory_usage_free": 17070817280,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_frame_buffer_memory_usage_reserved": 108003328,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_frame_buffer_memory_usage_used": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_gpu_utilization": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_graphics_clock": 405,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_mem_clock": 715,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_mem_utilization": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_pcie_bandwidth_usage_rx": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_pcie_bandwidth_usage_tx": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_pcie_bandwidth_utilization_rx": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_pcie_bandwidth_utilization_tx": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P0": 1,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P1": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P10": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P11": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P12": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P13": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P14": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P15": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P2": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P3": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P4": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P5": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P6": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P7": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P8": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_performance_state_P9": 0,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_power_draw": 26,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_sm_clock": 405,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_temperature": 38,
+ "gpu_GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e_video_clock": 835,
+ }
+
+ assert.Equal(t, expected, mx)
+ },
+ },
+ },
+ "success Tesla P100 [CSV]": {
+ {
+ prepare: prepareCaseTeslaP100formatCSV,
+ check: func(t *testing.T, nv *NvidiaSMI) {
+ mx := nv.Collect()
+
+ expected := map[string]int64{
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_frame_buffer_memory_usage_free": 17070817280,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_frame_buffer_memory_usage_reserved": 108003328,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_frame_buffer_memory_usage_used": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_gpu_utilization": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_graphics_clock": 405,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_mem_clock": 715,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_mem_utilization": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P0": 1,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P1": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P10": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P11": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P12": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P13": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P14": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P15": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P2": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P3": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P4": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P5": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P6": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P7": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P8": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_performance_state_P9": 0,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_power_draw": 28,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_sm_clock": 405,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_temperature": 37,
+ "gpu_GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6_video_clock": 835,
+ }
+
+ assert.Equal(t, expected, mx)
+ },
+ },
+ },
+ "success RTX 2080 Win [XML]": {
+ {
+ prepare: prepareCaseRTX2080WinFormatXML,
+ check: func(t *testing.T, nv *NvidiaSMI) {
+ mx := nv.Collect()
+
+ expected := map[string]int64{
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_bar1_memory_usage_free": 266338304,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_bar1_memory_usage_used": 2097152,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_decoder_utilization": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_encoder_utilization": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_fan_speed_perc": 37,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_frame_buffer_memory_usage_free": 7494172672,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_frame_buffer_memory_usage_reserved": 190840832,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_frame_buffer_memory_usage_used": 903872512,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_gpu_utilization": 2,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_graphics_clock": 193,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_mem_clock": 403,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_mem_utilization": 7,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_pcie_bandwidth_usage_rx": 93184000,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_pcie_bandwidth_usage_tx": 13312000,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_pcie_bandwidth_utilization_rx": 59,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_pcie_bandwidth_utilization_tx": 8,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P0": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P1": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P10": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P11": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P12": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P13": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P14": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P15": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P2": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P3": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P4": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P5": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P6": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P7": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P8": 1,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_performance_state_P9": 0,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_power_draw": 14,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_sm_clock": 193,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_temperature": 29,
+ "gpu_GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3_video_clock": 539,
+ }
+
+ assert.Equal(t, expected, mx)
+ },
+ },
+ },
+ "fail on queryGPUInfoXML error [XML]": {
+ {
+ prepare: prepareCaseErrOnQueryGPUInfoXML,
+ check: func(t *testing.T, nv *NvidiaSMI) {
+ mx := nv.Collect()
+
+ assert.Equal(t, map[string]int64(nil), mx)
+ },
+ },
+ },
+ "fail on queryGPUInfoCSV error [CSV]": {
+ {
+ prepare: prepareCaseErrOnQueryGPUInfoCSV,
+ check: func(t *testing.T, nv *NvidiaSMI) {
+ mx := nv.Collect()
+
+ assert.Equal(t, map[string]int64(nil), mx)
+ },
+ },
+ },
+ "fail on queryHelpQueryGPU error": {
+ {
+ prepare: prepareCaseErrOnQueryHelpQueryGPU,
+ check: func(t *testing.T, nv *NvidiaSMI) {
+ mx := nv.Collect()
+
+ assert.Equal(t, map[string]int64(nil), mx)
+ },
+ },
+ },
+ }
+
+ for name, test := range tests {
+ t.Run(name, func(t *testing.T) {
+ nv := New()
+
+ for i, step := range test {
+ t.Run(fmt.Sprintf("step[%d]", i), func(t *testing.T) {
+ step.prepare(nv)
+ step.check(t, nv)
+ })
+ }
+ })
+ }
+}
+
+type mockNvidiaSMI struct {
+ gpuInfoXML []byte
+ errOnQueryGPUInfoXML bool
+
+ gpuInfoCSV []byte
+ errOnQueryGPUInfoCSV bool
+
+ helpQueryGPU []byte
+ errOnQueryHelpQueryGPU bool
+}
+
+func (m *mockNvidiaSMI) queryGPUInfoXML() ([]byte, error) {
+ if m.errOnQueryGPUInfoXML {
+ return nil, errors.New("error on mock.queryGPUInfoXML()")
+ }
+ return m.gpuInfoXML, nil
+}
+
+func (m *mockNvidiaSMI) queryGPUInfoCSV(_ []string) ([]byte, error) {
+ if m.errOnQueryGPUInfoCSV {
+ return nil, errors.New("error on mock.queryGPUInfoCSV()")
+ }
+ return m.gpuInfoCSV, nil
+}
+
+func (m *mockNvidiaSMI) queryHelpQueryGPU() ([]byte, error) {
+ if m.errOnQueryHelpQueryGPU {
+ return nil, errors.New("error on mock.queryHelpQueryGPU()")
+ }
+ return m.helpQueryGPU, nil
+}
+
+func prepareCaseMIGA100formatXML(nv *NvidiaSMI) {
+ nv.UseCSVFormat = false
+ nv.exec = &mockNvidiaSMI{gpuInfoXML: dataXMLA100SXM4MIG}
+}
+
+func prepareCaseRTX3060formatXML(nv *NvidiaSMI) {
+ nv.UseCSVFormat = false
+ nv.exec = &mockNvidiaSMI{gpuInfoXML: dataXMLRTX3060}
+}
+
+func prepareCaseRTX4090Driver535formatXML(nv *NvidiaSMI) {
+ nv.UseCSVFormat = false
+ nv.exec = &mockNvidiaSMI{gpuInfoXML: dataXMLRTX4090Driver535}
+}
+
+func prepareCaseTeslaP100formatXML(nv *NvidiaSMI) {
+ nv.UseCSVFormat = false
+ nv.exec = &mockNvidiaSMI{gpuInfoXML: dataXMLTeslaP100}
+}
+
+func prepareCaseRTX2080WinFormatXML(nv *NvidiaSMI) {
+ nv.UseCSVFormat = false
+ nv.exec = &mockNvidiaSMI{gpuInfoXML: dataXMLRTX2080Win}
+}
+
+func prepareCaseErrOnQueryGPUInfoXML(nv *NvidiaSMI) {
+ nv.UseCSVFormat = false
+ nv.exec = &mockNvidiaSMI{errOnQueryGPUInfoXML: true}
+}
+
+func prepareCaseTeslaP100formatCSV(nv *NvidiaSMI) {
+ nv.UseCSVFormat = true
+ nv.exec = &mockNvidiaSMI{helpQueryGPU: dataHelpQueryGPU, gpuInfoCSV: dataCSVTeslaP100}
+}
+
+func prepareCaseErrOnQueryHelpQueryGPU(nv *NvidiaSMI) {
+ nv.UseCSVFormat = true
+ nv.exec = &mockNvidiaSMI{errOnQueryHelpQueryGPU: true}
+}
+
+func prepareCaseErrOnQueryGPUInfoCSV(nv *NvidiaSMI) {
+ nv.UseCSVFormat = true
+ nv.exec = &mockNvidiaSMI{helpQueryGPU: dataHelpQueryGPU, errOnQueryGPUInfoCSV: true}
+}
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/a100-sxm4-mig.xml b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/a100-sxm4-mig.xml
new file mode 100644
index 000000000..74146ac78
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/a100-sxm4-mig.xml
@@ -0,0 +1,359 @@
+<?xml version="1.0" ?>
+<!DOCTYPE nvidia_smi_log SYSTEM "nvsmi_device_v11.dtd">
+<nvidia_smi_log>
+ <timestamp>Fri Jan 27 11:32:31 2023</timestamp>
+ <driver_version>510.47.03</driver_version>
+ <cuda_version>11.6</cuda_version>
+ <attached_gpus>1</attached_gpus>
+ <gpu id="00000000:00:04.0">
+ <product_name>NVIDIA A100-SXM4-40GB</product_name>
+ <product_brand>NVIDIA</product_brand>
+ <product_architecture>Ampere</product_architecture>
+ <display_mode>Enabled</display_mode>
+ <display_active>Disabled</display_active>
+ <persistence_mode>Disabled</persistence_mode>
+ <mig_mode>
+ <current_mig>Enabled</current_mig>
+ <pending_mig>Enabled</pending_mig>
+ </mig_mode>
+ <mig_devices>
+ <mig_device>
+ <index>0</index>
+ <gpu_instance_id>1</gpu_instance_id>
+ <compute_instance_id>0</compute_instance_id>
+ <device_attributes>
+ <shared>
+ <multiprocessor_count>42</multiprocessor_count>
+ <copy_engine_count>3</copy_engine_count>
+ <encoder_count>0</encoder_count>
+ <decoder_count>2</decoder_count>
+ <ofa_count>0</ofa_count>
+ <jpg_count>0</jpg_count>
+ </shared>
+ </device_attributes>
+ <ecc_error_count>
+ <volatile_count>
+ <sram_uncorrectable>0</sram_uncorrectable>
+ </volatile_count>
+ </ecc_error_count>
+ <fb_memory_usage>
+ <total>19968 MiB</total>
+ <reserved>0 MiB</reserved>
+ <used>19 MiB</used>
+ <free>19948 MiB</free>
+ </fb_memory_usage>
+ <bar1_memory_usage>
+ <total>32767 MiB</total>
+ <used>0 MiB</used>
+ <free>32767 MiB</free>
+ </bar1_memory_usage>
+ </mig_device>
+ <mig_device>
+ <index>1</index>
+ <gpu_instance_id>2</gpu_instance_id>
+ <compute_instance_id>0</compute_instance_id>
+ <device_attributes>
+ <shared>
+ <multiprocessor_count>42</multiprocessor_count>
+ <copy_engine_count>3</copy_engine_count>
+ <encoder_count>0</encoder_count>
+ <decoder_count>2</decoder_count>
+ <ofa_count>0</ofa_count>
+ <jpg_count>0</jpg_count>
+ </shared>
+ </device_attributes>
+ <ecc_error_count>
+ <volatile_count>
+ <sram_uncorrectable>0</sram_uncorrectable>
+ </volatile_count>
+ </ecc_error_count>
+ <fb_memory_usage>
+ <total>19968 MiB</total>
+ <reserved>0 MiB</reserved>
+ <used>19 MiB</used>
+ <free>19948 MiB</free>
+ </fb_memory_usage>
+ <bar1_memory_usage>
+ <total>32767 MiB</total>
+ <used>0 MiB</used>
+ <free>32767 MiB</free>
+ </bar1_memory_usage>
+ </mig_device>
+ </mig_devices>
+ <accounting_mode>Disabled</accounting_mode>
+ <accounting_mode_buffer_size>4000</accounting_mode_buffer_size>
+ <driver_model>
+ <current_dm>N/A</current_dm>
+ <pending_dm>N/A</pending_dm>
+ </driver_model>
+ <serial>1324321002473</serial>
+ <uuid>GPU-27b94a00-ed54-5c24-b1fd-1054085de32a</uuid>
+ <minor_number>0</minor_number>
+ <vbios_version>92.00.45.00.03</vbios_version>
+ <multigpu_board>No</multigpu_board>
+ <board_id>0x4</board_id>
+ <gpu_part_number>692-2G506-0200-003</gpu_part_number>
+ <gpu_module_id>3</gpu_module_id>
+ <inforom_version>
+ <img_version>G506.0200.00.04</img_version>
+ <oem_object>2.0</oem_object>
+ <ecc_object>6.16</ecc_object>
+ <pwr_object>N/A</pwr_object>
+ </inforom_version>
+ <gpu_operation_mode>
+ <current_gom>N/A</current_gom>
+ <pending_gom>N/A</pending_gom>
+ </gpu_operation_mode>
+ <gsp_firmware_version>510.47.03</gsp_firmware_version>
+ <gpu_virtualization_mode>
+ <virtualization_mode>Pass-Through</virtualization_mode>
+ <host_vgpu_mode>N/A</host_vgpu_mode>
+ </gpu_virtualization_mode>
+ <ibmnpu>
+ <relaxed_ordering_mode>N/A</relaxed_ordering_mode>
+ </ibmnpu>
+ <pci>
+ <pci_bus>00</pci_bus>
+ <pci_device>04</pci_device>
+ <pci_domain>0000</pci_domain>
+ <pci_device_id>20B010DE</pci_device_id>
+ <pci_bus_id>00000000:00:04.0</pci_bus_id>
+ <pci_sub_system_id>134F10DE</pci_sub_system_id>
+ <pci_gpu_link_info>
+ <pcie_gen>
+ <max_link_gen>4</max_link_gen>
+ <current_link_gen>4</current_link_gen>
+ </pcie_gen>
+ <link_widths>
+ <max_link_width>16x</max_link_width>
+ <current_link_width>16x</current_link_width>
+ </link_widths>
+ </pci_gpu_link_info>
+ <pci_bridge_chip>
+ <bridge_chip_type>N/A</bridge_chip_type>
+ <bridge_chip_fw>N/A</bridge_chip_fw>
+ </pci_bridge_chip>
+ <replay_counter>0</replay_counter>
+ <replay_rollover_counter>0</replay_rollover_counter>
+ <tx_util>0 KB/s</tx_util>
+ <rx_util>0 KB/s</rx_util>
+ </pci>
+ <fan_speed>N/A</fan_speed>
+ <performance_state>P0</performance_state>
+ <clocks_throttle_reasons>
+ <clocks_throttle_reason_gpu_idle>Not Active</clocks_throttle_reason_gpu_idle>
+ <clocks_throttle_reason_applications_clocks_setting>Not Active
+ </clocks_throttle_reason_applications_clocks_setting>
+ <clocks_throttle_reason_sw_power_cap>Not Active</clocks_throttle_reason_sw_power_cap>
+ <clocks_throttle_reason_hw_slowdown>Not Active</clocks_throttle_reason_hw_slowdown>
+ <clocks_throttle_reason_hw_thermal_slowdown>Not Active</clocks_throttle_reason_hw_thermal_slowdown>
+ <clocks_throttle_reason_hw_power_brake_slowdown>Not Active</clocks_throttle_reason_hw_power_brake_slowdown>
+ <clocks_throttle_reason_sync_boost>Not Active</clocks_throttle_reason_sync_boost>
+ <clocks_throttle_reason_sw_thermal_slowdown>Not Active</clocks_throttle_reason_sw_thermal_slowdown>
+ <clocks_throttle_reason_display_clocks_setting>Not Active</clocks_throttle_reason_display_clocks_setting>
+ </clocks_throttle_reasons>
+ <fb_memory_usage>
+ <total>40960 MiB</total>
+ <reserved>605 MiB</reserved>
+ <used>38 MiB</used>
+ <free>40315 MiB</free>
+ </fb_memory_usage>
+ <bar1_memory_usage>
+ <total>65536 MiB</total>
+ <used>1 MiB</used>
+ <free>65535 MiB</free>
+ </bar1_memory_usage>
+ <compute_mode>Default</compute_mode>
+ <utilization>
+ <gpu_util>N/A</gpu_util>
+ <memory_util>N/A</memory_util>
+ <encoder_util>N/A</encoder_util>
+ <decoder_util>N/A</decoder_util>
+ </utilization>
+ <encoder_stats>
+ <session_count>0</session_count>
+ <average_fps>0</average_fps>
+ <average_latency>0</average_latency>
+ </encoder_stats>
+ <fbc_stats>
+ <session_count>0</session_count>
+ <average_fps>0</average_fps>
+ <average_latency>0</average_latency>
+ </fbc_stats>
+ <ecc_mode>
+ <current_ecc>Enabled</current_ecc>
+ <pending_ecc>Enabled</pending_ecc>
+ </ecc_mode>
+ <ecc_errors>
+ <volatile>
+ <sram_correctable>N/A</sram_correctable>
+ <sram_uncorrectable>N/A</sram_uncorrectable>
+ <dram_correctable>N/A</dram_correctable>
+ <dram_uncorrectable>N/A</dram_uncorrectable>
+ </volatile>
+ <aggregate>
+ <sram_correctable>0</sram_correctable>
+ <sram_uncorrectable>0</sram_uncorrectable>
+ <dram_correctable>0</dram_correctable>
+ <dram_uncorrectable>0</dram_uncorrectable>
+ </aggregate>
+ </ecc_errors>
+ <retired_pages>
+ <multiple_single_bit_retirement>
+ <retired_count>N/A</retired_count>
+ <retired_pagelist>N/A</retired_pagelist>
+ </multiple_single_bit_retirement>
+ <double_bit_retirement>
+ <retired_count>N/A</retired_count>
+ <retired_pagelist>N/A</retired_pagelist>
+ </double_bit_retirement>
+ <pending_blacklist>N/A</pending_blacklist>
+ <pending_retirement>N/A</pending_retirement>
+ </retired_pages>
+ <remapped_rows>N/A</remapped_rows>
+ <temperature>
+ <gpu_temp>36 C</gpu_temp>
+ <gpu_temp_max_threshold>92 C</gpu_temp_max_threshold>
+ <gpu_temp_slow_threshold>89 C</gpu_temp_slow_threshold>
+ <gpu_temp_max_gpu_threshold>85 C</gpu_temp_max_gpu_threshold>
+ <gpu_target_temperature>N/A</gpu_target_temperature>
+ <memory_temp>44 C</memory_temp>
+ <gpu_temp_max_mem_threshold>95 C</gpu_temp_max_mem_threshold>
+ </temperature>
+ <supported_gpu_target_temp>
+ <gpu_target_temp_min>N/A</gpu_target_temp_min>
+ <gpu_target_temp_max>N/A</gpu_target_temp_max>
+ </supported_gpu_target_temp>
+ <power_readings>
+ <power_state>P0</power_state>
+ <power_management>Supported</power_management>
+ <power_draw>66.92 W</power_draw>
+ <power_limit>400.00 W</power_limit>
+ <default_power_limit>400.00 W</default_power_limit>
+ <enforced_power_limit>400.00 W</enforced_power_limit>
+ <min_power_limit>100.00 W</min_power_limit>
+ <max_power_limit>400.00 W</max_power_limit>
+ </power_readings>
+ <clocks>
+ <graphics_clock>1410 MHz</graphics_clock>
+ <sm_clock>1410 MHz</sm_clock>
+ <mem_clock>1215 MHz</mem_clock>
+ <video_clock>1275 MHz</video_clock>
+ </clocks>
+ <applications_clocks>
+ <graphics_clock>1095 MHz</graphics_clock>
+ <mem_clock>1215 MHz</mem_clock>
+ </applications_clocks>
+ <default_applications_clocks>
+ <graphics_clock>1095 MHz</graphics_clock>
+ <mem_clock>1215 MHz</mem_clock>
+ </default_applications_clocks>
+ <max_clocks>
+ <graphics_clock>1410 MHz</graphics_clock>
+ <sm_clock>1410 MHz</sm_clock>
+ <mem_clock>1215 MHz</mem_clock>
+ <video_clock>1290 MHz</video_clock>
+ </max_clocks>
+ <max_customer_boost_clocks>
+ <graphics_clock>1410 MHz</graphics_clock>
+ </max_customer_boost_clocks>
+ <clock_policy>
+ <auto_boost>N/A</auto_boost>
+ <auto_boost_default>N/A</auto_boost_default>
+ </clock_policy>
+ <voltage>
+ <graphics_volt>881.250 mV</graphics_volt>
+ </voltage>
+ <supported_clocks>
+ <supported_mem_clock>
+ <value>1215 MHz</value>
+ <supported_graphics_clock>1410 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1395 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1380 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1365 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1350 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1335 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1320 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1305 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1290 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1275 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1260 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1245 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1230 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1215 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1200 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1185 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1170 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1155 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1140 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1125 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1110 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1095 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1080 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1065 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1050 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1035 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1020 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1005 MHz</supported_graphics_clock>
+ <supported_graphics_clock>990 MHz</supported_graphics_clock>
+ <supported_graphics_clock>975 MHz</supported_graphics_clock>
+ <supported_graphics_clock>960 MHz</supported_graphics_clock>
+ <supported_graphics_clock>945 MHz</supported_graphics_clock>
+ <supported_graphics_clock>930 MHz</supported_graphics_clock>
+ <supported_graphics_clock>915 MHz</supported_graphics_clock>
+ <supported_graphics_clock>900 MHz</supported_graphics_clock>
+ <supported_graphics_clock>885 MHz</supported_graphics_clock>
+ <supported_graphics_clock>870 MHz</supported_graphics_clock>
+ <supported_graphics_clock>855 MHz</supported_graphics_clock>
+ <supported_graphics_clock>840 MHz</supported_graphics_clock>
+ <supported_graphics_clock>825 MHz</supported_graphics_clock>
+ <supported_graphics_clock>810 MHz</supported_graphics_clock>
+ <supported_graphics_clock>795 MHz</supported_graphics_clock>
+ <supported_graphics_clock>780 MHz</supported_graphics_clock>
+ <supported_graphics_clock>765 MHz</supported_graphics_clock>
+ <supported_graphics_clock>750 MHz</supported_graphics_clock>
+ <supported_graphics_clock>735 MHz</supported_graphics_clock>
+ <supported_graphics_clock>720 MHz</supported_graphics_clock>
+ <supported_graphics_clock>705 MHz</supported_graphics_clock>
+ <supported_graphics_clock>690 MHz</supported_graphics_clock>
+ <supported_graphics_clock>675 MHz</supported_graphics_clock>
+ <supported_graphics_clock>660 MHz</supported_graphics_clock>
+ <supported_graphics_clock>645 MHz</supported_graphics_clock>
+ <supported_graphics_clock>630 MHz</supported_graphics_clock>
+ <supported_graphics_clock>615 MHz</supported_graphics_clock>
+ <supported_graphics_clock>600 MHz</supported_graphics_clock>
+ <supported_graphics_clock>585 MHz</supported_graphics_clock>
+ <supported_graphics_clock>570 MHz</supported_graphics_clock>
+ <supported_graphics_clock>555 MHz</supported_graphics_clock>
+ <supported_graphics_clock>540 MHz</supported_graphics_clock>
+ <supported_graphics_clock>525 MHz</supported_graphics_clock>
+ <supported_graphics_clock>510 MHz</supported_graphics_clock>
+ <supported_graphics_clock>495 MHz</supported_graphics_clock>
+ <supported_graphics_clock>480 MHz</supported_graphics_clock>
+ <supported_graphics_clock>465 MHz</supported_graphics_clock>
+ <supported_graphics_clock>450 MHz</supported_graphics_clock>
+ <supported_graphics_clock>435 MHz</supported_graphics_clock>
+ <supported_graphics_clock>420 MHz</supported_graphics_clock>
+ <supported_graphics_clock>405 MHz</supported_graphics_clock>
+ <supported_graphics_clock>390 MHz</supported_graphics_clock>
+ <supported_graphics_clock>375 MHz</supported_graphics_clock>
+ <supported_graphics_clock>360 MHz</supported_graphics_clock>
+ <supported_graphics_clock>345 MHz</supported_graphics_clock>
+ <supported_graphics_clock>330 MHz</supported_graphics_clock>
+ <supported_graphics_clock>315 MHz</supported_graphics_clock>
+ <supported_graphics_clock>300 MHz</supported_graphics_clock>
+ <supported_graphics_clock>285 MHz</supported_graphics_clock>
+ <supported_graphics_clock>270 MHz</supported_graphics_clock>
+ <supported_graphics_clock>255 MHz</supported_graphics_clock>
+ <supported_graphics_clock>240 MHz</supported_graphics_clock>
+ <supported_graphics_clock>225 MHz</supported_graphics_clock>
+ <supported_graphics_clock>210 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ </supported_clocks>
+ <processes>
+ </processes>
+ <accounted_processes>
+ </accounted_processes>
+ </gpu>
+
+</nvidia_smi_log>
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/config.json b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/config.json
new file mode 100644
index 000000000..a251e326a
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/config.json
@@ -0,0 +1,6 @@
+{
+ "update_every": 123,
+ "timeout": 123.123,
+ "binary_path": "ok",
+ "use_csv_format": true
+}
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/config.yaml b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/config.yaml
new file mode 100644
index 000000000..0b580dbcb
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/config.yaml
@@ -0,0 +1,4 @@
+update_every: 123
+timeout: 123.123
+binary_path: "ok"
+use_csv_format: yes
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/help-query-gpu.txt b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/help-query-gpu.txt
new file mode 100644
index 000000000..2dd3285e1
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/help-query-gpu.txt
@@ -0,0 +1,414 @@
+List of valid properties to query for the switch "--query-gpu=":
+
+"timestamp"
+The timestamp of when the query was made in format "YYYY/MM/DD HH:MM:SS.msec".
+
+"driver_version"
+The version of the installed NVIDIA display driver. This is an alphanumeric string.
+
+"count"
+The number of NVIDIA GPUs in the system.
+
+"name" or "gpu_name"
+The official product name of the GPU. This is an alphanumeric string. For all products.
+
+"serial" or "gpu_serial"
+This number matches the serial number physically printed on each board. It is a globally unique immutable alphanumeric value.
+
+"uuid" or "gpu_uuid"
+This value is the globally unique immutable alphanumeric identifier of the GPU. It does not correspond to any physical label on the board.
+
+"pci.bus_id" or "gpu_bus_id"
+PCI bus id as "domain:bus:device.function", in hex.
+
+"pci.domain"
+PCI domain number, in hex.
+
+"pci.bus"
+PCI bus number, in hex.
+
+"pci.device"
+PCI device number, in hex.
+
+"pci.device_id"
+PCI vendor device id, in hex
+
+"pci.sub_device_id"
+PCI Sub System id, in hex
+
+"pcie.link.gen.current"
+The current PCI-E link generation. These may be reduced when the GPU is not in use.
+
+"pcie.link.gen.max"
+The maximum PCI-E link generation possible with this GPU and system configuration. For example, if the GPU supports a higher PCIe generation than the system supports then this reports the system PCIe generation.
+
+"pcie.link.width.current"
+The current PCI-E link width. These may be reduced when the GPU is not in use.
+
+"pcie.link.width.max"
+The maximum PCI-E link width possible with this GPU and system configuration. For example, if the GPU supports a higher PCIe generation than the system supports then this reports the system PCIe generation.
+
+"index"
+Zero based index of the GPU. Can change at each boot.
+
+"display_mode"
+A flag that indicates whether a physical display (e.g. monitor) is currently connected to any of the GPU's connectors. "Enabled" indicates an attached display. "Disabled" indicates otherwise.
+
+"display_active"
+A flag that indicates whether a display is initialized on the GPU's (e.g. memory is allocated on the device for display). Display can be active even when no monitor is physically attached. "Enabled" indicates an active display. "Disabled" indicates otherwise.
+
+"persistence_mode"
+A flag that indicates whether persistence mode is enabled for the GPU. Value is either "Enabled" or "Disabled". When persistence mode is enabled the NVIDIA driver remains loaded even when no active clients, such as X11 or nvidia-smi, exist. This minimizes the driver load latency associated with running dependent apps, such as CUDA programs. Linux only.
+
+"accounting.mode"
+A flag that indicates whether accounting mode is enabled for the GPU. Value is either "Enabled" or "Disabled". When accounting is enabled statistics are calculated for each compute process running on the GPU.Statistics can be queried during the lifetime or after termination of the process.The execution time of process is reported as 0 while the process is in running state and updated to actualexecution time after the process has terminated. See --help-query-accounted-apps for more info.
+
+"accounting.buffer_size"
+The size of the circular buffer that holds list of processes that can be queried for accounting stats. This is the maximum number of processes that accounting information will be stored for before information about oldest processes will get overwritten by information about new processes.
+
+Section about driver_model properties
+On Windows, the TCC and WDDM driver models are supported. The driver model can be changed with the (-dm) or (-fdm) flags. The TCC driver model is optimized for compute applications. I.E. kernel launch times will be quicker with TCC. The WDDM driver model is designed for graphics applications and is not recommended for compute applications. Linux does not support multiple driver models, and will always have the value of "N/A". Only for selected products. Please see feature matrix in NVML documentation.
+
+"driver_model.current"
+The driver model currently in use. Always "N/A" on Linux.
+
+"driver_model.pending"
+The driver model that will be used on the next reboot. Always "N/A" on Linux.
+
+"vbios_version"
+The BIOS of the GPU board.
+
+Section about inforom properties
+Version numbers for each object in the GPU board's inforom storage. The inforom is a small, persistent store of configuration and state data for the GPU. All inforom version fields are numerical. It can be useful to know these version numbers because some GPU features are only available with inforoms of a certain version or higher.
+
+"inforom.img" or "inforom.image"
+Global version of the infoROM image. Image version just like VBIOS version uniquely describes the exact version of the infoROM flashed on the board in contrast to infoROM object version which is only an indicator of supported features.
+
+"inforom.oem"
+Version for the OEM configuration data.
+
+"inforom.ecc"
+Version for the ECC recording data.
+
+"inforom.pwr" or "inforom.power"
+Version for the power management data.
+
+Section about gom properties
+GOM allows to reduce power usage and optimize GPU throughput by disabling GPU features. Each GOM is designed to meet specific user needs.
+In "All On" mode everything is enabled and running at full speed.
+The "Compute" mode is designed for running only compute tasks. Graphics operations are not allowed.
+The "Low Double Precision" mode is designed for running graphics applications that don't require high bandwidth double precision.
+GOM can be changed with the (--gom) flag.
+
+"gom.current" or "gpu_operation_mode.current"
+The GOM currently in use.
+
+"gom.pending" or "gpu_operation_mode.pending"
+The GOM that will be used on the next reboot.
+
+"fan.speed"
+The fan speed value is the percent of the product's maximum noise tolerance fan speed that the device's fan is currently intended to run at. This value may exceed 100% in certain cases. Note: The reported speed is the intended fan speed. If the fan is physically blocked and unable to spin, this output will not match the actual fan speed. Many parts do not report fan speeds because they rely on cooling via fans in the surrounding enclosure.
+
+"pstate"
+The current performance state for the GPU. States range from P0 (maximum performance) to P12 (minimum performance).
+
+Section about clocks_throttle_reasons properties
+Retrieves information about factors that are reducing the frequency of clocks. If all throttle reasons are returned as "Not Active" it means that clocks are running as high as possible.
+
+"clocks_throttle_reasons.supported"
+Bitmask of supported clock throttle reasons. See nvml.h for more details.
+
+"clocks_throttle_reasons.active"
+Bitmask of active clock throttle reasons. See nvml.h for more details.
+
+"clocks_throttle_reasons.gpu_idle"
+Nothing is running on the GPU and the clocks are dropping to Idle state. This limiter may be removed in a later release.
+
+"clocks_throttle_reasons.applications_clocks_setting"
+GPU clocks are limited by applications clocks setting. E.g. can be changed by nvidia-smi --applications-clocks=
+
+"clocks_throttle_reasons.sw_power_cap"
+SW Power Scaling algorithm is reducing the clocks below requested clocks because the GPU is consuming too much power. E.g. SW power cap limit can be changed with nvidia-smi --power-limit=
+
+"clocks_throttle_reasons.hw_slowdown"
+HW Slowdown (reducing the core clocks by a factor of 2 or more) is engaged. This is an indicator of:
+ HW Thermal Slowdown: temperature being too high
+ HW Power Brake Slowdown: External Power Brake Assertion is triggered (e.g. by the system power supply)
+ * Power draw is too high and Fast Trigger protection is reducing the clocks
+ * May be also reported during PState or clock change
+ * This behavior may be removed in a later release
+
+"clocks_throttle_reasons.hw_thermal_slowdown"
+HW Thermal Slowdown (reducing the core clocks by a factor of 2 or more) is engaged. This is an indicator of temperature being too high
+
+"clocks_throttle_reasons.hw_power_brake_slowdown"
+HW Power Brake Slowdown (reducing the core clocks by a factor of 2 or more) is engaged. This is an indicator of External Power Brake Assertion being triggered (e.g. by the system power supply)
+
+"clocks_throttle_reasons.sw_thermal_slowdown"
+SW Thermal capping algorithm is reducing clocks below requested clocks because GPU temperature is higher than Max Operating Temp.
+
+"clocks_throttle_reasons.sync_boost"
+Sync Boost This GPU has been added to a Sync boost group with nvidia-smi or DCGM in
+ * order to maximize performance per watt. All GPUs in the sync boost group
+ * will boost to the minimum possible clocks across the entire group. Look at
+ * the throttle reasons for other GPUs in the system to see why those GPUs are
+ * holding this one at lower clocks.
+
+Section about memory properties
+On-board memory information. Reported total memory is affected by ECC state. If ECC is enabled the total available memory is decreased by several percent, due to the requisite parity bits. The driver may also reserve a small amount of memory for internal use, even without active work on the GPU.
+
+"memory.total"
+Total installed GPU memory.
+
+"memory.reserved"
+Total memory reserved by the NVIDIA driver and firmware.
+
+"memory.used"
+Total memory allocated by active contexts.
+
+"memory.free"
+Total free memory.
+
+"compute_mode"
+The compute mode flag indicates whether individual or multiple compute applications may run on the GPU.
+"0: Default" means multiple contexts are allowed per device.
+"1: Exclusive_Thread", deprecated, use Exclusive_Process instead
+"2: Prohibited" means no contexts are allowed per device (no compute apps).
+"3: Exclusive_Process" means only one context is allowed per device, usable from multiple threads at a time.
+
+"compute_cap"
+The CUDA Compute Capability, represented as Major DOT Minor.
+
+Section about utilization properties
+Utilization rates report how busy each GPU is over time, and can be used to determine how much an application is using the GPUs in the system.
+
+"utilization.gpu"
+Percent of time over the past sample period during which one or more kernels was executing on the GPU.
+The sample period may be between 1 second and 1/6 second depending on the product.
+
+"utilization.memory"
+Percent of time over the past sample period during which global (device) memory was being read or written.
+The sample period may be between 1 second and 1/6 second depending on the product.
+
+Section about encoder.stats properties
+Encoder stats report number of encoder sessions, average FPS and average latency in us for given GPUs in the system.
+
+"encoder.stats.sessionCount"
+Number of encoder sessions running on the GPU.
+
+"encoder.stats.averageFps"
+Average FPS of all sessions running on the GPU.
+
+"encoder.stats.averageLatency"
+Average latency in microseconds of all sessions running on the GPU.
+
+Section about ecc.mode properties
+A flag that indicates whether ECC support is enabled. May be either "Enabled" or "Disabled". Changes to ECC mode require a reboot. Requires Inforom ECC object version 1.0 or higher.
+
+"ecc.mode.current"
+The ECC mode that the GPU is currently operating under.
+
+"ecc.mode.pending"
+The ECC mode that the GPU will operate under after the next reboot.
+
+Section about ecc.errors properties
+NVIDIA GPUs can provide error counts for various types of ECC errors. Some ECC errors are either single or double bit, where single bit errors are corrected and double bit errors are uncorrectable. Texture memory errors may be correctable via resend or uncorrectable if the resend fails. These errors are available across two timescales (volatile and aggregate). Single bit ECC errors are automatically corrected by the HW and do not result in data corruption. Double bit errors are detected but not corrected. Please see the ECC documents on the web for information on compute application behavior when double bit errors occur. Volatile error counters track the number of errors detected since the last driver load. Aggregate error counts persist indefinitely and thus act as a lifetime counter.
+
+"ecc.errors.corrected.volatile.device_memory"
+Errors detected in global device memory.
+
+"ecc.errors.corrected.volatile.dram"
+Errors detected in global device memory.
+
+"ecc.errors.corrected.volatile.register_file"
+Errors detected in register file memory.
+
+"ecc.errors.corrected.volatile.l1_cache"
+Errors detected in the L1 cache.
+
+"ecc.errors.corrected.volatile.l2_cache"
+Errors detected in the L2 cache.
+
+"ecc.errors.corrected.volatile.texture_memory"
+Parity errors detected in texture memory.
+
+"ecc.errors.corrected.volatile.cbu"
+Parity errors detected in CBU.
+
+"ecc.errors.corrected.volatile.sram"
+Errors detected in global SRAMs.
+
+"ecc.errors.corrected.volatile.total"
+Total errors detected across entire chip.
+
+"ecc.errors.corrected.aggregate.device_memory"
+Errors detected in global device memory.
+
+"ecc.errors.corrected.aggregate.dram"
+Errors detected in global device memory.
+
+"ecc.errors.corrected.aggregate.register_file"
+Errors detected in register file memory.
+
+"ecc.errors.corrected.aggregate.l1_cache"
+Errors detected in the L1 cache.
+
+"ecc.errors.corrected.aggregate.l2_cache"
+Errors detected in the L2 cache.
+
+"ecc.errors.corrected.aggregate.texture_memory"
+Parity errors detected in texture memory.
+
+"ecc.errors.corrected.aggregate.cbu"
+Parity errors detected in CBU.
+
+"ecc.errors.corrected.aggregate.sram"
+Errors detected in global SRAMs.
+
+"ecc.errors.corrected.aggregate.total"
+Total errors detected across entire chip.
+
+"ecc.errors.uncorrected.volatile.device_memory"
+Errors detected in global device memory.
+
+"ecc.errors.uncorrected.volatile.dram"
+Errors detected in global device memory.
+
+"ecc.errors.uncorrected.volatile.register_file"
+Errors detected in register file memory.
+
+"ecc.errors.uncorrected.volatile.l1_cache"
+Errors detected in the L1 cache.
+
+"ecc.errors.uncorrected.volatile.l2_cache"
+Errors detected in the L2 cache.
+
+"ecc.errors.uncorrected.volatile.texture_memory"
+Parity errors detected in texture memory.
+
+"ecc.errors.uncorrected.volatile.cbu"
+Parity errors detected in CBU.
+
+"ecc.errors.uncorrected.volatile.sram"
+Errors detected in global SRAMs.
+
+"ecc.errors.uncorrected.volatile.total"
+Total errors detected across entire chip.
+
+"ecc.errors.uncorrected.aggregate.device_memory"
+Errors detected in global device memory.
+
+"ecc.errors.uncorrected.aggregate.dram"
+Errors detected in global device memory.
+
+"ecc.errors.uncorrected.aggregate.register_file"
+Errors detected in register file memory.
+
+"ecc.errors.uncorrected.aggregate.l1_cache"
+Errors detected in the L1 cache.
+
+"ecc.errors.uncorrected.aggregate.l2_cache"
+Errors detected in the L2 cache.
+
+"ecc.errors.uncorrected.aggregate.texture_memory"
+Parity errors detected in texture memory.
+
+"ecc.errors.uncorrected.aggregate.cbu"
+Parity errors detected in CBU.
+
+"ecc.errors.uncorrected.aggregate.sram"
+Errors detected in global SRAMs.
+
+"ecc.errors.uncorrected.aggregate.total"
+Total errors detected across entire chip.
+
+Section about retired_pages properties
+NVIDIA GPUs can retire pages of GPU device memory when they become unreliable. This can happen when multiple single bit ECC errors occur for the same page, or on a double bit ECC error. When a page is retired, the NVIDIA driver will hide it such that no driver, or application memory allocations can access it.
+
+"retired_pages.single_bit_ecc.count" or "retired_pages.sbe"
+The number of GPU device memory pages that have been retired due to multiple single bit ECC errors.
+
+"retired_pages.double_bit.count" or "retired_pages.dbe"
+The number of GPU device memory pages that have been retired due to a double bit ECC error.
+
+"retired_pages.pending"
+Checks if any GPU device memory pages are pending retirement on the next reboot. Pages that are pending retirement can still be allocated, and may cause further reliability issues.
+
+"temperature.gpu"
+ Core GPU temperature. in degrees C.
+
+"temperature.memory"
+ HBM memory temperature. in degrees C.
+
+"power.management"
+A flag that indicates whether power management is enabled. Either "Supported" or "[Not Supported]". Requires Inforom PWR object version 3.0 or higher or Kepler device.
+
+"power.draw"
+The last measured power draw for the entire board, in watts. Only available if power management is supported. This reading is accurate to within +/- 5 watts.
+
+"power.limit"
+The software power limit in watts. Set by software like nvidia-smi. On Kepler devices Power Limit can be adjusted using [-pl | --power-limit=] switches.
+
+"enforced.power.limit"
+The power management algorithm's power ceiling, in watts. Total board power draw is manipulated by the power management algorithm such that it stays under this value. This value is the minimum of various power limiters.
+
+"power.default_limit"
+The default power management algorithm's power ceiling, in watts. Power Limit will be set back to Default Power Limit after driver unload.
+
+"power.min_limit"
+The minimum value in watts that power limit can be set to.
+
+"power.max_limit"
+The maximum value in watts that power limit can be set to.
+
+"clocks.current.graphics" or "clocks.gr"
+Current frequency of graphics (shader) clock.
+
+"clocks.current.sm" or "clocks.sm"
+Current frequency of SM (Streaming Multiprocessor) clock.
+
+"clocks.current.memory" or "clocks.mem"
+Current frequency of memory clock.
+
+"clocks.current.video" or "clocks.video"
+Current frequency of video encoder/decoder clock.
+
+Section about clocks.applications properties
+User specified frequency at which applications will be running at. Can be changed with [-ac | --applications-clocks] switches.
+
+"clocks.applications.graphics" or "clocks.applications.gr"
+User specified frequency of graphics (shader) clock.
+
+"clocks.applications.memory" or "clocks.applications.mem"
+User specified frequency of memory clock.
+
+Section about clocks.default_applications properties
+Default frequency at which applications will be running at. Application clocks can be changed with [-ac | --applications-clocks] switches. Application clocks can be set to default using [-rac | --reset-applications-clocks] switches.
+
+"clocks.default_applications.graphics" or "clocks.default_applications.gr"
+Default frequency of applications graphics (shader) clock.
+
+"clocks.default_applications.memory" or "clocks.default_applications.mem"
+Default frequency of applications memory clock.
+
+Section about clocks.max properties
+Maximum frequency at which parts of the GPU are design to run.
+
+"clocks.max.graphics" or "clocks.max.gr"
+Maximum frequency of graphics (shader) clock.
+
+"clocks.max.sm" or "clocks.max.sm"
+Maximum frequency of SM (Streaming Multiprocessor) clock.
+
+"clocks.max.memory" or "clocks.max.mem"
+Maximum frequency of memory clock.
+
+Section about mig.mode properties
+A flag that indicates whether MIG mode is enabled. May be either "Enabled" or "Disabled". Changes to MIG mode require a GPU reset.
+
+"mig.mode.current"
+The MIG mode that the GPU is currently operating under.
+
+"mig.mode.pending"
+The MIG mode that the GPU will operate under after reset.
+
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/rtx-2080-win.xml b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/rtx-2080-win.xml
new file mode 100644
index 000000000..9bc0d2220
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/rtx-2080-win.xml
@@ -0,0 +1,776 @@
+<?xml version="1.0" ?>
+<!DOCTYPE nvidia_smi_log SYSTEM "nvsmi_device_v11.dtd">
+<nvidia_smi_log>
+ <timestamp>Tue Sep 20 14:07:39 2022</timestamp>
+ <driver_version>516.59</driver_version>
+ <cuda_version>11.7</cuda_version>
+ <attached_gpus>1</attached_gpus>
+ <gpu id="00000000:0A:00.0">
+ <product_name>NVIDIA GeForce RTX 2080</product_name>
+ <product_brand>GeForce</product_brand>
+ <product_architecture>Turing</product_architecture>
+ <display_mode>Enabled</display_mode>
+ <display_active>Enabled</display_active>
+ <persistence_mode>N/A</persistence_mode>
+ <mig_mode>
+ <current_mig>N/A</current_mig>
+ <pending_mig>N/A</pending_mig>
+ </mig_mode>
+ <mig_devices>
+ None
+ </mig_devices>
+ <accounting_mode>Disabled</accounting_mode>
+ <accounting_mode_buffer_size>4000</accounting_mode_buffer_size>
+ <driver_model>
+ <current_dm>WDDM</current_dm>
+ <pending_dm>WDDM</pending_dm>
+ </driver_model>
+ <serial>N/A</serial>
+ <uuid>GPU-fbd55ed4-1eec-4423-0a47-ad594b4333e3</uuid>
+ <minor_number>N/A</minor_number>
+ <vbios_version>90.04.23.00.db</vbios_version>
+ <multigpu_board>No</multigpu_board>
+ <board_id>0xa00</board_id>
+ <gpu_part_number>N/A</gpu_part_number>
+ <gpu_module_id>0</gpu_module_id>
+ <inforom_version>
+ <img_version>G001.0000.02.04</img_version>
+ <oem_object>1.1</oem_object>
+ <ecc_object>N/A</ecc_object>
+ <pwr_object>N/A</pwr_object>
+ </inforom_version>
+ <gpu_operation_mode>
+ <current_gom>N/A</current_gom>
+ <pending_gom>N/A</pending_gom>
+ </gpu_operation_mode>
+ <gsp_firmware_version>N/A</gsp_firmware_version>
+ <gpu_virtualization_mode>
+ <virtualization_mode>None</virtualization_mode>
+ <host_vgpu_mode>N/A</host_vgpu_mode>
+ </gpu_virtualization_mode>
+ <ibmnpu>
+ <relaxed_ordering_mode>N/A</relaxed_ordering_mode>
+ </ibmnpu>
+ <pci>
+ <pci_bus>0A</pci_bus>
+ <pci_device>00</pci_device>
+ <pci_domain>0000</pci_domain>
+ <pci_device_id>1E8710DE</pci_device_id>
+ <pci_bus_id>00000000:0A:00.0</pci_bus_id>
+ <pci_sub_system_id>37AF1458</pci_sub_system_id>
+ <pci_gpu_link_info>
+ <pcie_gen>
+ <max_link_gen>3</max_link_gen>
+ <current_link_gen>3</current_link_gen>
+ </pcie_gen>
+ <link_widths>
+ <max_link_width>16x</max_link_width>
+ <current_link_width>8x</current_link_width>
+ </link_widths>
+ </pci_gpu_link_info>
+ <pci_bridge_chip>
+ <bridge_chip_type>N/A</bridge_chip_type>
+ <bridge_chip_fw>N/A</bridge_chip_fw>
+ </pci_bridge_chip>
+ <replay_counter>0</replay_counter>
+ <replay_rollover_counter>0</replay_rollover_counter>
+ <tx_util>13000 KB/s</tx_util>
+ <rx_util>91000 KB/s</rx_util>
+ </pci>
+ <fan_speed>37 %</fan_speed>
+ <performance_state>P8</performance_state>
+ <clocks_throttle_reasons>
+ <clocks_throttle_reason_gpu_idle>Active</clocks_throttle_reason_gpu_idle>
+ <clocks_throttle_reason_applications_clocks_setting>Not Active</clocks_throttle_reason_applications_clocks_setting>
+ <clocks_throttle_reason_sw_power_cap>Not Active</clocks_throttle_reason_sw_power_cap>
+ <clocks_throttle_reason_hw_slowdown>Not Active</clocks_throttle_reason_hw_slowdown>
+ <clocks_throttle_reason_hw_thermal_slowdown>Not Active</clocks_throttle_reason_hw_thermal_slowdown>
+ <clocks_throttle_reason_hw_power_brake_slowdown>Not Active</clocks_throttle_reason_hw_power_brake_slowdown>
+ <clocks_throttle_reason_sync_boost>Not Active</clocks_throttle_reason_sync_boost>
+ <clocks_throttle_reason_sw_thermal_slowdown>Not Active</clocks_throttle_reason_sw_thermal_slowdown>
+ <clocks_throttle_reason_display_clocks_setting>Not Active</clocks_throttle_reason_display_clocks_setting>
+ </clocks_throttle_reasons>
+ <fb_memory_usage>
+ <total>8192 MiB</total>
+ <reserved>182 MiB</reserved>
+ <used>862 MiB</used>
+ <free>7147 MiB</free>
+ </fb_memory_usage>
+ <bar1_memory_usage>
+ <total>256 MiB</total>
+ <used>2 MiB</used>
+ <free>254 MiB</free>
+ </bar1_memory_usage>
+ <compute_mode>Default</compute_mode>
+ <utilization>
+ <gpu_util>2 %</gpu_util>
+ <memory_util>7 %</memory_util>
+ <encoder_util>0 %</encoder_util>
+ <decoder_util>0 %</decoder_util>
+ </utilization>
+ <encoder_stats>
+ <session_count>0</session_count>
+ <average_fps>0</average_fps>
+ <average_latency>0</average_latency>
+ </encoder_stats>
+ <fbc_stats>
+ <session_count>0</session_count>
+ <average_fps>0</average_fps>
+ <average_latency>0</average_latency>
+ </fbc_stats>
+ <ecc_mode>
+ <current_ecc>N/A</current_ecc>
+ <pending_ecc>N/A</pending_ecc>
+ </ecc_mode>
+ <ecc_errors>
+ <volatile>
+ <sram_correctable>N/A</sram_correctable>
+ <sram_uncorrectable>N/A</sram_uncorrectable>
+ <dram_correctable>N/A</dram_correctable>
+ <dram_uncorrectable>N/A</dram_uncorrectable>
+ </volatile>
+ <aggregate>
+ <sram_correctable>N/A</sram_correctable>
+ <sram_uncorrectable>N/A</sram_uncorrectable>
+ <dram_correctable>N/A</dram_correctable>
+ <dram_uncorrectable>N/A</dram_uncorrectable>
+ </aggregate>
+ </ecc_errors>
+ <retired_pages>
+ <multiple_single_bit_retirement>
+ <retired_count>N/A</retired_count>
+ <retired_pagelist>N/A</retired_pagelist>
+ </multiple_single_bit_retirement>
+ <double_bit_retirement>
+ <retired_count>N/A</retired_count>
+ <retired_pagelist>N/A</retired_pagelist>
+ </double_bit_retirement>
+ <pending_blacklist>N/A</pending_blacklist>
+ <pending_retirement>N/A</pending_retirement>
+ </retired_pages>
+ <remapped_rows>N/A</remapped_rows>
+ <temperature>
+ <gpu_temp>29 C</gpu_temp>
+ <gpu_temp_max_threshold>100 C</gpu_temp_max_threshold>
+ <gpu_temp_slow_threshold>97 C</gpu_temp_slow_threshold>
+ <gpu_temp_max_gpu_threshold>88 C</gpu_temp_max_gpu_threshold>
+ <gpu_target_temperature>83 C</gpu_target_temperature>
+ <memory_temp>N/A</memory_temp>
+ <gpu_temp_max_mem_threshold>N/A</gpu_temp_max_mem_threshold>
+ </temperature>
+ <supported_gpu_target_temp>
+ <gpu_target_temp_min>65 C</gpu_target_temp_min>
+ <gpu_target_temp_max>88 C</gpu_target_temp_max>
+ </supported_gpu_target_temp>
+ <power_readings>
+ <power_state>P8</power_state>
+ <power_management>Supported</power_management>
+ <power_draw>14.50 W</power_draw>
+ <power_limit>275.00 W</power_limit>
+ <default_power_limit>275.00 W</default_power_limit>
+ <enforced_power_limit>275.00 W</enforced_power_limit>
+ <min_power_limit>105.00 W</min_power_limit>
+ <max_power_limit>350.00 W</max_power_limit>
+ </power_readings>
+ <clocks>
+ <graphics_clock>193 MHz</graphics_clock>
+ <sm_clock>193 MHz</sm_clock>
+ <mem_clock>403 MHz</mem_clock>
+ <video_clock>539 MHz</video_clock>
+ </clocks>
+ <applications_clocks>
+ <graphics_clock>N/A</graphics_clock>
+ <mem_clock>N/A</mem_clock>
+ </applications_clocks>
+ <default_applications_clocks>
+ <graphics_clock>N/A</graphics_clock>
+ <mem_clock>N/A</mem_clock>
+ </default_applications_clocks>
+ <max_clocks>
+ <graphics_clock>3060 MHz</graphics_clock>
+ <sm_clock>3060 MHz</sm_clock>
+ <mem_clock>7560 MHz</mem_clock>
+ <video_clock>1950 MHz</video_clock>
+ </max_clocks>
+ <max_customer_boost_clocks>
+ <graphics_clock>N/A</graphics_clock>
+ </max_customer_boost_clocks>
+ <clock_policy>
+ <auto_boost>N/A</auto_boost>
+ <auto_boost_default>N/A</auto_boost_default>
+ </clock_policy>
+ <voltage>
+ <graphics_volt>N/A</graphics_volt>
+ </voltage>
+ <supported_clocks>
+ <supported_mem_clock>
+ <value>7560 MHz</value>
+ <supported_graphics_clock>2220 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2205 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2190 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2175 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2160 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2145 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2130 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2115 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2100 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2085 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2070 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2055 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2040 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2025 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2010 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1995 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1980 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1965 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1950 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1935 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1920 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1905 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1890 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1875 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1860 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1845 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1830 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1815 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1800 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1785 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1770 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1755 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1740 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1725 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1710 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1695 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1680 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1665 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1650 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1635 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1620 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1605 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1590 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1575 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1560 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1545 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1530 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1515 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1500 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1485 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1470 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1455 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1440 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1425 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1410 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1395 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1380 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1365 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1350 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1335 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1320 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1305 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1290 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1275 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1260 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ <supported_mem_clock>
+ <value>7360 MHz</value>
+ <supported_graphics_clock>2220 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2205 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2190 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2175 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2160 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2145 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2130 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2115 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2100 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2085 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2070 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2055 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2040 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2025 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2010 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1995 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1980 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1965 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1950 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1935 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1920 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1905 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1890 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1875 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1860 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1845 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1830 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1815 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1800 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1785 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1770 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1755 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1740 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1725 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1710 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1695 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1680 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1665 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1650 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1635 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1620 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1605 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1590 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1575 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1560 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1545 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1530 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1515 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1500 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1485 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1470 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1455 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1440 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1425 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1410 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1395 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1380 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1365 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1350 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1335 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1320 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1305 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1290 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1275 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1260 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ <supported_mem_clock>
+ <value>5000 MHz</value>
+ <supported_graphics_clock>2220 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2205 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2190 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2175 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2160 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2145 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2130 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2115 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2100 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2085 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2070 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2055 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2040 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2025 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2010 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1995 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1980 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1965 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1950 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1935 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1920 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1905 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1890 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1875 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1860 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1845 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1830 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1815 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1800 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1785 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1770 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1755 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1740 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1725 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1710 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1695 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1680 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1665 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1650 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1635 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1620 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1605 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1590 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1575 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1560 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1545 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1530 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1515 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1500 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1485 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1470 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1455 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1440 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1425 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1410 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1395 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1380 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1365 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1350 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1335 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1320 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1305 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1290 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1275 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1260 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ <supported_mem_clock>
+ <value>810 MHz</value>
+ <supported_graphics_clock>2100 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2085 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2070 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2055 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2040 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2025 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2010 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1995 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1980 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1965 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1950 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1935 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1920 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1905 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1890 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1875 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1860 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1845 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1830 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1815 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1800 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1785 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1770 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1755 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1740 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1725 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1710 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1695 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1680 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1665 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1650 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1635 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1620 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1605 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1590 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1575 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1560 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1545 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1530 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1515 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1500 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1485 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1470 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1455 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1440 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1425 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1410 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1395 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1380 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1365 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1350 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1335 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1320 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1305 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1290 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1275 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1260 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1245 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1230 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1215 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1200 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1185 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1170 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1155 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1140 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1125 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1110 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1095 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1080 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1065 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1050 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1035 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1020 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1005 MHz</supported_graphics_clock>
+ <supported_graphics_clock>990 MHz</supported_graphics_clock>
+ <supported_graphics_clock>975 MHz</supported_graphics_clock>
+ <supported_graphics_clock>960 MHz</supported_graphics_clock>
+ <supported_graphics_clock>945 MHz</supported_graphics_clock>
+ <supported_graphics_clock>930 MHz</supported_graphics_clock>
+ <supported_graphics_clock>915 MHz</supported_graphics_clock>
+ <supported_graphics_clock>900 MHz</supported_graphics_clock>
+ <supported_graphics_clock>885 MHz</supported_graphics_clock>
+ <supported_graphics_clock>870 MHz</supported_graphics_clock>
+ <supported_graphics_clock>855 MHz</supported_graphics_clock>
+ <supported_graphics_clock>840 MHz</supported_graphics_clock>
+ <supported_graphics_clock>825 MHz</supported_graphics_clock>
+ <supported_graphics_clock>810 MHz</supported_graphics_clock>
+ <supported_graphics_clock>795 MHz</supported_graphics_clock>
+ <supported_graphics_clock>780 MHz</supported_graphics_clock>
+ <supported_graphics_clock>765 MHz</supported_graphics_clock>
+ <supported_graphics_clock>750 MHz</supported_graphics_clock>
+ <supported_graphics_clock>735 MHz</supported_graphics_clock>
+ <supported_graphics_clock>720 MHz</supported_graphics_clock>
+ <supported_graphics_clock>705 MHz</supported_graphics_clock>
+ <supported_graphics_clock>690 MHz</supported_graphics_clock>
+ <supported_graphics_clock>675 MHz</supported_graphics_clock>
+ <supported_graphics_clock>660 MHz</supported_graphics_clock>
+ <supported_graphics_clock>645 MHz</supported_graphics_clock>
+ <supported_graphics_clock>630 MHz</supported_graphics_clock>
+ <supported_graphics_clock>615 MHz</supported_graphics_clock>
+ <supported_graphics_clock>600 MHz</supported_graphics_clock>
+ <supported_graphics_clock>585 MHz</supported_graphics_clock>
+ <supported_graphics_clock>570 MHz</supported_graphics_clock>
+ <supported_graphics_clock>555 MHz</supported_graphics_clock>
+ <supported_graphics_clock>540 MHz</supported_graphics_clock>
+ <supported_graphics_clock>525 MHz</supported_graphics_clock>
+ <supported_graphics_clock>510 MHz</supported_graphics_clock>
+ <supported_graphics_clock>495 MHz</supported_graphics_clock>
+ <supported_graphics_clock>480 MHz</supported_graphics_clock>
+ <supported_graphics_clock>465 MHz</supported_graphics_clock>
+ <supported_graphics_clock>450 MHz</supported_graphics_clock>
+ <supported_graphics_clock>435 MHz</supported_graphics_clock>
+ <supported_graphics_clock>420 MHz</supported_graphics_clock>
+ <supported_graphics_clock>405 MHz</supported_graphics_clock>
+ <supported_graphics_clock>390 MHz</supported_graphics_clock>
+ <supported_graphics_clock>375 MHz</supported_graphics_clock>
+ <supported_graphics_clock>360 MHz</supported_graphics_clock>
+ <supported_graphics_clock>345 MHz</supported_graphics_clock>
+ <supported_graphics_clock>330 MHz</supported_graphics_clock>
+ <supported_graphics_clock>315 MHz</supported_graphics_clock>
+ <supported_graphics_clock>300 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ <supported_mem_clock>
+ <value>405 MHz</value>
+ <supported_graphics_clock>645 MHz</supported_graphics_clock>
+ <supported_graphics_clock>630 MHz</supported_graphics_clock>
+ <supported_graphics_clock>615 MHz</supported_graphics_clock>
+ <supported_graphics_clock>600 MHz</supported_graphics_clock>
+ <supported_graphics_clock>585 MHz</supported_graphics_clock>
+ <supported_graphics_clock>570 MHz</supported_graphics_clock>
+ <supported_graphics_clock>555 MHz</supported_graphics_clock>
+ <supported_graphics_clock>540 MHz</supported_graphics_clock>
+ <supported_graphics_clock>525 MHz</supported_graphics_clock>
+ <supported_graphics_clock>510 MHz</supported_graphics_clock>
+ <supported_graphics_clock>495 MHz</supported_graphics_clock>
+ <supported_graphics_clock>480 MHz</supported_graphics_clock>
+ <supported_graphics_clock>465 MHz</supported_graphics_clock>
+ <supported_graphics_clock>450 MHz</supported_graphics_clock>
+ <supported_graphics_clock>435 MHz</supported_graphics_clock>
+ <supported_graphics_clock>420 MHz</supported_graphics_clock>
+ <supported_graphics_clock>405 MHz</supported_graphics_clock>
+ <supported_graphics_clock>390 MHz</supported_graphics_clock>
+ <supported_graphics_clock>375 MHz</supported_graphics_clock>
+ <supported_graphics_clock>360 MHz</supported_graphics_clock>
+ <supported_graphics_clock>345 MHz</supported_graphics_clock>
+ <supported_graphics_clock>330 MHz</supported_graphics_clock>
+ <supported_graphics_clock>315 MHz</supported_graphics_clock>
+ <supported_graphics_clock>300 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ </supported_clocks>
+ <processes>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>7724</pid>
+ <type>C+G</type>
+ <process_name>C:\Program Files\WindowsApps\Microsoft.YourPhone_1.22062.543.0_x64__8wekyb3d8bbwe\PhoneExperienceHost.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>10808</pid>
+ <type>C+G</type>
+ <process_name></process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>11556</pid>
+ <type>C+G</type>
+ <process_name>C:\Windows\SystemApps\ShellExperienceHost_cw5n1h2txyewy\ShellExperienceHost.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>12452</pid>
+ <type>C+G</type>
+ <process_name>C:\Program Files\WindowsApps\Microsoft.SkypeApp_15.88.3401.0_x86__kzf8qxf38zg5c\Skype\Skype.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>12636</pid>
+ <type>C+G</type>
+ <process_name></process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>13120</pid>
+ <type>C+G</type>
+ <process_name></process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>14296</pid>
+ <type>C+G</type>
+ <process_name>C:\Windows\explorer.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>16508</pid>
+ <type>C+G</type>
+ <process_name>C:\Program Files\WindowsApps\Microsoft.549981C3F5F10_4.2204.13303.0_x64__8wekyb3d8bbwe\Cortana.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>16592</pid>
+ <type>C+G</type>
+ <process_name>C:\ProgramData\Logishrd\LogiOptions\Software\Current\LogiOptionsMgr.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>20920</pid>
+ <type>C+G</type>
+ <process_name>C:\Windows\SystemApps\Microsoft.LockApp_cw5n1h2txyewy\LockApp.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>21004</pid>
+ <type>C+G</type>
+ <process_name>C:\Program Files\WindowsApps\Microsoft.Windows.Photos_2022.31070.26005.0_x64__8wekyb3d8bbwe\Microsoft.Photos.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>21036</pid>
+ <type>C+G</type>
+ <process_name>C:\Program Files (x86)\Garmin\Express\CefSharp.BrowserSubprocess.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>21048</pid>
+ <type>C+G</type>
+ <process_name>C:\Program Files\WindowsApps\91750D7E.Slack_4.28.171.0_x64__8she8kybcnzg4\app\Slack.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>21104</pid>
+ <type>C+G</type>
+ <process_name>C:\Windows\SystemApps\MicrosoftWindows.Client.CBS_cw5n1h2txyewy\TextInputHost.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>21292</pid>
+ <type>C+G</type>
+ <process_name>C:\Program Files\WindowsApps\Microsoft.ZuneVideo_10.22041.10091.0_x64__8wekyb3d8bbwe\Video.UI.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>21472</pid>
+ <type>C+G</type>
+ <process_name>C:\Program Files (x86)\Google\Chrome\Application\chrome.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>21852</pid>
+ <type>C+G</type>
+ <process_name>C:\ProgramData\Logishrd\LogiOptions\Software\Current\LogiOverlay.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>22600</pid>
+ <type>C+G</type>
+ <process_name></process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>23652</pid>
+ <type>C+G</type>
+ <process_name>C:\Program Files\WindowsApps\microsoft.windowscommunicationsapps_16005.14326.20970.0_x64__8wekyb3d8bbwe\HxOutlook.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>25436</pid>
+ <type>C+G</type>
+ <process_name>C:\Windows\SystemApps\MicrosoftWindows.Client.CBS_cw5n1h2txyewy\SearchHost.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>25520</pid>
+ <type>C+G</type>
+ <process_name></process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>25696</pid>
+ <type>C+G</type>
+ <process_name>C:\Users\Vlad\AppData\Local\Viber\Viber.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>26972</pid>
+ <type>C+G</type>
+ <process_name>C:\Windows\SystemApps\Microsoft.Windows.StartMenuExperienceHost_cw5n1h2txyewy\StartMenuExperienceHost.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>27148</pid>
+ <type>C+G</type>
+ <process_name>C:\Program Files\WindowsApps\Microsoft.Office.OneNote_16001.14326.21090.0_x64__8wekyb3d8bbwe\onenoteim.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>27628</pid>
+ <type>C+G</type>
+ <process_name>C:\Program Files\WindowsApps\49297T.Partl.ClockOut_2.9.9.0_x64__jr9bq2af9farr\WorkingHours.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>30212</pid>
+ <type>C+G</type>
+ <process_name>C:\Program Files (x86)\Microsoft\EdgeWebView\Application\105.0.1343.42\msedgewebview2.exe</process_name>
+ <used_memory>N/A</used_memory>
+ </process_info>
+ </processes>
+ <accounted_processes>
+ </accounted_processes>
+ </gpu>
+
+</nvidia_smi_log> \ No newline at end of file
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/rtx-3060.xml b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/rtx-3060.xml
new file mode 100644
index 000000000..ad63fd51b
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/rtx-3060.xml
@@ -0,0 +1,917 @@
+<?xml version="1.0" ?>
+<!DOCTYPE nvidia_smi_log SYSTEM "nvsmi_device_v11.dtd">
+<nvidia_smi_log>
+ <timestamp>Tue Sep 20 15:21:01 2022</timestamp>
+ <driver_version>515.65.01</driver_version>
+ <cuda_version>11.7</cuda_version>
+ <attached_gpus>1</attached_gpus>
+ <gpu id="00000000:01:00.0">
+ <product_name>NVIDIA GeForce RTX 3060 Laptop GPU</product_name>
+ <product_brand>GeForce</product_brand>
+ <product_architecture>Ampere</product_architecture>
+ <display_mode>Disabled</display_mode>
+ <display_active>Disabled</display_active>
+ <persistence_mode>Disabled</persistence_mode>
+ <mig_mode>
+ <current_mig>N/A</current_mig>
+ <pending_mig>N/A</pending_mig>
+ </mig_mode>
+ <mig_devices>
+ None
+ </mig_devices>
+ <accounting_mode>Disabled</accounting_mode>
+ <accounting_mode_buffer_size>4000</accounting_mode_buffer_size>
+ <driver_model>
+ <current_dm>N/A</current_dm>
+ <pending_dm>N/A</pending_dm>
+ </driver_model>
+ <serial>N/A</serial>
+ <uuid>GPU-473d8d0f-d462-185c-6b36-6fc23e23e571</uuid>
+ <minor_number>0</minor_number>
+ <vbios_version>94.06.19.00.51</vbios_version>
+ <multigpu_board>No</multigpu_board>
+ <board_id>0x100</board_id>
+ <gpu_part_number>N/A</gpu_part_number>
+ <gpu_module_id>0</gpu_module_id>
+ <inforom_version>
+ <img_version>G001.0000.03.03</img_version>
+ <oem_object>2.0</oem_object>
+ <ecc_object>N/A</ecc_object>
+ <pwr_object>N/A</pwr_object>
+ </inforom_version>
+ <gpu_operation_mode>
+ <current_gom>N/A</current_gom>
+ <pending_gom>N/A</pending_gom>
+ </gpu_operation_mode>
+ <gsp_firmware_version>N/A</gsp_firmware_version>
+ <gpu_virtualization_mode>
+ <virtualization_mode>None</virtualization_mode>
+ <host_vgpu_mode>N/A</host_vgpu_mode>
+ </gpu_virtualization_mode>
+ <ibmnpu>
+ <relaxed_ordering_mode>N/A</relaxed_ordering_mode>
+ </ibmnpu>
+ <pci>
+ <pci_bus>01</pci_bus>
+ <pci_device>00</pci_device>
+ <pci_domain>0000</pci_domain>
+ <pci_device_id>252010DE</pci_device_id>
+ <pci_bus_id>00000000:01:00.0</pci_bus_id>
+ <pci_sub_system_id>0A831028</pci_sub_system_id>
+ <pci_gpu_link_info>
+ <pcie_gen>
+ <max_link_gen>4</max_link_gen>
+ <current_link_gen>1</current_link_gen>
+ </pcie_gen>
+ <link_widths>
+ <max_link_width>16x</max_link_width>
+ <current_link_width>8x</current_link_width>
+ </link_widths>
+ </pci_gpu_link_info>
+ <pci_bridge_chip>
+ <bridge_chip_type>N/A</bridge_chip_type>
+ <bridge_chip_fw>N/A</bridge_chip_fw>
+ </pci_bridge_chip>
+ <replay_counter>0</replay_counter>
+ <replay_rollover_counter>0</replay_rollover_counter>
+ <tx_util>0 KB/s</tx_util>
+ <rx_util>0 KB/s</rx_util>
+ </pci>
+ <fan_speed>N/A</fan_speed>
+ <performance_state>P8</performance_state>
+ <clocks_throttle_reasons>
+ <clocks_throttle_reason_gpu_idle>Active</clocks_throttle_reason_gpu_idle>
+ <clocks_throttle_reason_applications_clocks_setting>Not Active</clocks_throttle_reason_applications_clocks_setting>
+ <clocks_throttle_reason_sw_power_cap>Not Active</clocks_throttle_reason_sw_power_cap>
+ <clocks_throttle_reason_hw_slowdown>Not Active</clocks_throttle_reason_hw_slowdown>
+ <clocks_throttle_reason_hw_thermal_slowdown>Not Active</clocks_throttle_reason_hw_thermal_slowdown>
+ <clocks_throttle_reason_hw_power_brake_slowdown>Not Active</clocks_throttle_reason_hw_power_brake_slowdown>
+ <clocks_throttle_reason_sync_boost>Not Active</clocks_throttle_reason_sync_boost>
+ <clocks_throttle_reason_sw_thermal_slowdown>Not Active</clocks_throttle_reason_sw_thermal_slowdown>
+ <clocks_throttle_reason_display_clocks_setting>Not Active</clocks_throttle_reason_display_clocks_setting>
+ </clocks_throttle_reasons>
+ <fb_memory_usage>
+ <total>6144 MiB</total>
+ <reserved>197 MiB</reserved>
+ <used>5 MiB</used>
+ <free>5940 MiB</free>
+ </fb_memory_usage>
+ <bar1_memory_usage>
+ <total>8192 MiB</total>
+ <used>3 MiB</used>
+ <free>8189 MiB</free>
+ </bar1_memory_usage>
+ <compute_mode>Default</compute_mode>
+ <utilization>
+ <gpu_util>0 %</gpu_util>
+ <memory_util>0 %</memory_util>
+ <encoder_util>0 %</encoder_util>
+ <decoder_util>0 %</decoder_util>
+ </utilization>
+ <encoder_stats>
+ <session_count>0</session_count>
+ <average_fps>0</average_fps>
+ <average_latency>0</average_latency>
+ </encoder_stats>
+ <fbc_stats>
+ <session_count>0</session_count>
+ <average_fps>0</average_fps>
+ <average_latency>0</average_latency>
+ </fbc_stats>
+ <ecc_mode>
+ <current_ecc>N/A</current_ecc>
+ <pending_ecc>N/A</pending_ecc>
+ </ecc_mode>
+ <ecc_errors>
+ <volatile>
+ <sram_correctable>N/A</sram_correctable>
+ <sram_uncorrectable>N/A</sram_uncorrectable>
+ <dram_correctable>N/A</dram_correctable>
+ <dram_uncorrectable>N/A</dram_uncorrectable>
+ </volatile>
+ <aggregate>
+ <sram_correctable>N/A</sram_correctable>
+ <sram_uncorrectable>N/A</sram_uncorrectable>
+ <dram_correctable>N/A</dram_correctable>
+ <dram_uncorrectable>N/A</dram_uncorrectable>
+ </aggregate>
+ </ecc_errors>
+ <retired_pages>
+ <multiple_single_bit_retirement>
+ <retired_count>N/A</retired_count>
+ <retired_pagelist>N/A</retired_pagelist>
+ </multiple_single_bit_retirement>
+ <double_bit_retirement>
+ <retired_count>N/A</retired_count>
+ <retired_pagelist>N/A</retired_pagelist>
+ </double_bit_retirement>
+ <pending_blacklist>N/A</pending_blacklist>
+ <pending_retirement>N/A</pending_retirement>
+ </retired_pages>
+ <remapped_rows>N/A</remapped_rows>
+ <temperature>
+ <gpu_temp>45 C</gpu_temp>
+ <gpu_temp_max_threshold>105 C</gpu_temp_max_threshold>
+ <gpu_temp_slow_threshold>102 C</gpu_temp_slow_threshold>
+ <gpu_temp_max_gpu_threshold>75 C</gpu_temp_max_gpu_threshold>
+ <gpu_target_temperature>N/A</gpu_target_temperature>
+ <memory_temp>N/A</memory_temp>
+ <gpu_temp_max_mem_threshold>N/A</gpu_temp_max_mem_threshold>
+ </temperature>
+ <supported_gpu_target_temp>
+ <gpu_target_temp_min>N/A</gpu_target_temp_min>
+ <gpu_target_temp_max>N/A</gpu_target_temp_max>
+ </supported_gpu_target_temp>
+ <power_readings>
+ <power_state>P8</power_state>
+ <power_management>N/A</power_management>
+ <power_draw>8.70 W</power_draw>
+ <power_limit>N/A</power_limit>
+ <default_power_limit>N/A</default_power_limit>
+ <enforced_power_limit>N/A</enforced_power_limit>
+ <min_power_limit>N/A</min_power_limit>
+ <max_power_limit>N/A</max_power_limit>
+ </power_readings>
+ <clocks>
+ <graphics_clock>210 MHz</graphics_clock>
+ <sm_clock>210 MHz</sm_clock>
+ <mem_clock>405 MHz</mem_clock>
+ <video_clock>555 MHz</video_clock>
+ </clocks>
+ <applications_clocks>
+ <graphics_clock>N/A</graphics_clock>
+ <mem_clock>N/A</mem_clock>
+ </applications_clocks>
+ <default_applications_clocks>
+ <graphics_clock>N/A</graphics_clock>
+ <mem_clock>N/A</mem_clock>
+ </default_applications_clocks>
+ <max_clocks>
+ <graphics_clock>2100 MHz</graphics_clock>
+ <sm_clock>2100 MHz</sm_clock>
+ <mem_clock>6001 MHz</mem_clock>
+ <video_clock>1950 MHz</video_clock>
+ </max_clocks>
+ <max_customer_boost_clocks>
+ <graphics_clock>N/A</graphics_clock>
+ </max_customer_boost_clocks>
+ <clock_policy>
+ <auto_boost>N/A</auto_boost>
+ <auto_boost_default>N/A</auto_boost_default>
+ </clock_policy>
+ <voltage>
+ <graphics_volt>631.250 mV</graphics_volt>
+ </voltage>
+ <supported_clocks>
+ <supported_mem_clock>
+ <value>6001 MHz</value>
+ <supported_graphics_clock>2100 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2092 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2085 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2077 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2070 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2062 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2055 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2047 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2040 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2032 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2025 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2017 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2010 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2002 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1995 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1987 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1980 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1972 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1965 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1957 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1950 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1942 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1935 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1927 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1920 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1912 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1905 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1897 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1890 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1882 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1875 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1867 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1860 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1852 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1845 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1837 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1830 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1822 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1815 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1807 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1800 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1792 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1785 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1777 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1770 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1762 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1755 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1747 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1740 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1732 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1725 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1717 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1710 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1702 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1695 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1687 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1680 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1672 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1665 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1657 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1650 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1642 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1635 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1627 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1620 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1612 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1605 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1597 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1590 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1582 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1575 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1567 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1560 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1552 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1545 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1537 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1530 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1522 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1515 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1507 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1500 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1492 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1485 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1477 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1470 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1462 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1455 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1447 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1440 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1432 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1425 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1417 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1410 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1402 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1395 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1387 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1380 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1372 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1365 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1357 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1350 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1342 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1335 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1327 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1320 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1312 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1305 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1297 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1290 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1282 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1275 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1267 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1260 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1252 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1245 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1237 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1230 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1222 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1215 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1207 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1200 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1192 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1185 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1177 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1170 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1162 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1155 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1147 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1140 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1132 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1125 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1117 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1110 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1102 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1095 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1087 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1080 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1072 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1065 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1057 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1050 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1042 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1035 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1027 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1020 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1012 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1005 MHz</supported_graphics_clock>
+ <supported_graphics_clock>997 MHz</supported_graphics_clock>
+ <supported_graphics_clock>990 MHz</supported_graphics_clock>
+ <supported_graphics_clock>982 MHz</supported_graphics_clock>
+ <supported_graphics_clock>975 MHz</supported_graphics_clock>
+ <supported_graphics_clock>967 MHz</supported_graphics_clock>
+ <supported_graphics_clock>960 MHz</supported_graphics_clock>
+ <supported_graphics_clock>952 MHz</supported_graphics_clock>
+ <supported_graphics_clock>945 MHz</supported_graphics_clock>
+ <supported_graphics_clock>937 MHz</supported_graphics_clock>
+ <supported_graphics_clock>930 MHz</supported_graphics_clock>
+ <supported_graphics_clock>922 MHz</supported_graphics_clock>
+ <supported_graphics_clock>915 MHz</supported_graphics_clock>
+ <supported_graphics_clock>907 MHz</supported_graphics_clock>
+ <supported_graphics_clock>900 MHz</supported_graphics_clock>
+ <supported_graphics_clock>892 MHz</supported_graphics_clock>
+ <supported_graphics_clock>885 MHz</supported_graphics_clock>
+ <supported_graphics_clock>877 MHz</supported_graphics_clock>
+ <supported_graphics_clock>870 MHz</supported_graphics_clock>
+ <supported_graphics_clock>862 MHz</supported_graphics_clock>
+ <supported_graphics_clock>855 MHz</supported_graphics_clock>
+ <supported_graphics_clock>847 MHz</supported_graphics_clock>
+ <supported_graphics_clock>840 MHz</supported_graphics_clock>
+ <supported_graphics_clock>832 MHz</supported_graphics_clock>
+ <supported_graphics_clock>825 MHz</supported_graphics_clock>
+ <supported_graphics_clock>817 MHz</supported_graphics_clock>
+ <supported_graphics_clock>810 MHz</supported_graphics_clock>
+ <supported_graphics_clock>802 MHz</supported_graphics_clock>
+ <supported_graphics_clock>795 MHz</supported_graphics_clock>
+ <supported_graphics_clock>787 MHz</supported_graphics_clock>
+ <supported_graphics_clock>780 MHz</supported_graphics_clock>
+ <supported_graphics_clock>772 MHz</supported_graphics_clock>
+ <supported_graphics_clock>765 MHz</supported_graphics_clock>
+ <supported_graphics_clock>757 MHz</supported_graphics_clock>
+ <supported_graphics_clock>750 MHz</supported_graphics_clock>
+ <supported_graphics_clock>742 MHz</supported_graphics_clock>
+ <supported_graphics_clock>735 MHz</supported_graphics_clock>
+ <supported_graphics_clock>727 MHz</supported_graphics_clock>
+ <supported_graphics_clock>720 MHz</supported_graphics_clock>
+ <supported_graphics_clock>712 MHz</supported_graphics_clock>
+ <supported_graphics_clock>705 MHz</supported_graphics_clock>
+ <supported_graphics_clock>697 MHz</supported_graphics_clock>
+ <supported_graphics_clock>690 MHz</supported_graphics_clock>
+ <supported_graphics_clock>682 MHz</supported_graphics_clock>
+ <supported_graphics_clock>675 MHz</supported_graphics_clock>
+ <supported_graphics_clock>667 MHz</supported_graphics_clock>
+ <supported_graphics_clock>660 MHz</supported_graphics_clock>
+ <supported_graphics_clock>652 MHz</supported_graphics_clock>
+ <supported_graphics_clock>645 MHz</supported_graphics_clock>
+ <supported_graphics_clock>637 MHz</supported_graphics_clock>
+ <supported_graphics_clock>630 MHz</supported_graphics_clock>
+ <supported_graphics_clock>622 MHz</supported_graphics_clock>
+ <supported_graphics_clock>615 MHz</supported_graphics_clock>
+ <supported_graphics_clock>607 MHz</supported_graphics_clock>
+ <supported_graphics_clock>600 MHz</supported_graphics_clock>
+ <supported_graphics_clock>592 MHz</supported_graphics_clock>
+ <supported_graphics_clock>585 MHz</supported_graphics_clock>
+ <supported_graphics_clock>577 MHz</supported_graphics_clock>
+ <supported_graphics_clock>570 MHz</supported_graphics_clock>
+ <supported_graphics_clock>562 MHz</supported_graphics_clock>
+ <supported_graphics_clock>555 MHz</supported_graphics_clock>
+ <supported_graphics_clock>547 MHz</supported_graphics_clock>
+ <supported_graphics_clock>540 MHz</supported_graphics_clock>
+ <supported_graphics_clock>532 MHz</supported_graphics_clock>
+ <supported_graphics_clock>525 MHz</supported_graphics_clock>
+ <supported_graphics_clock>517 MHz</supported_graphics_clock>
+ <supported_graphics_clock>510 MHz</supported_graphics_clock>
+ <supported_graphics_clock>502 MHz</supported_graphics_clock>
+ <supported_graphics_clock>495 MHz</supported_graphics_clock>
+ <supported_graphics_clock>487 MHz</supported_graphics_clock>
+ <supported_graphics_clock>480 MHz</supported_graphics_clock>
+ <supported_graphics_clock>472 MHz</supported_graphics_clock>
+ <supported_graphics_clock>465 MHz</supported_graphics_clock>
+ <supported_graphics_clock>457 MHz</supported_graphics_clock>
+ <supported_graphics_clock>450 MHz</supported_graphics_clock>
+ <supported_graphics_clock>442 MHz</supported_graphics_clock>
+ <supported_graphics_clock>435 MHz</supported_graphics_clock>
+ <supported_graphics_clock>427 MHz</supported_graphics_clock>
+ <supported_graphics_clock>420 MHz</supported_graphics_clock>
+ <supported_graphics_clock>412 MHz</supported_graphics_clock>
+ <supported_graphics_clock>405 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ <supported_mem_clock>
+ <value>5501 MHz</value>
+ <supported_graphics_clock>2100 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2092 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2085 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2077 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2070 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2062 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2055 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2047 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2040 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2032 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2025 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2017 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2010 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2002 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1995 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1987 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1980 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1972 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1965 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1957 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1950 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1942 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1935 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1927 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1920 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1912 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1905 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1897 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1890 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1882 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1875 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1867 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1860 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1852 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1845 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1837 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1830 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1822 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1815 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1807 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1800 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1792 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1785 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1777 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1770 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1762 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1755 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1747 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1740 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1732 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1725 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1717 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1710 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1702 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1695 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1687 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1680 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1672 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1665 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1657 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1650 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1642 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1635 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1627 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1620 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1612 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1605 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1597 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1590 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1582 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1575 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1567 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1560 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1552 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1545 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1537 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1530 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1522 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1515 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1507 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1500 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1492 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1485 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1477 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1470 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1462 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1455 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1447 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1440 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1432 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1425 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1417 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1410 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1402 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1395 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1387 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1380 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1372 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1365 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1357 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1350 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1342 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1335 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1327 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1320 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1312 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1305 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1297 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1290 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1282 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1275 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1267 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1260 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1252 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1245 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1237 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1230 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1222 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1215 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1207 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1200 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1192 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1185 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1177 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1170 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1162 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1155 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1147 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1140 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1132 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1125 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1117 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1110 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1102 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1095 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1087 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1080 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1072 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1065 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1057 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1050 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1042 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1035 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1027 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1020 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1012 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1005 MHz</supported_graphics_clock>
+ <supported_graphics_clock>997 MHz</supported_graphics_clock>
+ <supported_graphics_clock>990 MHz</supported_graphics_clock>
+ <supported_graphics_clock>982 MHz</supported_graphics_clock>
+ <supported_graphics_clock>975 MHz</supported_graphics_clock>
+ <supported_graphics_clock>967 MHz</supported_graphics_clock>
+ <supported_graphics_clock>960 MHz</supported_graphics_clock>
+ <supported_graphics_clock>952 MHz</supported_graphics_clock>
+ <supported_graphics_clock>945 MHz</supported_graphics_clock>
+ <supported_graphics_clock>937 MHz</supported_graphics_clock>
+ <supported_graphics_clock>930 MHz</supported_graphics_clock>
+ <supported_graphics_clock>922 MHz</supported_graphics_clock>
+ <supported_graphics_clock>915 MHz</supported_graphics_clock>
+ <supported_graphics_clock>907 MHz</supported_graphics_clock>
+ <supported_graphics_clock>900 MHz</supported_graphics_clock>
+ <supported_graphics_clock>892 MHz</supported_graphics_clock>
+ <supported_graphics_clock>885 MHz</supported_graphics_clock>
+ <supported_graphics_clock>877 MHz</supported_graphics_clock>
+ <supported_graphics_clock>870 MHz</supported_graphics_clock>
+ <supported_graphics_clock>862 MHz</supported_graphics_clock>
+ <supported_graphics_clock>855 MHz</supported_graphics_clock>
+ <supported_graphics_clock>847 MHz</supported_graphics_clock>
+ <supported_graphics_clock>840 MHz</supported_graphics_clock>
+ <supported_graphics_clock>832 MHz</supported_graphics_clock>
+ <supported_graphics_clock>825 MHz</supported_graphics_clock>
+ <supported_graphics_clock>817 MHz</supported_graphics_clock>
+ <supported_graphics_clock>810 MHz</supported_graphics_clock>
+ <supported_graphics_clock>802 MHz</supported_graphics_clock>
+ <supported_graphics_clock>795 MHz</supported_graphics_clock>
+ <supported_graphics_clock>787 MHz</supported_graphics_clock>
+ <supported_graphics_clock>780 MHz</supported_graphics_clock>
+ <supported_graphics_clock>772 MHz</supported_graphics_clock>
+ <supported_graphics_clock>765 MHz</supported_graphics_clock>
+ <supported_graphics_clock>757 MHz</supported_graphics_clock>
+ <supported_graphics_clock>750 MHz</supported_graphics_clock>
+ <supported_graphics_clock>742 MHz</supported_graphics_clock>
+ <supported_graphics_clock>735 MHz</supported_graphics_clock>
+ <supported_graphics_clock>727 MHz</supported_graphics_clock>
+ <supported_graphics_clock>720 MHz</supported_graphics_clock>
+ <supported_graphics_clock>712 MHz</supported_graphics_clock>
+ <supported_graphics_clock>705 MHz</supported_graphics_clock>
+ <supported_graphics_clock>697 MHz</supported_graphics_clock>
+ <supported_graphics_clock>690 MHz</supported_graphics_clock>
+ <supported_graphics_clock>682 MHz</supported_graphics_clock>
+ <supported_graphics_clock>675 MHz</supported_graphics_clock>
+ <supported_graphics_clock>667 MHz</supported_graphics_clock>
+ <supported_graphics_clock>660 MHz</supported_graphics_clock>
+ <supported_graphics_clock>652 MHz</supported_graphics_clock>
+ <supported_graphics_clock>645 MHz</supported_graphics_clock>
+ <supported_graphics_clock>637 MHz</supported_graphics_clock>
+ <supported_graphics_clock>630 MHz</supported_graphics_clock>
+ <supported_graphics_clock>622 MHz</supported_graphics_clock>
+ <supported_graphics_clock>615 MHz</supported_graphics_clock>
+ <supported_graphics_clock>607 MHz</supported_graphics_clock>
+ <supported_graphics_clock>600 MHz</supported_graphics_clock>
+ <supported_graphics_clock>592 MHz</supported_graphics_clock>
+ <supported_graphics_clock>585 MHz</supported_graphics_clock>
+ <supported_graphics_clock>577 MHz</supported_graphics_clock>
+ <supported_graphics_clock>570 MHz</supported_graphics_clock>
+ <supported_graphics_clock>562 MHz</supported_graphics_clock>
+ <supported_graphics_clock>555 MHz</supported_graphics_clock>
+ <supported_graphics_clock>547 MHz</supported_graphics_clock>
+ <supported_graphics_clock>540 MHz</supported_graphics_clock>
+ <supported_graphics_clock>532 MHz</supported_graphics_clock>
+ <supported_graphics_clock>525 MHz</supported_graphics_clock>
+ <supported_graphics_clock>517 MHz</supported_graphics_clock>
+ <supported_graphics_clock>510 MHz</supported_graphics_clock>
+ <supported_graphics_clock>502 MHz</supported_graphics_clock>
+ <supported_graphics_clock>495 MHz</supported_graphics_clock>
+ <supported_graphics_clock>487 MHz</supported_graphics_clock>
+ <supported_graphics_clock>480 MHz</supported_graphics_clock>
+ <supported_graphics_clock>472 MHz</supported_graphics_clock>
+ <supported_graphics_clock>465 MHz</supported_graphics_clock>
+ <supported_graphics_clock>457 MHz</supported_graphics_clock>
+ <supported_graphics_clock>450 MHz</supported_graphics_clock>
+ <supported_graphics_clock>442 MHz</supported_graphics_clock>
+ <supported_graphics_clock>435 MHz</supported_graphics_clock>
+ <supported_graphics_clock>427 MHz</supported_graphics_clock>
+ <supported_graphics_clock>420 MHz</supported_graphics_clock>
+ <supported_graphics_clock>412 MHz</supported_graphics_clock>
+ <supported_graphics_clock>405 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ <supported_mem_clock>
+ <value>810 MHz</value>
+ <supported_graphics_clock>2100 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2092 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2085 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2077 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2070 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2062 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2055 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2047 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2040 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2032 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2025 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2017 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2010 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2002 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1995 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1987 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1980 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1972 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1965 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1957 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1950 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1942 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1935 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1927 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1920 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1912 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1905 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1897 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1890 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1882 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1875 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1867 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1860 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1852 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1845 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1837 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1830 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1822 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1815 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1807 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1800 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1792 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1785 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1777 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1770 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1762 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1755 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1747 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1740 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1732 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1725 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1717 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1710 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1702 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1695 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1687 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1680 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1672 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1665 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1657 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1650 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1642 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1635 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1627 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1620 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1612 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1605 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1597 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1590 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1582 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1575 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1567 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1560 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1552 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1545 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1537 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1530 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1522 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1515 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1507 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1500 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1492 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1485 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1477 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1470 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1462 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1455 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1447 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1440 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1432 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1425 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1417 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1410 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1402 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1395 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1387 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1380 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1372 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1365 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1357 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1350 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1342 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1335 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1327 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1320 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1312 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1305 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1297 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1290 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1282 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1275 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1267 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1260 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1252 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1245 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1237 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1230 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1222 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1215 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1207 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1200 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1192 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1185 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1177 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1170 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1162 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1155 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1147 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1140 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1132 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1125 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1117 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1110 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1102 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1095 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1087 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1080 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1072 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1065 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1057 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1050 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1042 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1035 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1027 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1020 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1012 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1005 MHz</supported_graphics_clock>
+ <supported_graphics_clock>997 MHz</supported_graphics_clock>
+ <supported_graphics_clock>990 MHz</supported_graphics_clock>
+ <supported_graphics_clock>982 MHz</supported_graphics_clock>
+ <supported_graphics_clock>975 MHz</supported_graphics_clock>
+ <supported_graphics_clock>967 MHz</supported_graphics_clock>
+ <supported_graphics_clock>960 MHz</supported_graphics_clock>
+ <supported_graphics_clock>952 MHz</supported_graphics_clock>
+ <supported_graphics_clock>945 MHz</supported_graphics_clock>
+ <supported_graphics_clock>937 MHz</supported_graphics_clock>
+ <supported_graphics_clock>930 MHz</supported_graphics_clock>
+ <supported_graphics_clock>922 MHz</supported_graphics_clock>
+ <supported_graphics_clock>915 MHz</supported_graphics_clock>
+ <supported_graphics_clock>907 MHz</supported_graphics_clock>
+ <supported_graphics_clock>900 MHz</supported_graphics_clock>
+ <supported_graphics_clock>892 MHz</supported_graphics_clock>
+ <supported_graphics_clock>885 MHz</supported_graphics_clock>
+ <supported_graphics_clock>877 MHz</supported_graphics_clock>
+ <supported_graphics_clock>870 MHz</supported_graphics_clock>
+ <supported_graphics_clock>862 MHz</supported_graphics_clock>
+ <supported_graphics_clock>855 MHz</supported_graphics_clock>
+ <supported_graphics_clock>847 MHz</supported_graphics_clock>
+ <supported_graphics_clock>840 MHz</supported_graphics_clock>
+ <supported_graphics_clock>832 MHz</supported_graphics_clock>
+ <supported_graphics_clock>825 MHz</supported_graphics_clock>
+ <supported_graphics_clock>817 MHz</supported_graphics_clock>
+ <supported_graphics_clock>810 MHz</supported_graphics_clock>
+ <supported_graphics_clock>802 MHz</supported_graphics_clock>
+ <supported_graphics_clock>795 MHz</supported_graphics_clock>
+ <supported_graphics_clock>787 MHz</supported_graphics_clock>
+ <supported_graphics_clock>780 MHz</supported_graphics_clock>
+ <supported_graphics_clock>772 MHz</supported_graphics_clock>
+ <supported_graphics_clock>765 MHz</supported_graphics_clock>
+ <supported_graphics_clock>757 MHz</supported_graphics_clock>
+ <supported_graphics_clock>750 MHz</supported_graphics_clock>
+ <supported_graphics_clock>742 MHz</supported_graphics_clock>
+ <supported_graphics_clock>735 MHz</supported_graphics_clock>
+ <supported_graphics_clock>727 MHz</supported_graphics_clock>
+ <supported_graphics_clock>720 MHz</supported_graphics_clock>
+ <supported_graphics_clock>712 MHz</supported_graphics_clock>
+ <supported_graphics_clock>705 MHz</supported_graphics_clock>
+ <supported_graphics_clock>697 MHz</supported_graphics_clock>
+ <supported_graphics_clock>690 MHz</supported_graphics_clock>
+ <supported_graphics_clock>682 MHz</supported_graphics_clock>
+ <supported_graphics_clock>675 MHz</supported_graphics_clock>
+ <supported_graphics_clock>667 MHz</supported_graphics_clock>
+ <supported_graphics_clock>660 MHz</supported_graphics_clock>
+ <supported_graphics_clock>652 MHz</supported_graphics_clock>
+ <supported_graphics_clock>645 MHz</supported_graphics_clock>
+ <supported_graphics_clock>637 MHz</supported_graphics_clock>
+ <supported_graphics_clock>630 MHz</supported_graphics_clock>
+ <supported_graphics_clock>622 MHz</supported_graphics_clock>
+ <supported_graphics_clock>615 MHz</supported_graphics_clock>
+ <supported_graphics_clock>607 MHz</supported_graphics_clock>
+ <supported_graphics_clock>600 MHz</supported_graphics_clock>
+ <supported_graphics_clock>592 MHz</supported_graphics_clock>
+ <supported_graphics_clock>585 MHz</supported_graphics_clock>
+ <supported_graphics_clock>577 MHz</supported_graphics_clock>
+ <supported_graphics_clock>570 MHz</supported_graphics_clock>
+ <supported_graphics_clock>562 MHz</supported_graphics_clock>
+ <supported_graphics_clock>555 MHz</supported_graphics_clock>
+ <supported_graphics_clock>547 MHz</supported_graphics_clock>
+ <supported_graphics_clock>540 MHz</supported_graphics_clock>
+ <supported_graphics_clock>532 MHz</supported_graphics_clock>
+ <supported_graphics_clock>525 MHz</supported_graphics_clock>
+ <supported_graphics_clock>517 MHz</supported_graphics_clock>
+ <supported_graphics_clock>510 MHz</supported_graphics_clock>
+ <supported_graphics_clock>502 MHz</supported_graphics_clock>
+ <supported_graphics_clock>495 MHz</supported_graphics_clock>
+ <supported_graphics_clock>487 MHz</supported_graphics_clock>
+ <supported_graphics_clock>480 MHz</supported_graphics_clock>
+ <supported_graphics_clock>472 MHz</supported_graphics_clock>
+ <supported_graphics_clock>465 MHz</supported_graphics_clock>
+ <supported_graphics_clock>457 MHz</supported_graphics_clock>
+ <supported_graphics_clock>450 MHz</supported_graphics_clock>
+ <supported_graphics_clock>442 MHz</supported_graphics_clock>
+ <supported_graphics_clock>435 MHz</supported_graphics_clock>
+ <supported_graphics_clock>427 MHz</supported_graphics_clock>
+ <supported_graphics_clock>420 MHz</supported_graphics_clock>
+ <supported_graphics_clock>412 MHz</supported_graphics_clock>
+ <supported_graphics_clock>405 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ <supported_mem_clock>
+ <value>405 MHz</value>
+ <supported_graphics_clock>420 MHz</supported_graphics_clock>
+ <supported_graphics_clock>412 MHz</supported_graphics_clock>
+ <supported_graphics_clock>405 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ </supported_clocks>
+ <processes>
+ <process_info>
+ <gpu_instance_id>N/A</gpu_instance_id>
+ <compute_instance_id>N/A</compute_instance_id>
+ <pid>28543</pid>
+ <type>G</type>
+ <process_name>/usr/libexec/Xorg</process_name>
+ <used_memory>4 MiB</used_memory>
+ </process_info>
+ </processes>
+ <accounted_processes>
+ </accounted_processes>
+ </gpu>
+
+</nvidia_smi_log>
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/rtx-4090-driver-535.xml b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/rtx-4090-driver-535.xml
new file mode 100644
index 000000000..c3c253ffa
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/rtx-4090-driver-535.xml
@@ -0,0 +1,1082 @@
+<?xml version="1.0" ?>
+<!DOCTYPE nvidia_smi_log SYSTEM "nvsmi_device_v12.dtd">
+<nvidia_smi_log>
+ <timestamp>Mon Aug 7 11:10:06 2023</timestamp>
+ <driver_version>535.86.05</driver_version>
+ <cuda_version>12.2</cuda_version>
+ <attached_gpus>1</attached_gpus>
+ <gpu id="00000000:84:00.0">
+ <product_name>NVIDIA GeForce RTX 4090</product_name>
+ <product_brand>GeForce</product_brand>
+ <product_architecture>Ada Lovelace</product_architecture>
+ <display_mode>Disabled</display_mode>
+ <display_active>Disabled</display_active>
+ <persistence_mode>Enabled</persistence_mode>
+ <addressing_mode>None</addressing_mode>
+ <mig_mode>
+ <current_mig>N/A</current_mig>
+ <pending_mig>N/A</pending_mig>
+ </mig_mode>
+ <mig_devices>
+ None
+ </mig_devices>
+ <accounting_mode>Disabled</accounting_mode>
+ <accounting_mode_buffer_size>4000</accounting_mode_buffer_size>
+ <driver_model>
+ <current_dm>N/A</current_dm>
+ <pending_dm>N/A</pending_dm>
+ </driver_model>
+ <serial>N/A</serial>
+ <uuid>GPU-71d1acc2-662d-2166-bf9f-65272d2fc437</uuid>
+ <minor_number>0</minor_number>
+ <vbios_version>95.02.18.80.5F</vbios_version>
+ <multigpu_board>No</multigpu_board>
+ <board_id>0x8400</board_id>
+ <board_part_number>N/A</board_part_number>
+ <gpu_part_number>2684-300-A1</gpu_part_number>
+ <gpu_fru_part_number>N/A</gpu_fru_part_number>
+ <gpu_module_id>1</gpu_module_id>
+ <inforom_version>
+ <img_version>G002.0000.00.03</img_version>
+ <oem_object>2.0</oem_object>
+ <ecc_object>6.16</ecc_object>
+ <pwr_object>N/A</pwr_object>
+ </inforom_version>
+ <gpu_operation_mode>
+ <current_gom>N/A</current_gom>
+ <pending_gom>N/A</pending_gom>
+ </gpu_operation_mode>
+ <gsp_firmware_version>N/A</gsp_firmware_version>
+ <gpu_virtualization_mode>
+ <virtualization_mode>None</virtualization_mode>
+ <host_vgpu_mode>N/A</host_vgpu_mode>
+ </gpu_virtualization_mode>
+ <gpu_reset_status>
+ <reset_required>No</reset_required>
+ <drain_and_reset_recommended>N/A</drain_and_reset_recommended>
+ </gpu_reset_status>
+ <ibmnpu>
+ <relaxed_ordering_mode>N/A</relaxed_ordering_mode>
+ </ibmnpu>
+ <pci>
+ <pci_bus>84</pci_bus>
+ <pci_device>00</pci_device>
+ <pci_domain>0000</pci_domain>
+ <pci_device_id>268410DE</pci_device_id>
+ <pci_bus_id>00000000:84:00.0</pci_bus_id>
+ <pci_sub_system_id>40BF1458</pci_sub_system_id>
+ <pci_gpu_link_info>
+ <pcie_gen>
+ <max_link_gen>3</max_link_gen>
+ <current_link_gen>1</current_link_gen>
+ <device_current_link_gen>1</device_current_link_gen>
+ <max_device_link_gen>4</max_device_link_gen>
+ <max_host_link_gen>3</max_host_link_gen>
+ </pcie_gen>
+ <link_widths>
+ <max_link_width>16x</max_link_width>
+ <current_link_width>16x</current_link_width>
+ </link_widths>
+ </pci_gpu_link_info>
+ <pci_bridge_chip>
+ <bridge_chip_type>N/A</bridge_chip_type>
+ <bridge_chip_fw>N/A</bridge_chip_fw>
+ </pci_bridge_chip>
+ <replay_counter>0</replay_counter>
+ <replay_rollover_counter>0</replay_rollover_counter>
+ <tx_util>0 KB/s</tx_util>
+ <rx_util>0 KB/s</rx_util>
+ <atomic_caps_inbound>N/A</atomic_caps_inbound>
+ <atomic_caps_outbound>N/A</atomic_caps_outbound>
+ </pci>
+ <fan_speed>0 %</fan_speed>
+ <performance_state>P8</performance_state>
+ <clocks_event_reasons>
+ <clocks_event_reason_gpu_idle>Active</clocks_event_reason_gpu_idle>
+ <clocks_event_reason_applications_clocks_setting>Not Active
+ </clocks_event_reason_applications_clocks_setting>
+ <clocks_event_reason_sw_power_cap>Not Active</clocks_event_reason_sw_power_cap>
+ <clocks_event_reason_hw_slowdown>Not Active</clocks_event_reason_hw_slowdown>
+ <clocks_event_reason_hw_thermal_slowdown>Not Active</clocks_event_reason_hw_thermal_slowdown>
+ <clocks_event_reason_hw_power_brake_slowdown>Not Active</clocks_event_reason_hw_power_brake_slowdown>
+ <clocks_event_reason_sync_boost>Not Active</clocks_event_reason_sync_boost>
+ <clocks_event_reason_sw_thermal_slowdown>Not Active</clocks_event_reason_sw_thermal_slowdown>
+ <clocks_event_reason_display_clocks_setting>Not Active</clocks_event_reason_display_clocks_setting>
+ </clocks_event_reasons>
+ <fb_memory_usage>
+ <total>24564 MiB</total>
+ <reserved>346 MiB</reserved>
+ <used>2 MiB</used>
+ <free>24214 MiB</free>
+ </fb_memory_usage>
+ <bar1_memory_usage>
+ <total>256 MiB</total>
+ <used>1 MiB</used>
+ <free>255 MiB</free>
+ </bar1_memory_usage>
+ <cc_protected_memory_usage>
+ <total>0 MiB</total>
+ <used>0 MiB</used>
+ <free>0 MiB</free>
+ </cc_protected_memory_usage>
+ <compute_mode>Default</compute_mode>
+ <utilization>
+ <gpu_util>0 %</gpu_util>
+ <memory_util>0 %</memory_util>
+ <encoder_util>0 %</encoder_util>
+ <decoder_util>0 %</decoder_util>
+ <jpeg_util>0 %</jpeg_util>
+ <ofa_util>0 %</ofa_util>
+ </utilization>
+ <encoder_stats>
+ <session_count>0</session_count>
+ <average_fps>0</average_fps>
+ <average_latency>0</average_latency>
+ </encoder_stats>
+ <fbc_stats>
+ <session_count>0</session_count>
+ <average_fps>0</average_fps>
+ <average_latency>0</average_latency>
+ </fbc_stats>
+ <ecc_mode>
+ <current_ecc>Disabled</current_ecc>
+ <pending_ecc>Disabled</pending_ecc>
+ </ecc_mode>
+ <ecc_errors>
+ <volatile>
+ <sram_correctable>N/A</sram_correctable>
+ <sram_uncorrectable>N/A</sram_uncorrectable>
+ <dram_correctable>N/A</dram_correctable>
+ <dram_uncorrectable>N/A</dram_uncorrectable>
+ </volatile>
+ <aggregate>
+ <sram_correctable>N/A</sram_correctable>
+ <sram_uncorrectable>N/A</sram_uncorrectable>
+ <dram_correctable>N/A</dram_correctable>
+ <dram_uncorrectable>N/A</dram_uncorrectable>
+ </aggregate>
+ </ecc_errors>
+ <retired_pages>
+ <multiple_single_bit_retirement>
+ <retired_count>N/A</retired_count>
+ <retired_pagelist>N/A</retired_pagelist>
+ </multiple_single_bit_retirement>
+ <double_bit_retirement>
+ <retired_count>N/A</retired_count>
+ <retired_pagelist>N/A</retired_pagelist>
+ </double_bit_retirement>
+ <pending_blacklist>N/A</pending_blacklist>
+ <pending_retirement>N/A</pending_retirement>
+ </retired_pages>
+ <remapped_rows>
+ <remapped_row_corr>0</remapped_row_corr>
+ <remapped_row_unc>0</remapped_row_unc>
+ <remapped_row_pending>No</remapped_row_pending>
+ <remapped_row_failure>No</remapped_row_failure>
+ <row_remapper_histogram>
+ <row_remapper_histogram_max>192 bank(s)</row_remapper_histogram_max>
+ <row_remapper_histogram_high>0 bank(s)</row_remapper_histogram_high>
+ <row_remapper_histogram_partial>0 bank(s)</row_remapper_histogram_partial>
+ <row_remapper_histogram_low>0 bank(s)</row_remapper_histogram_low>
+ <row_remapper_histogram_none>0 bank(s)</row_remapper_histogram_none>
+ </row_remapper_histogram>
+ </remapped_rows>
+ <temperature>
+ <gpu_temp>40 C</gpu_temp>
+ <gpu_temp_tlimit>43 C</gpu_temp_tlimit>
+ <gpu_temp_max_tlimit_threshold>-7 C</gpu_temp_max_tlimit_threshold>
+ <gpu_temp_slow_tlimit_threshold>-2 C</gpu_temp_slow_tlimit_threshold>
+ <gpu_temp_max_gpu_tlimit_threshold>0 C</gpu_temp_max_gpu_tlimit_threshold>
+ <gpu_target_temperature>84 C</gpu_target_temperature>
+ <memory_temp>N/A</memory_temp>
+ <gpu_temp_max_mem_tlimit_threshold>N/A</gpu_temp_max_mem_tlimit_threshold>
+ </temperature>
+ <supported_gpu_target_temp>
+ <gpu_target_temp_min>65 C</gpu_target_temp_min>
+ <gpu_target_temp_max>88 C</gpu_target_temp_max>
+ </supported_gpu_target_temp>
+ <gpu_power_readings>
+ <power_state>P8</power_state>
+ <power_draw>26.84 W</power_draw>
+ <current_power_limit>450.00 W</current_power_limit>
+ <requested_power_limit>450.00 W</requested_power_limit>
+ <default_power_limit>450.00 W</default_power_limit>
+ <min_power_limit>10.00 W</min_power_limit>
+ <max_power_limit>600.00 W</max_power_limit>
+ </gpu_power_readings>
+ <module_power_readings>
+ <power_state>P8</power_state>
+ <power_draw>N/A</power_draw>
+ <current_power_limit>N/A</current_power_limit>
+ <requested_power_limit>N/A</requested_power_limit>
+ <default_power_limit>N/A</default_power_limit>
+ <min_power_limit>N/A</min_power_limit>
+ <max_power_limit>N/A</max_power_limit>
+ </module_power_readings>
+ <clocks>
+ <graphics_clock>210 MHz</graphics_clock>
+ <sm_clock>210 MHz</sm_clock>
+ <mem_clock>405 MHz</mem_clock>
+ <video_clock>1185 MHz</video_clock>
+ </clocks>
+ <applications_clocks>
+ <graphics_clock>N/A</graphics_clock>
+ <mem_clock>N/A</mem_clock>
+ </applications_clocks>
+ <default_applications_clocks>
+ <graphics_clock>N/A</graphics_clock>
+ <mem_clock>N/A</mem_clock>
+ </default_applications_clocks>
+ <deferred_clocks>
+ <mem_clock>N/A</mem_clock>
+ </deferred_clocks>
+ <max_clocks>
+ <graphics_clock>3120 MHz</graphics_clock>
+ <sm_clock>3120 MHz</sm_clock>
+ <mem_clock>10501 MHz</mem_clock>
+ <video_clock>2415 MHz</video_clock>
+ </max_clocks>
+ <max_customer_boost_clocks>
+ <graphics_clock>N/A</graphics_clock>
+ </max_customer_boost_clocks>
+ <clock_policy>
+ <auto_boost>N/A</auto_boost>
+ <auto_boost_default>N/A</auto_boost_default>
+ </clock_policy>
+ <voltage>
+ <graphics_volt>880.000 mV</graphics_volt>
+ </voltage>
+ <fabric>
+ <state>N/A</state>
+ <status>N/A</status>
+ </fabric>
+ <supported_clocks>
+ <supported_mem_clock>
+ <value>10501 MHz</value>
+ <supported_graphics_clock>3120 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3105 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3090 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3075 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3060 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3045 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3030 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3015 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3000 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2985 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2970 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2955 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2940 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2925 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2910 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2895 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2880 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2865 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2850 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2835 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2820 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2805 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2790 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2775 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2760 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2745 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2730 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2715 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2700 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2685 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2670 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2655 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2640 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2625 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2610 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2595 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2580 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2565 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2550 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2535 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2520 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2505 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2490 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2475 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2460 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2445 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2430 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2415 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2400 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2385 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2370 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2355 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2340 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2325 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2310 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2295 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2280 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2265 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2250 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2235 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2220 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2205 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2190 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2175 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2160 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2145 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2130 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2115 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2100 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2085 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2070 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2055 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2040 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2025 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2010 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1995 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1980 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1965 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1950 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1935 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1920 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1905 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1890 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1875 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1860 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1845 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1830 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1815 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1800 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1785 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1770 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1755 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1740 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1725 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1710 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1695 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1680 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1665 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1650 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1635 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1620 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1605 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1590 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1575 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1560 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1545 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1530 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1515 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1500 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1485 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1470 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1455 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1440 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1425 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1410 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1395 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1380 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1365 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1350 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1335 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1320 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1305 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1290 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1275 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1260 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1245 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1230 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1215 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1200 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1185 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1170 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1155 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1140 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1125 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1110 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1095 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1080 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1065 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1050 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1035 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1020 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1005 MHz</supported_graphics_clock>
+ <supported_graphics_clock>990 MHz</supported_graphics_clock>
+ <supported_graphics_clock>975 MHz</supported_graphics_clock>
+ <supported_graphics_clock>960 MHz</supported_graphics_clock>
+ <supported_graphics_clock>945 MHz</supported_graphics_clock>
+ <supported_graphics_clock>930 MHz</supported_graphics_clock>
+ <supported_graphics_clock>915 MHz</supported_graphics_clock>
+ <supported_graphics_clock>900 MHz</supported_graphics_clock>
+ <supported_graphics_clock>885 MHz</supported_graphics_clock>
+ <supported_graphics_clock>870 MHz</supported_graphics_clock>
+ <supported_graphics_clock>855 MHz</supported_graphics_clock>
+ <supported_graphics_clock>840 MHz</supported_graphics_clock>
+ <supported_graphics_clock>825 MHz</supported_graphics_clock>
+ <supported_graphics_clock>810 MHz</supported_graphics_clock>
+ <supported_graphics_clock>795 MHz</supported_graphics_clock>
+ <supported_graphics_clock>780 MHz</supported_graphics_clock>
+ <supported_graphics_clock>765 MHz</supported_graphics_clock>
+ <supported_graphics_clock>750 MHz</supported_graphics_clock>
+ <supported_graphics_clock>735 MHz</supported_graphics_clock>
+ <supported_graphics_clock>720 MHz</supported_graphics_clock>
+ <supported_graphics_clock>705 MHz</supported_graphics_clock>
+ <supported_graphics_clock>690 MHz</supported_graphics_clock>
+ <supported_graphics_clock>675 MHz</supported_graphics_clock>
+ <supported_graphics_clock>660 MHz</supported_graphics_clock>
+ <supported_graphics_clock>645 MHz</supported_graphics_clock>
+ <supported_graphics_clock>630 MHz</supported_graphics_clock>
+ <supported_graphics_clock>615 MHz</supported_graphics_clock>
+ <supported_graphics_clock>600 MHz</supported_graphics_clock>
+ <supported_graphics_clock>585 MHz</supported_graphics_clock>
+ <supported_graphics_clock>570 MHz</supported_graphics_clock>
+ <supported_graphics_clock>555 MHz</supported_graphics_clock>
+ <supported_graphics_clock>540 MHz</supported_graphics_clock>
+ <supported_graphics_clock>525 MHz</supported_graphics_clock>
+ <supported_graphics_clock>510 MHz</supported_graphics_clock>
+ <supported_graphics_clock>495 MHz</supported_graphics_clock>
+ <supported_graphics_clock>480 MHz</supported_graphics_clock>
+ <supported_graphics_clock>465 MHz</supported_graphics_clock>
+ <supported_graphics_clock>450 MHz</supported_graphics_clock>
+ <supported_graphics_clock>435 MHz</supported_graphics_clock>
+ <supported_graphics_clock>420 MHz</supported_graphics_clock>
+ <supported_graphics_clock>405 MHz</supported_graphics_clock>
+ <supported_graphics_clock>390 MHz</supported_graphics_clock>
+ <supported_graphics_clock>375 MHz</supported_graphics_clock>
+ <supported_graphics_clock>360 MHz</supported_graphics_clock>
+ <supported_graphics_clock>345 MHz</supported_graphics_clock>
+ <supported_graphics_clock>330 MHz</supported_graphics_clock>
+ <supported_graphics_clock>315 MHz</supported_graphics_clock>
+ <supported_graphics_clock>300 MHz</supported_graphics_clock>
+ <supported_graphics_clock>285 MHz</supported_graphics_clock>
+ <supported_graphics_clock>270 MHz</supported_graphics_clock>
+ <supported_graphics_clock>255 MHz</supported_graphics_clock>
+ <supported_graphics_clock>240 MHz</supported_graphics_clock>
+ <supported_graphics_clock>225 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ <supported_mem_clock>
+ <value>10251 MHz</value>
+ <supported_graphics_clock>3120 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3105 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3090 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3075 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3060 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3045 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3030 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3015 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3000 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2985 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2970 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2955 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2940 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2925 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2910 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2895 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2880 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2865 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2850 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2835 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2820 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2805 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2790 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2775 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2760 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2745 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2730 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2715 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2700 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2685 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2670 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2655 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2640 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2625 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2610 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2595 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2580 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2565 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2550 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2535 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2520 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2505 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2490 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2475 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2460 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2445 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2430 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2415 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2400 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2385 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2370 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2355 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2340 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2325 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2310 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2295 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2280 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2265 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2250 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2235 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2220 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2205 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2190 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2175 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2160 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2145 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2130 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2115 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2100 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2085 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2070 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2055 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2040 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2025 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2010 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1995 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1980 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1965 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1950 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1935 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1920 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1905 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1890 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1875 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1860 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1845 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1830 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1815 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1800 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1785 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1770 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1755 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1740 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1725 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1710 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1695 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1680 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1665 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1650 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1635 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1620 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1605 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1590 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1575 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1560 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1545 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1530 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1515 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1500 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1485 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1470 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1455 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1440 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1425 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1410 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1395 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1380 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1365 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1350 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1335 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1320 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1305 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1290 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1275 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1260 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1245 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1230 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1215 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1200 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1185 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1170 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1155 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1140 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1125 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1110 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1095 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1080 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1065 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1050 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1035 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1020 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1005 MHz</supported_graphics_clock>
+ <supported_graphics_clock>990 MHz</supported_graphics_clock>
+ <supported_graphics_clock>975 MHz</supported_graphics_clock>
+ <supported_graphics_clock>960 MHz</supported_graphics_clock>
+ <supported_graphics_clock>945 MHz</supported_graphics_clock>
+ <supported_graphics_clock>930 MHz</supported_graphics_clock>
+ <supported_graphics_clock>915 MHz</supported_graphics_clock>
+ <supported_graphics_clock>900 MHz</supported_graphics_clock>
+ <supported_graphics_clock>885 MHz</supported_graphics_clock>
+ <supported_graphics_clock>870 MHz</supported_graphics_clock>
+ <supported_graphics_clock>855 MHz</supported_graphics_clock>
+ <supported_graphics_clock>840 MHz</supported_graphics_clock>
+ <supported_graphics_clock>825 MHz</supported_graphics_clock>
+ <supported_graphics_clock>810 MHz</supported_graphics_clock>
+ <supported_graphics_clock>795 MHz</supported_graphics_clock>
+ <supported_graphics_clock>780 MHz</supported_graphics_clock>
+ <supported_graphics_clock>765 MHz</supported_graphics_clock>
+ <supported_graphics_clock>750 MHz</supported_graphics_clock>
+ <supported_graphics_clock>735 MHz</supported_graphics_clock>
+ <supported_graphics_clock>720 MHz</supported_graphics_clock>
+ <supported_graphics_clock>705 MHz</supported_graphics_clock>
+ <supported_graphics_clock>690 MHz</supported_graphics_clock>
+ <supported_graphics_clock>675 MHz</supported_graphics_clock>
+ <supported_graphics_clock>660 MHz</supported_graphics_clock>
+ <supported_graphics_clock>645 MHz</supported_graphics_clock>
+ <supported_graphics_clock>630 MHz</supported_graphics_clock>
+ <supported_graphics_clock>615 MHz</supported_graphics_clock>
+ <supported_graphics_clock>600 MHz</supported_graphics_clock>
+ <supported_graphics_clock>585 MHz</supported_graphics_clock>
+ <supported_graphics_clock>570 MHz</supported_graphics_clock>
+ <supported_graphics_clock>555 MHz</supported_graphics_clock>
+ <supported_graphics_clock>540 MHz</supported_graphics_clock>
+ <supported_graphics_clock>525 MHz</supported_graphics_clock>
+ <supported_graphics_clock>510 MHz</supported_graphics_clock>
+ <supported_graphics_clock>495 MHz</supported_graphics_clock>
+ <supported_graphics_clock>480 MHz</supported_graphics_clock>
+ <supported_graphics_clock>465 MHz</supported_graphics_clock>
+ <supported_graphics_clock>450 MHz</supported_graphics_clock>
+ <supported_graphics_clock>435 MHz</supported_graphics_clock>
+ <supported_graphics_clock>420 MHz</supported_graphics_clock>
+ <supported_graphics_clock>405 MHz</supported_graphics_clock>
+ <supported_graphics_clock>390 MHz</supported_graphics_clock>
+ <supported_graphics_clock>375 MHz</supported_graphics_clock>
+ <supported_graphics_clock>360 MHz</supported_graphics_clock>
+ <supported_graphics_clock>345 MHz</supported_graphics_clock>
+ <supported_graphics_clock>330 MHz</supported_graphics_clock>
+ <supported_graphics_clock>315 MHz</supported_graphics_clock>
+ <supported_graphics_clock>300 MHz</supported_graphics_clock>
+ <supported_graphics_clock>285 MHz</supported_graphics_clock>
+ <supported_graphics_clock>270 MHz</supported_graphics_clock>
+ <supported_graphics_clock>255 MHz</supported_graphics_clock>
+ <supported_graphics_clock>240 MHz</supported_graphics_clock>
+ <supported_graphics_clock>225 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ <supported_mem_clock>
+ <value>5001 MHz</value>
+ <supported_graphics_clock>3120 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3105 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3090 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3075 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3060 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3045 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3030 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3015 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3000 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2985 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2970 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2955 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2940 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2925 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2910 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2895 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2880 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2865 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2850 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2835 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2820 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2805 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2790 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2775 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2760 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2745 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2730 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2715 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2700 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2685 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2670 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2655 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2640 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2625 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2610 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2595 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2580 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2565 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2550 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2535 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2520 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2505 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2490 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2475 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2460 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2445 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2430 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2415 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2400 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2385 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2370 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2355 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2340 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2325 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2310 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2295 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2280 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2265 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2250 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2235 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2220 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2205 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2190 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2175 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2160 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2145 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2130 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2115 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2100 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2085 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2070 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2055 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2040 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2025 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2010 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1995 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1980 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1965 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1950 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1935 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1920 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1905 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1890 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1875 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1860 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1845 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1830 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1815 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1800 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1785 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1770 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1755 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1740 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1725 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1710 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1695 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1680 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1665 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1650 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1635 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1620 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1605 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1590 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1575 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1560 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1545 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1530 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1515 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1500 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1485 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1470 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1455 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1440 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1425 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1410 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1395 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1380 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1365 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1350 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1335 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1320 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1305 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1290 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1275 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1260 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1245 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1230 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1215 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1200 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1185 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1170 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1155 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1140 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1125 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1110 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1095 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1080 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1065 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1050 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1035 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1020 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1005 MHz</supported_graphics_clock>
+ <supported_graphics_clock>990 MHz</supported_graphics_clock>
+ <supported_graphics_clock>975 MHz</supported_graphics_clock>
+ <supported_graphics_clock>960 MHz</supported_graphics_clock>
+ <supported_graphics_clock>945 MHz</supported_graphics_clock>
+ <supported_graphics_clock>930 MHz</supported_graphics_clock>
+ <supported_graphics_clock>915 MHz</supported_graphics_clock>
+ <supported_graphics_clock>900 MHz</supported_graphics_clock>
+ <supported_graphics_clock>885 MHz</supported_graphics_clock>
+ <supported_graphics_clock>870 MHz</supported_graphics_clock>
+ <supported_graphics_clock>855 MHz</supported_graphics_clock>
+ <supported_graphics_clock>840 MHz</supported_graphics_clock>
+ <supported_graphics_clock>825 MHz</supported_graphics_clock>
+ <supported_graphics_clock>810 MHz</supported_graphics_clock>
+ <supported_graphics_clock>795 MHz</supported_graphics_clock>
+ <supported_graphics_clock>780 MHz</supported_graphics_clock>
+ <supported_graphics_clock>765 MHz</supported_graphics_clock>
+ <supported_graphics_clock>750 MHz</supported_graphics_clock>
+ <supported_graphics_clock>735 MHz</supported_graphics_clock>
+ <supported_graphics_clock>720 MHz</supported_graphics_clock>
+ <supported_graphics_clock>705 MHz</supported_graphics_clock>
+ <supported_graphics_clock>690 MHz</supported_graphics_clock>
+ <supported_graphics_clock>675 MHz</supported_graphics_clock>
+ <supported_graphics_clock>660 MHz</supported_graphics_clock>
+ <supported_graphics_clock>645 MHz</supported_graphics_clock>
+ <supported_graphics_clock>630 MHz</supported_graphics_clock>
+ <supported_graphics_clock>615 MHz</supported_graphics_clock>
+ <supported_graphics_clock>600 MHz</supported_graphics_clock>
+ <supported_graphics_clock>585 MHz</supported_graphics_clock>
+ <supported_graphics_clock>570 MHz</supported_graphics_clock>
+ <supported_graphics_clock>555 MHz</supported_graphics_clock>
+ <supported_graphics_clock>540 MHz</supported_graphics_clock>
+ <supported_graphics_clock>525 MHz</supported_graphics_clock>
+ <supported_graphics_clock>510 MHz</supported_graphics_clock>
+ <supported_graphics_clock>495 MHz</supported_graphics_clock>
+ <supported_graphics_clock>480 MHz</supported_graphics_clock>
+ <supported_graphics_clock>465 MHz</supported_graphics_clock>
+ <supported_graphics_clock>450 MHz</supported_graphics_clock>
+ <supported_graphics_clock>435 MHz</supported_graphics_clock>
+ <supported_graphics_clock>420 MHz</supported_graphics_clock>
+ <supported_graphics_clock>405 MHz</supported_graphics_clock>
+ <supported_graphics_clock>390 MHz</supported_graphics_clock>
+ <supported_graphics_clock>375 MHz</supported_graphics_clock>
+ <supported_graphics_clock>360 MHz</supported_graphics_clock>
+ <supported_graphics_clock>345 MHz</supported_graphics_clock>
+ <supported_graphics_clock>330 MHz</supported_graphics_clock>
+ <supported_graphics_clock>315 MHz</supported_graphics_clock>
+ <supported_graphics_clock>300 MHz</supported_graphics_clock>
+ <supported_graphics_clock>285 MHz</supported_graphics_clock>
+ <supported_graphics_clock>270 MHz</supported_graphics_clock>
+ <supported_graphics_clock>255 MHz</supported_graphics_clock>
+ <supported_graphics_clock>240 MHz</supported_graphics_clock>
+ <supported_graphics_clock>225 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ <supported_mem_clock>
+ <value>810 MHz</value>
+ <supported_graphics_clock>3105 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3090 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3075 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3060 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3045 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3030 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3015 MHz</supported_graphics_clock>
+ <supported_graphics_clock>3000 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2985 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2970 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2955 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2940 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2925 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2910 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2895 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2880 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2865 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2850 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2835 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2820 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2805 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2790 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2775 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2760 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2745 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2730 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2715 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2700 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2685 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2670 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2655 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2640 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2625 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2610 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2595 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2580 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2565 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2550 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2535 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2520 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2505 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2490 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2475 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2460 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2445 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2430 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2415 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2400 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2385 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2370 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2355 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2340 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2325 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2310 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2295 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2280 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2265 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2250 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2235 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2220 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2205 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2190 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2175 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2160 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2145 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2130 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2115 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2100 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2085 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2070 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2055 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2040 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2025 MHz</supported_graphics_clock>
+ <supported_graphics_clock>2010 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1995 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1980 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1965 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1950 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1935 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1920 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1905 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1890 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1875 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1860 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1845 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1830 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1815 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1800 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1785 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1770 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1755 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1740 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1725 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1710 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1695 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1680 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1665 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1650 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1635 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1620 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1605 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1590 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1575 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1560 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1545 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1530 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1515 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1500 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1485 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1470 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1455 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1440 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1425 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1410 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1395 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1380 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1365 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1350 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1335 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1320 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1305 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1290 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1275 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1260 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1245 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1230 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1215 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1200 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1185 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1170 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1155 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1140 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1125 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1110 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1095 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1080 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1065 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1050 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1035 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1020 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1005 MHz</supported_graphics_clock>
+ <supported_graphics_clock>990 MHz</supported_graphics_clock>
+ <supported_graphics_clock>975 MHz</supported_graphics_clock>
+ <supported_graphics_clock>960 MHz</supported_graphics_clock>
+ <supported_graphics_clock>945 MHz</supported_graphics_clock>
+ <supported_graphics_clock>930 MHz</supported_graphics_clock>
+ <supported_graphics_clock>915 MHz</supported_graphics_clock>
+ <supported_graphics_clock>900 MHz</supported_graphics_clock>
+ <supported_graphics_clock>885 MHz</supported_graphics_clock>
+ <supported_graphics_clock>870 MHz</supported_graphics_clock>
+ <supported_graphics_clock>855 MHz</supported_graphics_clock>
+ <supported_graphics_clock>840 MHz</supported_graphics_clock>
+ <supported_graphics_clock>825 MHz</supported_graphics_clock>
+ <supported_graphics_clock>810 MHz</supported_graphics_clock>
+ <supported_graphics_clock>795 MHz</supported_graphics_clock>
+ <supported_graphics_clock>780 MHz</supported_graphics_clock>
+ <supported_graphics_clock>765 MHz</supported_graphics_clock>
+ <supported_graphics_clock>750 MHz</supported_graphics_clock>
+ <supported_graphics_clock>735 MHz</supported_graphics_clock>
+ <supported_graphics_clock>720 MHz</supported_graphics_clock>
+ <supported_graphics_clock>705 MHz</supported_graphics_clock>
+ <supported_graphics_clock>690 MHz</supported_graphics_clock>
+ <supported_graphics_clock>675 MHz</supported_graphics_clock>
+ <supported_graphics_clock>660 MHz</supported_graphics_clock>
+ <supported_graphics_clock>645 MHz</supported_graphics_clock>
+ <supported_graphics_clock>630 MHz</supported_graphics_clock>
+ <supported_graphics_clock>615 MHz</supported_graphics_clock>
+ <supported_graphics_clock>600 MHz</supported_graphics_clock>
+ <supported_graphics_clock>585 MHz</supported_graphics_clock>
+ <supported_graphics_clock>570 MHz</supported_graphics_clock>
+ <supported_graphics_clock>555 MHz</supported_graphics_clock>
+ <supported_graphics_clock>540 MHz</supported_graphics_clock>
+ <supported_graphics_clock>525 MHz</supported_graphics_clock>
+ <supported_graphics_clock>510 MHz</supported_graphics_clock>
+ <supported_graphics_clock>495 MHz</supported_graphics_clock>
+ <supported_graphics_clock>480 MHz</supported_graphics_clock>
+ <supported_graphics_clock>465 MHz</supported_graphics_clock>
+ <supported_graphics_clock>450 MHz</supported_graphics_clock>
+ <supported_graphics_clock>435 MHz</supported_graphics_clock>
+ <supported_graphics_clock>420 MHz</supported_graphics_clock>
+ <supported_graphics_clock>405 MHz</supported_graphics_clock>
+ <supported_graphics_clock>390 MHz</supported_graphics_clock>
+ <supported_graphics_clock>375 MHz</supported_graphics_clock>
+ <supported_graphics_clock>360 MHz</supported_graphics_clock>
+ <supported_graphics_clock>345 MHz</supported_graphics_clock>
+ <supported_graphics_clock>330 MHz</supported_graphics_clock>
+ <supported_graphics_clock>315 MHz</supported_graphics_clock>
+ <supported_graphics_clock>300 MHz</supported_graphics_clock>
+ <supported_graphics_clock>285 MHz</supported_graphics_clock>
+ <supported_graphics_clock>270 MHz</supported_graphics_clock>
+ <supported_graphics_clock>255 MHz</supported_graphics_clock>
+ <supported_graphics_clock>240 MHz</supported_graphics_clock>
+ <supported_graphics_clock>225 MHz</supported_graphics_clock>
+ <supported_graphics_clock>210 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ <supported_mem_clock>
+ <value>405 MHz</value>
+ <supported_graphics_clock>645 MHz</supported_graphics_clock>
+ <supported_graphics_clock>630 MHz</supported_graphics_clock>
+ <supported_graphics_clock>615 MHz</supported_graphics_clock>
+ <supported_graphics_clock>600 MHz</supported_graphics_clock>
+ <supported_graphics_clock>585 MHz</supported_graphics_clock>
+ <supported_graphics_clock>570 MHz</supported_graphics_clock>
+ <supported_graphics_clock>555 MHz</supported_graphics_clock>
+ <supported_graphics_clock>540 MHz</supported_graphics_clock>
+ <supported_graphics_clock>525 MHz</supported_graphics_clock>
+ <supported_graphics_clock>510 MHz</supported_graphics_clock>
+ <supported_graphics_clock>495 MHz</supported_graphics_clock>
+ <supported_graphics_clock>480 MHz</supported_graphics_clock>
+ <supported_graphics_clock>465 MHz</supported_graphics_clock>
+ <supported_graphics_clock>450 MHz</supported_graphics_clock>
+ <supported_graphics_clock>435 MHz</supported_graphics_clock>
+ <supported_graphics_clock>420 MHz</supported_graphics_clock>
+ <supported_graphics_clock>405 MHz</supported_graphics_clock>
+ <supported_graphics_clock>390 MHz</supported_graphics_clock>
+ <supported_graphics_clock>375 MHz</supported_graphics_clock>
+ <supported_graphics_clock>360 MHz</supported_graphics_clock>
+ <supported_graphics_clock>345 MHz</supported_graphics_clock>
+ <supported_graphics_clock>330 MHz</supported_graphics_clock>
+ <supported_graphics_clock>315 MHz</supported_graphics_clock>
+ <supported_graphics_clock>300 MHz</supported_graphics_clock>
+ <supported_graphics_clock>285 MHz</supported_graphics_clock>
+ <supported_graphics_clock>270 MHz</supported_graphics_clock>
+ <supported_graphics_clock>255 MHz</supported_graphics_clock>
+ <supported_graphics_clock>240 MHz</supported_graphics_clock>
+ <supported_graphics_clock>225 MHz</supported_graphics_clock>
+ <supported_graphics_clock>210 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ </supported_clocks>
+ <processes>
+ </processes>
+ <accounted_processes>
+ </accounted_processes>
+ </gpu>
+
+</nvidia_smi_log>
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/tesla-p100.csv b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/tesla-p100.csv
new file mode 100644
index 000000000..9a4c1e1a9
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/tesla-p100.csv
@@ -0,0 +1,2 @@
+name, uuid, fan.speed [%], pstate, memory.reserved [MiB], memory.used [MiB], memory.free [MiB], utilization.gpu [%], utilization.memory [%], temperature.gpu, power.draw [W], clocks.current.graphics [MHz], clocks.current.sm [MHz], clocks.current.memory [MHz], clocks.current.video [MHz]
+Tesla P100-PCIE-16GB, GPU-ef1b2c9b-38d8-2090-2bd1-f567a3eb42a6, [N/A], P0, 103, 0, 16280, 0, 0, 37, 28.16, 405, 405, 715, 835 \ No newline at end of file
diff --git a/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/tesla-p100.xml b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/tesla-p100.xml
new file mode 100644
index 000000000..4c43125f9
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/nvidia_smi/testdata/tesla-p100.xml
@@ -0,0 +1,313 @@
+<?xml version="1.0" ?>
+<!DOCTYPE nvidia_smi_log SYSTEM "nvsmi_device_v11.dtd">
+<nvidia_smi_log>
+ <timestamp>Sat Sep 17 17:06:50 2022</timestamp>
+ <driver_version>510.47.03</driver_version>
+ <cuda_version>11.6</cuda_version>
+ <attached_gpus>1</attached_gpus>
+ <gpu id="00000000:00:04.0">
+ <product_name>Tesla P100-PCIE-16GB</product_name>
+ <product_brand>Tesla</product_brand>
+ <product_architecture>Pascal</product_architecture>
+ <display_mode>Enabled</display_mode>
+ <display_active>Disabled</display_active>
+ <persistence_mode>Disabled</persistence_mode>
+ <mig_mode>
+ <current_mig>N/A</current_mig>
+ <pending_mig>N/A</pending_mig>
+ </mig_mode>
+ <mig_devices>
+ None
+ </mig_devices>
+ <accounting_mode>Disabled</accounting_mode>
+ <accounting_mode_buffer_size>4000</accounting_mode_buffer_size>
+ <driver_model>
+ <current_dm>N/A</current_dm>
+ <pending_dm>N/A</pending_dm>
+ </driver_model>
+ <serial>0324217145110</serial>
+ <uuid>GPU-d3da8716-eaab-75db-efc1-60e88e1cd55e</uuid>
+ <minor_number>0</minor_number>
+ <vbios_version>86.00.52.00.02</vbios_version>
+ <multigpu_board>No</multigpu_board>
+ <board_id>0x4</board_id>
+ <gpu_part_number>900-2H400-6300-031</gpu_part_number>
+ <gpu_module_id>0</gpu_module_id>
+ <inforom_version>
+ <img_version>H400.0201.00.08</img_version>
+ <oem_object>1.1</oem_object>
+ <ecc_object>4.1</ecc_object>
+ <pwr_object>N/A</pwr_object>
+ </inforom_version>
+ <gpu_operation_mode>
+ <current_gom>N/A</current_gom>
+ <pending_gom>N/A</pending_gom>
+ </gpu_operation_mode>
+ <gsp_firmware_version>N/A</gsp_firmware_version>
+ <gpu_virtualization_mode>
+ <virtualization_mode>Pass-Through</virtualization_mode>
+ <host_vgpu_mode>N/A</host_vgpu_mode>
+ </gpu_virtualization_mode>
+ <ibmnpu>
+ <relaxed_ordering_mode>N/A</relaxed_ordering_mode>
+ </ibmnpu>
+ <pci>
+ <pci_bus>00</pci_bus>
+ <pci_device>04</pci_device>
+ <pci_domain>0000</pci_domain>
+ <pci_device_id>15F810DE</pci_device_id>
+ <pci_bus_id>00000000:00:04.0</pci_bus_id>
+ <pci_sub_system_id>118F10DE</pci_sub_system_id>
+ <pci_gpu_link_info>
+ <pcie_gen>
+ <max_link_gen>3</max_link_gen>
+ <current_link_gen>3</current_link_gen>
+ </pcie_gen>
+ <link_widths>
+ <max_link_width>16x</max_link_width>
+ <current_link_width>16x</current_link_width>
+ </link_widths>
+ </pci_gpu_link_info>
+ <pci_bridge_chip>
+ <bridge_chip_type>N/A</bridge_chip_type>
+ <bridge_chip_fw>N/A</bridge_chip_fw>
+ </pci_bridge_chip>
+ <replay_counter>0</replay_counter>
+ <replay_rollover_counter>0</replay_rollover_counter>
+ <tx_util>0 KB/s</tx_util>
+ <rx_util>0 KB/s</rx_util>
+ </pci>
+ <fan_speed>N/A</fan_speed>
+ <performance_state>P0</performance_state>
+ <clocks_throttle_reasons>
+ <clocks_throttle_reason_gpu_idle>Active</clocks_throttle_reason_gpu_idle>
+ <clocks_throttle_reason_applications_clocks_setting>Not Active</clocks_throttle_reason_applications_clocks_setting>
+ <clocks_throttle_reason_sw_power_cap>Not Active</clocks_throttle_reason_sw_power_cap>
+ <clocks_throttle_reason_hw_slowdown>Not Active</clocks_throttle_reason_hw_slowdown>
+ <clocks_throttle_reason_hw_thermal_slowdown>Not Active</clocks_throttle_reason_hw_thermal_slowdown>
+ <clocks_throttle_reason_hw_power_brake_slowdown>Not Active</clocks_throttle_reason_hw_power_brake_slowdown>
+ <clocks_throttle_reason_sync_boost>Not Active</clocks_throttle_reason_sync_boost>
+ <clocks_throttle_reason_sw_thermal_slowdown>Not Active</clocks_throttle_reason_sw_thermal_slowdown>
+ <clocks_throttle_reason_display_clocks_setting>Not Active</clocks_throttle_reason_display_clocks_setting>
+ </clocks_throttle_reasons>
+ <fb_memory_usage>
+ <total>16384 MiB</total>
+ <reserved>103 MiB</reserved>
+ <used>0 MiB</used>
+ <free>16280 MiB</free>
+ </fb_memory_usage>
+ <bar1_memory_usage>
+ <total>16384 MiB</total>
+ <used>2 MiB</used>
+ <free>16382 MiB</free>
+ </bar1_memory_usage>
+ <compute_mode>Default</compute_mode>
+ <utilization>
+ <gpu_util>0 %</gpu_util>
+ <memory_util>0 %</memory_util>
+ <encoder_util>0 %</encoder_util>
+ <decoder_util>0 %</decoder_util>
+ </utilization>
+ <encoder_stats>
+ <session_count>0</session_count>
+ <average_fps>0</average_fps>
+ <average_latency>0</average_latency>
+ </encoder_stats>
+ <fbc_stats>
+ <session_count>0</session_count>
+ <average_fps>0</average_fps>
+ <average_latency>0</average_latency>
+ </fbc_stats>
+ <ecc_mode>
+ <current_ecc>Enabled</current_ecc>
+ <pending_ecc>Enabled</pending_ecc>
+ </ecc_mode>
+ <ecc_errors>
+ <volatile>
+ <single_bit>
+ <device_memory>0</device_memory>
+ <register_file>0</register_file>
+ <l1_cache>N/A</l1_cache>
+ <l2_cache>0</l2_cache>
+ <texture_memory>0</texture_memory>
+ <texture_shm>0</texture_shm>
+ <cbu>N/A</cbu>
+ <total>0</total>
+ </single_bit>
+ <double_bit>
+ <device_memory>0</device_memory>
+ <register_file>0</register_file>
+ <l1_cache>N/A</l1_cache>
+ <l2_cache>0</l2_cache>
+ <texture_memory>0</texture_memory>
+ <texture_shm>0</texture_shm>
+ <cbu>N/A</cbu>
+ <total>0</total>
+ </double_bit>
+ </volatile>
+ <aggregate>
+ <single_bit>
+ <device_memory>3</device_memory>
+ <register_file>0</register_file>
+ <l1_cache>N/A</l1_cache>
+ <l2_cache>0</l2_cache>
+ <texture_memory>0</texture_memory>
+ <texture_shm>0</texture_shm>
+ <cbu>N/A</cbu>
+ <total>3</total>
+ </single_bit>
+ <double_bit>
+ <device_memory>0</device_memory>
+ <register_file>0</register_file>
+ <l1_cache>N/A</l1_cache>
+ <l2_cache>0</l2_cache>
+ <texture_memory>0</texture_memory>
+ <texture_shm>0</texture_shm>
+ <cbu>N/A</cbu>
+ <total>0</total>
+ </double_bit>
+ </aggregate>
+ </ecc_errors>
+ <retired_pages>
+ <multiple_single_bit_retirement>
+ <retired_count>0</retired_count>
+ <retired_pagelist>
+ </retired_pagelist>
+ </multiple_single_bit_retirement>
+ <double_bit_retirement>
+ <retired_count>0</retired_count>
+ <retired_pagelist>
+ </retired_pagelist>
+ </double_bit_retirement>
+ <pending_blacklist>No</pending_blacklist>
+ <pending_retirement>No</pending_retirement>
+ </retired_pages>
+ <remapped_rows>N/A</remapped_rows>
+ <temperature>
+ <gpu_temp>38 C</gpu_temp>
+ <gpu_temp_max_threshold>85 C</gpu_temp_max_threshold>
+ <gpu_temp_slow_threshold>82 C</gpu_temp_slow_threshold>
+ <gpu_temp_max_gpu_threshold>N/A</gpu_temp_max_gpu_threshold>
+ <gpu_target_temperature>N/A</gpu_target_temperature>
+ <memory_temp>N/A</memory_temp>
+ <gpu_temp_max_mem_threshold>N/A</gpu_temp_max_mem_threshold>
+ </temperature>
+ <supported_gpu_target_temp>
+ <gpu_target_temp_min>N/A</gpu_target_temp_min>
+ <gpu_target_temp_max>N/A</gpu_target_temp_max>
+ </supported_gpu_target_temp>
+ <power_readings>
+ <power_state>P0</power_state>
+ <power_management>Supported</power_management>
+ <power_draw>26.16 W</power_draw>
+ <power_limit>250.00 W</power_limit>
+ <default_power_limit>250.00 W</default_power_limit>
+ <enforced_power_limit>250.00 W</enforced_power_limit>
+ <min_power_limit>125.00 W</min_power_limit>
+ <max_power_limit>250.00 W</max_power_limit>
+ </power_readings>
+ <clocks>
+ <graphics_clock>405 MHz</graphics_clock>
+ <sm_clock>405 MHz</sm_clock>
+ <mem_clock>715 MHz</mem_clock>
+ <video_clock>835 MHz</video_clock>
+ </clocks>
+ <applications_clocks>
+ <graphics_clock>1189 MHz</graphics_clock>
+ <mem_clock>715 MHz</mem_clock>
+ </applications_clocks>
+ <default_applications_clocks>
+ <graphics_clock>1189 MHz</graphics_clock>
+ <mem_clock>715 MHz</mem_clock>
+ </default_applications_clocks>
+ <max_clocks>
+ <graphics_clock>1328 MHz</graphics_clock>
+ <sm_clock>1328 MHz</sm_clock>
+ <mem_clock>715 MHz</mem_clock>
+ <video_clock>1328 MHz</video_clock>
+ </max_clocks>
+ <max_customer_boost_clocks>
+ <graphics_clock>1328 MHz</graphics_clock>
+ </max_customer_boost_clocks>
+ <clock_policy>
+ <auto_boost>N/A</auto_boost>
+ <auto_boost_default>N/A</auto_boost_default>
+ </clock_policy>
+ <voltage>
+ <graphics_volt>N/A</graphics_volt>
+ </voltage>
+ <supported_clocks>
+ <supported_mem_clock>
+ <value>715 MHz</value>
+ <supported_graphics_clock>1328 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1316 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1303 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1290 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1278 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1265 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1252 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1240 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1227 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1215 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1202 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1189 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1177 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1164 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1151 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1139 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1126 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1113 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1101 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1088 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1075 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1063 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1050 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1037 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1025 MHz</supported_graphics_clock>
+ <supported_graphics_clock>1012 MHz</supported_graphics_clock>
+ <supported_graphics_clock>999 MHz</supported_graphics_clock>
+ <supported_graphics_clock>987 MHz</supported_graphics_clock>
+ <supported_graphics_clock>974 MHz</supported_graphics_clock>
+ <supported_graphics_clock>961 MHz</supported_graphics_clock>
+ <supported_graphics_clock>949 MHz</supported_graphics_clock>
+ <supported_graphics_clock>936 MHz</supported_graphics_clock>
+ <supported_graphics_clock>923 MHz</supported_graphics_clock>
+ <supported_graphics_clock>911 MHz</supported_graphics_clock>
+ <supported_graphics_clock>898 MHz</supported_graphics_clock>
+ <supported_graphics_clock>885 MHz</supported_graphics_clock>
+ <supported_graphics_clock>873 MHz</supported_graphics_clock>
+ <supported_graphics_clock>860 MHz</supported_graphics_clock>
+ <supported_graphics_clock>847 MHz</supported_graphics_clock>
+ <supported_graphics_clock>835 MHz</supported_graphics_clock>
+ <supported_graphics_clock>822 MHz</supported_graphics_clock>
+ <supported_graphics_clock>810 MHz</supported_graphics_clock>
+ <supported_graphics_clock>797 MHz</supported_graphics_clock>
+ <supported_graphics_clock>784 MHz</supported_graphics_clock>
+ <supported_graphics_clock>772 MHz</supported_graphics_clock>
+ <supported_graphics_clock>759 MHz</supported_graphics_clock>
+ <supported_graphics_clock>746 MHz</supported_graphics_clock>
+ <supported_graphics_clock>734 MHz</supported_graphics_clock>
+ <supported_graphics_clock>721 MHz</supported_graphics_clock>
+ <supported_graphics_clock>708 MHz</supported_graphics_clock>
+ <supported_graphics_clock>696 MHz</supported_graphics_clock>
+ <supported_graphics_clock>683 MHz</supported_graphics_clock>
+ <supported_graphics_clock>670 MHz</supported_graphics_clock>
+ <supported_graphics_clock>658 MHz</supported_graphics_clock>
+ <supported_graphics_clock>645 MHz</supported_graphics_clock>
+ <supported_graphics_clock>632 MHz</supported_graphics_clock>
+ <supported_graphics_clock>620 MHz</supported_graphics_clock>
+ <supported_graphics_clock>607 MHz</supported_graphics_clock>
+ <supported_graphics_clock>594 MHz</supported_graphics_clock>
+ <supported_graphics_clock>582 MHz</supported_graphics_clock>
+ <supported_graphics_clock>569 MHz</supported_graphics_clock>
+ <supported_graphics_clock>556 MHz</supported_graphics_clock>
+ <supported_graphics_clock>544 MHz</supported_graphics_clock>
+ </supported_mem_clock>
+ </supported_clocks>
+ <processes>
+ </processes>
+ <accounted_processes>
+ </accounted_processes>
+ </gpu>
+
+</nvidia_smi_log> \ No newline at end of file