moltenbar/mod/gpu

29 lines
622 B
Plaintext
Raw Normal View History

# vim: ft=ruby
class GPU < Worker
require 'open3'
def mainloop()
while true do
Open3.popen2("nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader") {|i,o,t|
gpu_temp = o.gets.to_i
if gpu_temp > @my_config['temp_crit'].to_i
fg_colour = "crit_colour"
elsif gpu_temp > @my_config['temp_warn'].to_i
fg_colour = "warn_colour"
else
fg_colour = "ok_colour"
end
rstr = "%%{FC{%s}}%s%%{F-}" % [ fg_colour, gpu_temp ]
self.write(rstr)
}
sleep(1)
end
end
end
Modules.add("gpu", "GPU")