lisa.wlgen.rta.Pulse#
- class lisa.wlgen.rta.Pulse(start_pct=100, end_pct=0, time_s=1, period_ms=100, delay_s=0, loops=1, sched_policy=None, priority=None, cpus=None, uclamp_min=None, uclamp_max=None, numa_nodes_membind=None, **kwargs)[source]#
Bases:
RTAPhaseTree
Configure a pulse load.
This class defines a task which load is a pulse with a configured initial and final load.
The main difference with the ‘step’ class is that a pulse workload is by definition a ‘step down’, i.e. the workload switch from an initial load to a final one which is always lower than the initial one. Moreover, a pulse load does not generate a sleep phase in case of 0[%] load, i.e. the task ends as soon as the non null initial load has completed.
- Parameters:
See also
See
RTATask
for the documentation of the following parameters:delay_s
loops
sched_policy
priority
See also
See
Phase
for the documentation of the following parameters:cpus
uclamp_min
uclamp_max
numa_nodes_membind
Deprecated since version 2.0.
Pulse
is deprecated and will be removed in version 4.0, uselisa.wlgen.rta.RTAPhase
insteadAttributes
__reversed__
inheritedSee
collections.abc.Mapping.__reversed__
Properties
children
inheritedTree levels are transparent and their children expanded directly in their parent, as long as they have no properties on their own that could change the output of
topo_sort()
. This allows nestedRTAPhaseTree
to act as if it was just a flat node, which is useful since repeated composition with+
operator will give nested binary trees like that.is_empty
inheritedTrue
if the phase has no content and will result in an empty JSON phase(s).phases
inheritedTopological sort of the phases in the tree, with the properties merged along each path from the root to the leaves.
Methods
Update the docstring used as a
str.format()
template with the following keys:.HASH_COERCE()
inheritedUsed to coerce the values of
self.__dict__
to hashable values.__add__()
inheritedCompose two phases together by running one after the other.
__await__()
inherited__class_getitem__()
inheritedSee
collections.abc.Iterable.__class_getitem__()
__contains__()
inheritedSee
collections.abc.Mapping.__contains__()
__getitem__()
inheritedLookup the value of the given property on that phase.
__iter__()
inherited__len__()
inherited__mul__()
inheritedMultiply the phase by
n
, in order to repeat it.__rmul__()
inheritedget()
inheritedSee
collections.abc.Mapping.get()
get_rtapp_repr()
inheritedrt-app JSON representation of the phase.
items()
inheritedSee
collections.abc.Mapping.items()
keys()
inheritedSee
collections.abc.Mapping.keys()
split_prop_kwargs()
inheritedSplit the
kwargs
into two categories:.topo_sort()
inheritedTopological sort of the tree, and combine the properties along each path from root to leaves at the same time.
values()
inheritedSee
collections.abc.Mapping.values()
with_delete_props()
inheritedDelete all the given property names, equivalent to
with_props(foo=delete())
.with_phase_properties()
inheritedReturn a cloned instance with the properties combined with the given
properties
usingRTAPhaseProperties.__and__()
(&
). Theproperties
parameter is the left operand. Ifproperties
isNone
, just return the phase itself.with_properties_map()
inheritedSame as
with_phase_properties()
but withproperties
passed toRTAPhaseProperties.from_polymorphic()
first.with_props()
inheritedSame as
with_phase_properties()
but using keyword arguments to set each property. The resulting dictionary is passed toRTAPhaseProperties.from_polymorphic()
first.
Attributes#
- Pulse.__reversed__ = None#
Properties#
- property Pulse.delay_s#
- property Pulse.loops#
- property Pulse.priority#
- property Pulse.sched_policy#
- property Pulse.children#
Inherited property, see
lisa.wlgen.rta.RTAPhaseTree.children
Tree levels are transparent and their children expanded directly in their parent, as long as they have no properties on their own that could change the output of
topo_sort()
. This allows nestedRTAPhaseTree
to act as if it was just a flat node, which is useful since repeated composition with+
operator will give nested binary trees like that.
- property Pulse.is_empty#
Inherited property, see
lisa.wlgen.rta.RTAPhaseTree.is_empty
True
if the phase has no content and will result in an empty JSON phase(s).
- property Pulse.phases#
Inherited property, see
lisa.wlgen.rta.RTAPhaseTree.phases
Topological sort of the phases in the tree, with the properties merged along each path from the root to the leaves.
Methods#
- Pulse.__init_subclass__()#
Update the docstring used as a
str.format()
template with the following keys:{prop_kwargs}
: replaced by the Sphinx-friendly list of “prop_*” keyword arguments
- Pulse.HASH_COERCE(x, coerce)#
Inherited method, see
lisa.utils.SimpleHash.HASH_COERCE()
Used to coerce the values of
self.__dict__
to hashable values.
- Pulse.__add__(other)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__add__()
Compose two phases together by running one after the other.
- Pulse.__await__()#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__await__()
- classmethod Pulse.__class_getitem__()#
Inherited method, see
collections.abc.Iterable.__class_getitem__()
- Pulse.__contains__()#
Inherited method, see
collections.abc.Mapping.__contains__()
- Pulse.__getitem__(key)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__getitem__()
Lookup the value of the given property on that phase.
- Pulse.__iter__()#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__iter__()
- Pulse.__len__()#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__len__()
- Pulse.__mul__(n)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__mul__()
Multiply the phase by
n
, in order to repeat it.
- Pulse.__rmul__(n)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__rmul__()
- Pulse.get()#
Inherited method, see
collections.abc.Mapping.get()
- Pulse.get_rtapp_repr(task_name, plat_info, force_defaults=False, no_force_default_keys=None, **kwargs)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseTree.get_rtapp_repr()
rt-app JSON representation of the phase.
- Pulse.items()#
Inherited method, see
collections.abc.Mapping.items()
- Pulse.keys()#
Inherited method, see
collections.abc.Mapping.keys()
- static Pulse.split_prop_kwargs(kwargs, properties=None)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.split_prop_kwargs()
Split the
kwargs
into two categories:.
- Pulse.topo_sort()#
Inherited method, see
lisa.wlgen.rta.RTAPhaseTree.topo_sort()
Topological sort of the tree, and combine the properties along each path from root to leaves at the same time.
- Pulse.values()#
Inherited method, see
collections.abc.Mapping.values()
- Pulse.with_delete_props(properties)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.with_delete_props()
Delete all the given property names, equivalent to
with_props(foo=delete())
.
- Pulse.with_phase_properties(properties)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.with_phase_properties()
Return a cloned instance with the properties combined with the given
properties
usingRTAPhaseProperties.__and__()
(&
). Theproperties
parameter is the left operand. Ifproperties
isNone
, just return the phase itself.
- Pulse.with_properties_map(properties, **kwargs)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.with_properties_map()
Same as
with_phase_properties()
but withproperties
passed toRTAPhaseProperties.from_polymorphic()
first.
- Pulse.with_props(**kwargs)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.with_props()
Same as
with_phase_properties()
but using keyword arguments to set each property. The resulting dictionary is passed toRTAPhaseProperties.from_polymorphic()
first.