From dc4b593e32b4b74182113d039fa028613dc44595 Mon Sep 17 00:00:00 2001 From: Sergey Krashevich Date: Wed, 3 May 2023 10:33:07 +0300 Subject: [PATCH] small fix for avoid errors on strange GPUs and old drivers --- frigate/util.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/frigate/util.py b/frigate/util.py index 1f9a66e54..60584df77 100755 --- a/frigate/util.py +++ b/frigate/util.py @@ -930,16 +930,22 @@ def get_nvidia_gpu_stats() -> dict[str, str]: results = {} for i in range(deviceCount): handle = nvml.nvmlDeviceGetHandleByIndex(i) - meminfo = nvml.nvmlDeviceGetMemoryInfo(handle) + meminfo = try_get_info(nvml.nvmlDeviceGetMemoryInfo, handle) util = try_get_info(nvml.nvmlDeviceGetUtilizationRates, handle) if util != "N/A": gpu_util = util.gpu else: gpu_util = 0 + + if meminfo != "N/A": + gpu_mem_util = meminfo.used / meminfo.total * 100 + else: + gpu_mem_util = -1 + results[i] = { "name": nvml.nvmlDeviceGetName(handle), "gpu": gpu_util, - "mem": meminfo.used / meminfo.total * 100, + "mem": gpu_mem_util, } return results