From eadc2b45c3c91a05e247c90286e710f139819233 Mon Sep 17 00:00:00 2001 From: 0xDEAD Date: Mon, 15 Apr 2019 12:30:20 +0200 Subject: [PATCH] nvidiagpu: add option to format output (default=current format) --- bumblebee/modules/nvidiagpu.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/bumblebee/modules/nvidiagpu.py b/bumblebee/modules/nvidiagpu.py index 8acf68c..005ff49 100644 --- a/bumblebee/modules/nvidiagpu.py +++ b/bumblebee/modules/nvidiagpu.py @@ -2,6 +2,10 @@ """Displays GPU name, temperature and memory usage. +Parameters: + * nvidiagpu.format: Format string (defaults to "{name}: {temp}°C %{usedmem}/{totalmem} MiB") + Available values are: {name} {temp} {mem_used} {mem_total} + Requires nvidia-smi """ @@ -34,13 +38,21 @@ class Module(bumblebee.engine.Module): key, val = key.strip(), val.strip() if title == "FB Memory Usage": if key == "Total": - totalMem = val + totalMem = val.split(" ")[0] elif key == "Used": usedMem = val.split(" ")[0] elif key == "GPU Current Temp": temp = val.split(" ")[0] elif key == "Product Name": name = val + except: title = item.strip() - self._utilization = u"%s: %s°C %s/%s"%(name, temp, usedMem, totalMem) + + str_format = self.parameter("format", '{name}: {temp}°C {mem_used}/{mem_total} MiB') + self._utilization = str_format.format( + name = name, + temp = temp, + mem_used = usedMem, + mem_total = totalMem, + )