[ 
https://issues.apache.org/jira/browse/SYSTEMML-2166?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Matthias Boehm updated SYSTEMML-2166:
-------------------------------------
    Description: 
With SystemML 1.1 a number of new rewrites were introduced that merge sequences 
of statement blocks which appear after branch removal and function inlining. 
Although this greatly improves performance for certain workloads, it might lead 
to a reordering of operations without dependencies (such as prints) that end up 
in the consolidated DAG. SYSTEMML-2050 tried to address this by ordering of 
prints by their line numbers. Unfortunately, this works only in certain 
situations because after function lining the print line numbers do not 
correspond with the order of the original function calls. 

This task aims to resolve this behavior which might be confusing. There two 
possible approaches: either (1) assign artificial line numbers or positions 
during function lining and statement block merge, or (2) merge the DAG roots in 
order to their sequence. The second approach seems more appropriate because it 
also leaves the other operations in order, not just prints.

  was:
With SystemML 1.1 a number of new rewrites were introduced that merge sequences 
of statement blocks which appear after branch removal and function inlining. 
Although this greatly improves performance for certain workloads, it might lead 
to a reordering of operations without dependencies (such as prints) that end up 
in the consolidated DAG. SYSTEMML-2050 tries to address this by ordering of 
prints by their line numbers. Unfortunately, this works only in certain 
situations because after function lining the print line numbers do not 
correspond with the order of the original function calls. 

This task aims to resolve this behavior which might be confusing. There two 
possible approaches: either (1) assign artificial line numbers or positions 
during function lining and statement block merge, or (2) merge the DAG roots in 
order to their sequence. The second approach seems more appropriate because it 
also leaves the other operations in order, not just prints.


> Reversed print ordering after function inlining
> -----------------------------------------------
>
>                 Key: SYSTEMML-2166
>                 URL: https://issues.apache.org/jira/browse/SYSTEMML-2166
>             Project: SystemML
>          Issue Type: Bug
>            Reporter: Matthias Boehm
>            Priority: Major
>             Fix For: SystemML 1.1
>
>
> With SystemML 1.1 a number of new rewrites were introduced that merge 
> sequences of statement blocks which appear after branch removal and function 
> inlining. Although this greatly improves performance for certain workloads, 
> it might lead to a reordering of operations without dependencies (such as 
> prints) that end up in the consolidated DAG. SYSTEMML-2050 tried to address 
> this by ordering of prints by their line numbers. Unfortunately, this works 
> only in certain situations because after function lining the print line 
> numbers do not correspond with the order of the original function calls. 
> This task aims to resolve this behavior which might be confusing. There two 
> possible approaches: either (1) assign artificial line numbers or positions 
> during function lining and statement block merge, or (2) merge the DAG roots 
> in order to their sequence. The second approach seems more appropriate 
> because it also leaves the other operations in order, not just prints.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to