Skip to content

Commit 4e0a80e

Browse files
Merge pull request #198 from KernelTuner/powersensor3
update to interface used by PowerSensor3
2 parents 78f5130 + 5fb84bc commit 4e0a80e

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

kernel_tuner/observers/powersensor.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,17 @@
22

33
from kernel_tuner.observers.observer import BenchmarkObserver
44

5-
# check if power_sensor is installed
5+
# check if powersensor is installed
66
try:
7-
import power_sensor
7+
import powersensor
88
except ImportError:
9-
power_sensor = None
9+
powersensor = None
1010

1111

1212
class PowerSensorObserver(BenchmarkObserver):
1313
"""Observer that an external PowerSensor2 device to accurately measure power
1414
15-
Requires PowerSensor2 hardware and power_sensor Python bindings.
15+
Requires PowerSensor2 hardware and powersensor Python bindings.
1616
1717
:param observables: A list of string, containing any of "ps_energy" or "ps_power".
1818
To measure energy in Joules or power consumption in Watt.
@@ -25,8 +25,8 @@ class PowerSensorObserver(BenchmarkObserver):
2525
"""
2626

2727
def __init__(self, observables=None, device=None):
28-
if not power_sensor:
29-
raise ImportError("could not import power_sensor")
28+
if not powersensor:
29+
raise ImportError("could not import powersensor")
3030

3131
supported = ["ps_energy", "ps_power"]
3232
for obs in observables:
@@ -35,18 +35,18 @@ def __init__(self, observables=None, device=None):
3535
self.observables = observables or ["ps_energy"]
3636

3737
device = device or "/dev/ttyACM0"
38-
self.ps = power_sensor.PowerSensor(device)
38+
self.ps = powersensor.PowerSensor(device)
3939

4040
self.begin_state = None
41-
self.results = {"ps_energy": [], "ps_power": []}
41+
self.results = {key: [] for key in self.observables}
4242

4343
def after_start(self):
4444
self.begin_state = self.ps.read()
4545

4646
def after_finish(self):
4747
end_state = self.ps.read()
4848
if "ps_energy" in self.observables:
49-
ps_measured_e = power_sensor.Joules(
49+
ps_measured_e = powersensor.Joules(
5050
self.begin_state, end_state, -1
5151
) # Joules
5252
self.results["ps_energy"].append(ps_measured_e)
@@ -58,5 +58,5 @@ def after_finish(self):
5858

5959
def get_results(self):
6060
averages = {key: np.average(values) for key, values in self.results.items()}
61-
self.results = {"ps_energy": [], "ps_power": []}
61+
self.results = {key: [] for key in self.observables}
6262
return averages

0 commit comments

Comments
 (0)