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)