feat: mining section rework, GPU filter, chart as full-width row, progress bars separate line, contrast fix
This commit is contained in:
+32
-15
@@ -143,12 +143,16 @@ type GPUInfo struct {
|
||||
MemClock float64 `json:"mem_clock_mhz"`
|
||||
Power float64 `json:"power"`
|
||||
PowerLimit float64 `json:"power_limit"`
|
||||
PowerMax float64 `json:"power_max"`
|
||||
FanSpeed float64 `json:"fan_speed"`
|
||||
PState string `json:"pstate"`
|
||||
Persistence string `json:"persistence_mode"`
|
||||
ComputeMode string `json:"compute_mode"`
|
||||
DriverVersion string `json:"driver_version"`
|
||||
CudaVersion string `json:"cuda_version"`
|
||||
UtilMemory float64 `json:"util_memory"`
|
||||
UtilEncoder float64 `json:"util_encoder"`
|
||||
UtilDecoder float64 `json:"util_decoder"`
|
||||
ClocksMaxGfx float64 `json:"clocks_max_graphics"`
|
||||
ClocksMaxMem float64 `json:"clocks_max_memory"`
|
||||
}
|
||||
|
||||
// ═══════════════════════════════════════════════
|
||||
@@ -1220,20 +1224,33 @@ func tryNvidiaSMI() []GPUInfo {
|
||||
parts[i] = strings.Trim(parts[i], "[]")
|
||||
}
|
||||
|
||||
// 0:index 1:name 2:uuid 3:bus_id 4:driver 5:vbios
|
||||
// 6:temp_gpu 7:temp_mem 8:fan 9:power 10:power_limit
|
||||
// 11:power_default 12:power_min 13:power_max
|
||||
// 14:clk_gfx 15:clk_sm 16:clk_mem 17:clk_max_gfx 18:clk_max_mem
|
||||
// 19:util_gpu 20:util_mem 21:util_enc 22:util_dec
|
||||
// 23:vram_total 24:vram_used 25:vram_free
|
||||
// 26:ecc_corr 27:ecc_uncorr 28:compute_mode 29:pstate
|
||||
gpus = append(gpus, GPUInfo{
|
||||
Name: cleanStr(parts[1]),
|
||||
VRAMTotalMB: parseFloat(parts[23]),
|
||||
VRAMUsedMB: parseFloat(parts[24]),
|
||||
Temperature: parseFloat(parts[6]),
|
||||
LoadPercent: parseFloat(parts[19]),
|
||||
CoreClock: parseFloat(parts[14]),
|
||||
MemClock: parseFloat(parts[16]),
|
||||
Power: parseFloatSafe(parts[9]),
|
||||
PowerLimit: parseFloatSafe(parts[10]),
|
||||
FanSpeed: parseFloatSafe(parts[8]),
|
||||
PState: cleanStr(parts[29]),
|
||||
ComputeMode: cleanStr(parts[28]),
|
||||
DriverVersion: cleanStr(parts[4]),
|
||||
Name: cleanStr(parts[1]),
|
||||
DriverVersion: cleanStr(parts[4]),
|
||||
Temperature: parseFloat(parts[6]),
|
||||
FanSpeed: parseFloat(parts[8]),
|
||||
Power: parseFloat(parts[9]),
|
||||
PowerLimit: parseFloat(parts[10]),
|
||||
PowerMax: parseFloat(parts[13]),
|
||||
CoreClock: parseFloat(parts[14]),
|
||||
MemClock: parseFloat(parts[16]),
|
||||
ClocksMaxGfx: parseFloat(parts[17]),
|
||||
ClocksMaxMem: parseFloat(parts[18]),
|
||||
LoadPercent: parseFloat(parts[19]),
|
||||
UtilMemory: parseFloat(parts[20]),
|
||||
UtilEncoder: parseFloat(parts[21]),
|
||||
UtilDecoder: parseFloat(parts[22]),
|
||||
VRAMTotalMB: parseFloat(parts[23]),
|
||||
VRAMUsedMB: parseFloat(parts[24]),
|
||||
ComputeMode: cleanStr(parts[28]),
|
||||
PState: cleanStr(parts[29]),
|
||||
})
|
||||
}
|
||||
return gpus
|
||||
|
||||
Reference in New Issue
Block a user