Reference Guide
2.5.0
|
Public Member Functions | |
def | __init__ (self, name, KernFactory, BuiltInFactory, alg_calls=None, reserved_names=None, **kwargs) |
def | symbol_table (self) |
def | invoke (self) |
def | invoke (self, my_invoke) |
def | node_str (self, colour=True) |
def | __str__ (self) |
def | gen_code (self, parent) |
Stores schedule information for an invocation call. Schedules can be optimised using transformations. >>> from psyclone.parse.algorithm import parse >>> ast, info = parse("algorithm.f90") >>> from psyclone.psyGen import PSyFactory >>> api = "..." >>> psy = PSyFactory(api).create(info) >>> invokes = psy.invokes >>> invokes.names >>> invoke = invokes.get("name") >>> schedule = invoke.schedule >>> print(schedule.view()) :param str name: name of the Invoke. :param type KernFactory: class instance of the factory to use when \ creating Kernels. e.g. \ :py:class:`psyclone.domain.lfric.LFRicKernCallFactory`. :param type BuiltInFactory: class instance of the factory to use when \ creating built-ins. e.g. \ :py:class:`psyclone.domain.lfric.lfric_builtins.LFRicBuiltInCallFactory`. :param alg_calls: list of Kernel calls in the schedule. :type alg_calls: list of :py:class:`psyclone.parse.algorithm.KernelCall` :param kwargs: additional keyword arguments provided to the super class. :type kwargs: unwrapped dict.
def psyclone.psyGen.InvokeSchedule.gen_code | ( | self, | |
parent | |||
) |
Generate the Nodes in the f2pygen AST for this schedule. :param parent: the parent Node (i.e. the enclosing subroutine) to \ which to add content. :type parent: :py:class:`psyclone.f2pygen.SubroutineGen`
Definition at line 754 of file psyGen.py.
References psyclone.f2pygen.BaseGen.children(), psyclone.psyGen.InlinedKern.children, psyclone.psyir.nodes.node.Node.children(), psyclone.psyGen.InvokeSchedule.symbol_table(), and psyclone.psyir.nodes.scoping_node.ScopingNode.symbol_table.
def psyclone.psyGen.InvokeSchedule.node_str | ( | self, | |
colour = True |
|||
) |
Returns the name of this node with appropriate control codes to generate coloured output in a terminal that supports it. :param bool colour: whether or not to include colour control codes. :returns: description of this node, possibly coloured. :rtype: str
Reimplemented in psyclone.domain.lfric.lfric_invoke_schedule.LFRicInvokeSchedule.
Definition at line 735 of file psyGen.py.
References psyclone.f2pygen.BaseGen._children, psyclone.psyir.nodes.node.Node._children, psyclone.psyir.nodes.omp_directives.OMPParallelDirective._children, and psyclone.psyir.nodes.node.Node.coloured_name().
def psyclone.psyGen.InvokeSchedule.symbol_table | ( | self | ) |
:returns: Table containing symbol information for the schedule. :rtype: :py:class:`psyclone.psyir.symbols.SymbolTable`
Definition at line 720 of file psyGen.py.
References psyclone.domain.lfric.lfric_collection.LFRicCollection._invoke, psyclone.nemo.NemoInvokeSchedule._invoke, psyclone.psyGen.InvokeSchedule._invoke, psyclone.domain.lfric.lfric_collection.LFRicCollection._symbol_table, psyclone.dynamo0p3.DynMeshes._symbol_table, psyclone.dynamo0p3.HaloDepth._symbol_table, psyclone.psyGen.HaloExchange._symbol_table, psyclone.psyir.backend.sympy_writer.SymPyWriter._symbol_table, and psyclone.psyir.nodes.scoping_node.ScopingNode._symbol_table.