pyJoules
pyJoules copied to clipboard
Unable to use pyJoules on Windows Subsystem for Linux?
@altor @rouvoy @chakib-belgaid @danglotb
I have the following code snippet running on Ubuntu 20.04 on Windows Subsystem for Linux (WSL).
from pyJoules.energy_meter import measure_energy
@measure_energy
def foo():
print("HERE")
foo()
I get the following stack trace error:
WARNING:root:pynvml not found you can't use NVIDIA devices
HERE
Traceback (most recent call last):
File "test.py", line 7, in <module>
foo()
File "/home/kshivvy/venv/lib/python3.8/site-packages/pyJoules/energy_meter.py", line 298, in wrapper_measure
handler.process(energy_meter.get_trace())
File "/home/kshivvy/venv/lib/python3.8/site-packages/pyJoules/energy_meter.py", line 160, in get_trace
return self._generate_trace()
File "/home/kshivvy/venv/lib/python3.8/site-packages/pyJoules/energy_meter.py", line 169, in _generate_trace
domains = self._get_domain_list()
File "/home/kshivvy/venv/lib/python3.8/site-packages/pyJoules/energy_meter.py", line 166, in _get_domain_list
return reduce(operator.add, [device.get_configured_domains() for device in self.devices])
TypeError: reduce() of empty sequence with no initial value
Doe pyJoules support WSL? Would I need to do a full Linux partition on my laptop or buy a machine with Linux preinstalled? Or is there an alternative way to profile energy used by specific lines of code?
Thanks, Keshav