You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@systemml.apache.org by "Matthias Boehm (JIRA)" <ji...@apache.org> on 2017/10/27 05:03:00 UTC

[jira] [Closed] (SYSTEMML-1963) ALS-CG fails w/ codegen fuse-all heuristic optimizer

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

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

> ALS-CG fails w/ codegen fuse-all heuristic optimizer
> ----------------------------------------------------
>
>                 Key: SYSTEMML-1963
>                 URL: https://issues.apache.org/jira/browse/SYSTEMML-1963
>             Project: SystemML
>          Issue Type: Bug
>            Reporter: Matthias Boehm
>            Assignee: Matthias Boehm
>             Fix For: SystemML 1.0
>
>
> When using the heuristic fuse-all codegen optimizer, ALS-CG fails on compiling the following operator:
> {code}
> public final class TMP24 extends SpoofRowwise {
>   public TMP24() {
>     super(RowType.FULL_AGG, -1, false, 3);
>   }
>   protected void genexec(double[] a, int ai, SideInput[] b, double[] scalars, double[] c, int len, int rix) {
>     double[] TMP14 = LibSpoofPrimitives.vectNotequalWrite(a, 0, ai, len);
>     double[] TMP15 = LibSpoofPrimitives.vectMinusWrite(b[0].values(rix), a, b[0].pos(rix), ai, b[0].clen);
>     double[] TMP16 = LibSpoofPrimitives.vectPowWrite(TMP15, 2, 0, TMP15.length);
>     double[] TMP17 = LibSpoofPrimitives.vectMultWrite(TMP14, TMP16, 0, 0, TMP14.length);
>     double TMP18 = LibSpoofPrimitives.vectSum(TMP17, 0, TMP17.length);
>     c[0] += TMP18;
>   }
>   protected void genexec(double[] avals, int[] aix, int ai, SideInput[] b, double[] scalars, double[] c, int alen, int len, int rix) {
>     double[] TMP19 = LibSpoofPrimitives.vectNotequalWrite(avals, 0, aix, ai, alen, len);
>     double[] TMP20 = LibSpoofPrimitives.vectMinusWrite(b[0]vals, a, b[0]ix, b[0].pos(rix), ai, alen, b[0].clen);
>     double[] TMP21 = LibSpoofPrimitives.vectPowWrite(TMP20, 2, 0, TMP20.length);
>     double[] TMP22 = LibSpoofPrimitives.vectMultWrite(TMP19, TMP21, 0, 0, TMP19.length);
>     double TMP23 = LibSpoofPrimitives.vectSum(TMP22, 0, TMP22.length);
>     c[0] += TMP23;
>   }
> }
> {code}



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