[
https://issues.apache.org/jira/browse/SYSTEMML-1662?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Glenn Weidner updated SYSTEMML-1662:
------------------------------------
Fix Version/s: (was: SystemML 1.0)
SystemML 0.15
> Extended HOP DAG validator
> --------------------------
>
> Key: SYSTEMML-1662
> URL: https://issues.apache.org/jira/browse/SYSTEMML-1662
> Project: SystemML
> Issue Type: Sub-task
> Components: Compiler
> Reporter: Matthias Boehm
> Assignee: Dylan Hutchison
> Labels: beginner
> Fix For: SystemML 0.15
>
>
> This task aims to extend the existing HOP DAG validator (see
> {{org.apache.sysml.hops.rewrite.HopDagValidator}}, which can be enabled via
> {{org.apache.sysml.hops.rewriteProgramRewriter.CHECK}}) in various ways in
> order to provide better developer tooling for checking the correctness of new
> and existing rewrites.
> So far, this validator, checks only for:
> * Correct parent node linking
> * Correct child node linking
> * Non-empty children (for all hops other than {{DataOp}} and {{LiteralOp}})
> Possible extensions include (but are not limited to):
> * Correct HOP output data types
> * Correct HOP output value types
> * Correct number of expected child nodes
> * Correct output size information wrt input sizes
> * Correct visit status
> These extensions would be very useful for multiple reasons. First, they would
> detect rewrite issues early on in the development process. This is important
> because rewrite issues usually lead to strange and non-obvious behavior of
> real application scripts. Second, the HOP DAG validator provides a systematic
> way of debugging optimizer issues. The intended future workflow is as follows:
> * 1. Disable rewrites via optimization level 1 to determine if rewrites are
> the issue.
> * 2. Use the extended {{HopDagValidator}} validator to find the source of
> corruption.
> * 3. If (2) did not find the issue, resort to low-level debugging, and extend
> the {{HopDagValidator}} to capture the root cause of the issue.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)