Matthias Boehm created SYSTEMML-1871:
----------------------------------------
Summary: Rework compiler/runtime predicate handling
Key: SYSTEMML-1871
URL: https://issues.apache.org/jira/browse/SYSTEMML-1871
Project: SystemML
Issue Type: Sub-task
Reporter: Matthias Boehm
Currently, the handling of if, while, and for predicates exhibits a couple of
shortcomings. First, there are different representations for operations (as
single-root HOP DAGs) and literals (as dedicated constants). Second, the
runtime has to explicitly find intermediate variable names, remove rmvar
instructions, which is brittle and error-prone. Third, the special handling of
operations vs literals renders constant folding during dynamic recompilation
invalid because, we would have to handle the transitioning from operation DAGs
to constants accordingly.
This task aims to resolve all these issues, by properly compiling transient
writes to special predicate variables (e.g., _pred that are guaranteed not to
conflict with external variables). This requires a complete rework of the
entire predicate handling during compilation and runtime.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)