PyConf compatibility with Multi Event Scheduler
This MR adds some functionality to work with the MES introduced in Allen!429 (merged).
-
aggregates
in Allen work with optional inputs (a bit like the MergingTransformer), therefore_is_optional
was introduced to check for that. It is used with theall_producers
function with aninclude_optionals
flag. The all_inputs function branches too often (without caching) to be able to use it in theall_producers
function. -
mask_t
type inputs in Allen algorithms are control flow inputs. They will be met by mask algorithms compiling the event list to run on. Therefore they are to be excluded from the data dependency checks. -
Add
avrg_efficiency
andweight
as members to the algorithm, to be able to determine good orders of algorithms in the MES -
uses_and
,uses_or
.. convenience methods for the compositenode -
force_order = False
means that the MES can check permutations of orders to see what works better. therefore, the check to haveforce_order == True
when being lazy gets in the way.
Goes with Moore!810 (merged)