lisa.wlgen.rta.ParametricPhase#
- class lisa.wlgen.rta.ParametricPhase(template=None, properties=None, **kwargs)[source]#
Bases:
RTAPhaseTreeBase class for phases with special behavior beyond their properties.
- Parameters:
template (RTAPhaseBase) – Template phase used to create children.
properties (dict(str, object)) – Properties to set for that phase.
prop_cpus (set(int) or None or lisa.wlgen.rta.CPUProperty) – CPU affinity property.
prop_dl_deadline (int or lisa.wlgen.rta.DeadlineDeadlineProperty) –
SCHED_DEADLINEscheduler policy’s deadline property.prop_dl_period (int or lisa.wlgen.rta.DeadlinePeriodProperty) –
SCHED_DEADLINEscheduler policy’s period property.prop_dl_runtime (int or lisa.wlgen.rta.DeadlineRuntimeProperty) –
SCHED_DEADLINEscheduler policy’s runtime property or, since Linux 6.12,SCHED_OTHERscheduler policy’s custom slice length.prop_meta (dict or lisa.wlgen.rta.MetaStoreProperty) – Plain key-value storage to be used as the user see fit.
prop_name (str or lisa.wlgen.rta.NameProperty) – Name the phase.
prop_numa_nodes_membind (set(int) or None or lisa.wlgen.rta.NUMAMembindProperty) – NUMA node membind property.
prop_policy (str or lisa.wlgen.rta.PolicyProperty) – Scheduler policy property.
prop_priority (int or lisa.wlgen.rta.PriorityProperty) – Task scheduler priority property.
prop_taskgroup (str or lisa.wlgen.rta.TaskGroupProperty) – Task group property.
prop_uclamp (tuple(int or None, int or None) or UclampProperty or lisa.wlgen.rta.UclampProperty) – Set util clamp (uclamp) values.
prop_wload (lisa.wlgen.rta.WloadPropertyBase) – Phase workload.
- Variable keyword arguments:
Forwarded to
_make_children().
Extra behaviour is enabled by allowing this phase to have multiple children created based on the parameters.
Classes
If no template is passed, an instance of this class will be used as template.
Attributes
__reversed__inheritedSee
collections.abc.Mapping.__reversed__Properties
childreninheritedTree 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 nestedRTAPhaseTreeto 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_emptyinheritedTrueif the phase has no content and will result in an empty JSON phase(s).phasesinheritedTopological sort of the phases in the tree, with the properties merged along each path from the root to the leaves.
Methods
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.
__init_subclass__()inheritedUpdate the docstring used as a
str.format()template with the following keys:.__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
kwargsinto 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
propertiesusingRTAPhaseProperties.__and__()(&). Thepropertiesparameter is the left operand. IfpropertiesisNone, just return the phase itself.with_properties_map()inheritedSame as
with_phase_properties()but withpropertiespassed 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.
Classes#
Attributes#
- ParametricPhase.__reversed__ = None#
Properties#
- property ParametricPhase.children#
Inherited property, see
lisa.wlgen.rta.RTAPhaseTree.childrenTree 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 nestedRTAPhaseTreeto 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 ParametricPhase.is_empty#
Inherited property, see
lisa.wlgen.rta.RTAPhaseTree.is_emptyTrueif the phase has no content and will result in an empty JSON phase(s).
- property ParametricPhase.phases#
Inherited property, see
lisa.wlgen.rta.RTAPhaseTree.phasesTopological sort of the phases in the tree, with the properties merged along each path from the root to the leaves.
Methods#
- ParametricPhase.HASH_COERCE(x, coerce)#
Inherited method, see
lisa.utils.SimpleHash.HASH_COERCE()Used to coerce the values of
self.__dict__to hashable values.
- ParametricPhase.__add__(other)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__add__()Compose two phases together by running one after the other.
- ParametricPhase.__await__()#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__await__()
- classmethod ParametricPhase.__class_getitem__()#
Inherited method, see
collections.abc.Iterable.__class_getitem__()
- ParametricPhase.__contains__()#
Inherited method, see
collections.abc.Mapping.__contains__()
- ParametricPhase.__getitem__(key)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__getitem__()Lookup the value of the given property on that phase.
- classmethod ParametricPhase.__init_subclass__(**kwargs)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__init_subclass__()Update the docstring used as a
str.format()template with the following keys:.
- ParametricPhase.__iter__()#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__iter__()
- ParametricPhase.__len__()#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__len__()
- ParametricPhase.__mul__(n)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__mul__()Multiply the phase by
n, in order to repeat it.
- ParametricPhase.__rmul__(n)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__rmul__()
- ParametricPhase.get()#
Inherited method, see
collections.abc.Mapping.get()
- ParametricPhase.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.
- ParametricPhase.items()#
Inherited method, see
collections.abc.Mapping.items()
- ParametricPhase.keys()#
Inherited method, see
collections.abc.Mapping.keys()
- static ParametricPhase.split_prop_kwargs(kwargs, properties=None)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.split_prop_kwargs()Split the
kwargsinto two categories:.
- ParametricPhase.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.
- ParametricPhase.values()#
Inherited method, see
collections.abc.Mapping.values()
- ParametricPhase.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()).
- ParametricPhase.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
propertiesusingRTAPhaseProperties.__and__()(&). Thepropertiesparameter is the left operand. IfpropertiesisNone, just return the phase itself.
- ParametricPhase.with_properties_map(properties, **kwargs)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.with_properties_map()Same as
with_phase_properties()but withpropertiespassed toRTAPhaseProperties.from_polymorphic()first.
- ParametricPhase.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.