From 40f0ab85d72714e9feb5e765ebf05073ca7971c1 Mon Sep 17 00:00:00 2001 From: Brendan Jackman Date: Tue, 28 Mar 2017 14:53:40 +0100 Subject: [PATCH 1/2] energy_model: Add type notes to PowerDomain constructor docstring --- libs/utils/energy_model.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libs/utils/energy_model.py b/libs/utils/energy_model.py index d5fbb2ec9..287fed781 100644 --- a/libs/utils/energy_model.py +++ b/libs/utils/energy_model.py @@ -192,8 +192,11 @@ class PowerDomain(_CpuTree): not store power data - these names are used as keys into the ``idle_states`` field of :class:`EnergyModelNode` objects. + :type idle_states: list(str) :param cpu: The CPU this node represents. If provided, this is a leaf node. + :type cpu: int :param children: Non-empty list of child :class:`PowerDomain` objects + :type children: list(PowerDomain) :ivar cpus: CPUs contained in this node. Includes those of child nodes. :type cpus: tuple(int) -- GitLab From 5cae904f83166e65b09f68e12bf1c7ebf05d902c Mon Sep 17 00:00:00 2001 From: Brendan Jackman Date: Tue, 28 Mar 2017 14:56:33 +0100 Subject: [PATCH 2/2] energy_model: Don't allow idle_states=None in PowerDomain class This will cause an error in EnergyModel._guess_idle_states. Should use [] instead. --- libs/utils/energy_model.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libs/utils/energy_model.py b/libs/utils/energy_model.py index 287fed781..7517dd24c 100644 --- a/libs/utils/energy_model.py +++ b/libs/utils/energy_model.py @@ -202,6 +202,8 @@ class PowerDomain(_CpuTree): :type cpus: tuple(int) """ def __init__(self, idle_states, cpu=None, children=None): + if idle_states is None: + raise ValueError('idle_states cannot be None (but may be empty)') super(PowerDomain, self).__init__(cpu, children) self.idle_states = idle_states -- GitLab