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

Matthias Boehm closed SYSTEMML-2040.
------------------------------------
       Resolution: Fixed
         Assignee: Matthias Boehm
    Fix Version/s: SystemML 1.0

> Repeated IPA function inling leads to replicated prints
> -------------------------------------------------------
>
>                 Key: SYSTEMML-2040
>                 URL: https://issues.apache.org/jira/browse/SYSTEMML-2040
>             Project: SystemML
>          Issue Type: Bug
>            Reporter: Matthias Boehm
>            Assignee: Matthias Boehm
>             Fix For: SystemML 1.0
>
>
> Due to multiple rounds of IPA with a reused function call graph, the same 
> function is inlined multiple times leading to replication of operations. For 
> most types of operations, common-subexpression elimination removes this 
> redundancy, but for prints and rand without seeds this leads to unnecessary 
> redundancy. For example,
> {code}
> s = "Debug info: " + sum(matrix(1,10,10))
> z = foo(s);
> foo = function(String msg) return (boolean flag) {
>     is_debug = TRUE;
>     if( is_debug ) {
>         print(msg); flag = TRUE;
>     } 
>     else {
>         flag = FALSE;
>     }   
> }
> {code}
> generates the following runtime plan with 3 replicated prints
> {code}
> PROGRAM
> --MAIN PROGRAM
> ----GENERIC (lines 1-2) [recompile=false]
> ------(19) dg(rand) [10,10,1000,1000,100] [0,0,0 -> 0MB], CP
> ------(20) ua(+RC) (19) [0,0,-1,-1,-1] [0,0,0 -> 0MB], CP
> ------(21) b(+) (20) [0,0,-1,-1,-1] [0,0,0 -> 0MB], CP
> ------(5) u(print) (21) [-1,-1,-1,-1,-1] [0,0,0 -> 0MB]
> ------(7) TWrite z [0,0,-1,-1,-1] [0,0,0 -> 0MB], CP
> ------(5) u(print) (21) [-1,-1,-1,-1,-1] [0,0,0 -> 0MB]
> ------(7) TWrite z [0,0,-1,-1,-1] [0,0,0 -> 0MB], CP
> ------(5) u(print) (21) [-1,-1,-1,-1,-1] [0,0,0 -> 0MB]
> ------(7) TWrite z [0,0,-1,-1,-1] [0,0,0 -> 0MB], CP
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to