mirror of
https://github.com/ilya-zlobintsev/LACT.git
synced 2025-02-25 18:55:26 -06:00
fix: handle missing drm values when updating info in gui
This commit is contained in:
parent
d1a0690191
commit
2b77a31c76
@ -113,26 +113,37 @@ impl InformationPage {
|
|||||||
self.gpu_manufacturer_label
|
self.gpu_manufacturer_label
|
||||||
.set_markup(&format!("<b>{gpu_manufacturer}</b>"));
|
.set_markup(&format!("<b>{gpu_manufacturer}</b>"));
|
||||||
|
|
||||||
|
let mut family_name = "Unknown";
|
||||||
|
let mut asic_name = "Unknown";
|
||||||
|
let mut compute_units = "Unknown".to_owned();
|
||||||
|
let mut vram_type = "Unknown";
|
||||||
|
let mut vram_max_bw = "Unknown";
|
||||||
|
let mut cpu_accessible_vram = "Unknown".to_owned();
|
||||||
if let Some(drm_info) = &gpu_info.drm_info {
|
if let Some(drm_info) = &gpu_info.drm_info {
|
||||||
self.family_name
|
family_name = &drm_info.family_name;
|
||||||
.set_markup(&format!("<b>{}</b>", drm_info.family_name));
|
asic_name = &drm_info.asic_name;
|
||||||
self.asic_name
|
compute_units = drm_info.compute_units.to_string();
|
||||||
.set_markup(&format!("<b>{}</b>", drm_info.asic_name));
|
vram_type = &drm_info.vram_type;
|
||||||
self.compute_units_label
|
vram_max_bw = &drm_info.vram_max_bw;
|
||||||
.set_markup(&format!("<b>{}</b>", drm_info.compute_units));
|
|
||||||
self.vram_type_label
|
|
||||||
.set_markup(&format!("<b>{}</b>", drm_info.vram_type));
|
|
||||||
self.vram_peak_bw_label
|
|
||||||
.set_markup(&format!("<b>{} GiB/s</b>", drm_info.vram_max_bw));
|
|
||||||
|
|
||||||
if let Some(memory_info) = &drm_info.memory_info {
|
if let Some(memory_info) = &drm_info.memory_info {
|
||||||
self.cpu_accessible_vram_label.set_markup(&format!(
|
cpu_accessible_vram = (memory_info.cpu_accessible_total / 1024 / 1024).to_string();
|
||||||
"<b>{} MiB</b>",
|
|
||||||
memory_info.cpu_accessible_total / 1024 / 1024
|
|
||||||
));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
self.family_name
|
||||||
|
.set_markup(&format!("<b>{family_name}</b>"));
|
||||||
|
self.asic_name.set_markup(&format!("<b>{asic_name}</b>"));
|
||||||
|
self.compute_units_label
|
||||||
|
.set_markup(&format!("<b>{compute_units}</b>"));
|
||||||
|
self.vram_type_label
|
||||||
|
.set_markup(&format!("<b>{vram_type}</b>"));
|
||||||
|
self.vram_peak_bw_label
|
||||||
|
.set_markup(&format!("<b>{vram_max_bw} GiB/s</b>"));
|
||||||
|
|
||||||
|
self.cpu_accessible_vram_label
|
||||||
|
.set_markup(&format!("<b>{cpu_accessible_vram} MiB</b>"));
|
||||||
|
|
||||||
let vbios_version = gpu_info.vbios_version.as_deref().unwrap_or("Unknown");
|
let vbios_version = gpu_info.vbios_version.as_deref().unwrap_or("Unknown");
|
||||||
self.vbios_version_label
|
self.vbios_version_label
|
||||||
.set_markup(&format!("<b>{vbios_version}</b>"));
|
.set_markup(&format!("<b>{vbios_version}</b>"));
|
||||||
|
@ -120,10 +120,9 @@ impl StatsFrame {
|
|||||||
.get("junction")
|
.get("junction")
|
||||||
.or_else(|| stats.temps.get("edge"));
|
.or_else(|| stats.temps.get("edge"));
|
||||||
|
|
||||||
if let Some(temp) = maybe_temp.and_then(|temp| temp.current) {
|
let temp = maybe_temp.and_then(|temp| temp.current).unwrap_or(0.0);
|
||||||
self.gpu_temperature_label
|
self.gpu_temperature_label
|
||||||
.set_markup(&format!("<b>{temp}°C</b>"));
|
.set_markup(&format!("<b>{temp}°C</b>"));
|
||||||
}
|
|
||||||
|
|
||||||
self.gpu_usage_label.set_markup(&format!(
|
self.gpu_usage_label.set_markup(&format!(
|
||||||
"<b>{}%</b>",
|
"<b>{}%</b>",
|
||||||
|
Loading…
Reference in New Issue
Block a user