public class LibMatrixAgg extends Object
Modifier and Type | Method and Description |
---|---|
static void |
aggregateBinaryMatrix(MatrixBlock in,
MatrixBlock aggVal,
org.apache.sysml.runtime.matrix.operators.AggregateOperator aop)
Core incremental matrix aggregate (ak+) as used for uack+ and acrk+.
|
static void |
aggregateBinaryMatrix(MatrixBlock in,
MatrixBlock aggVal,
MatrixBlock aggCorr,
boolean deep)
Core incremental matrix aggregate (ak+) as used in mapmult, tsmm,
cpmm, etc.
|
static MatrixBlock |
aggregateTernary(MatrixBlock in1,
MatrixBlock in2,
MatrixBlock in3,
MatrixBlock ret,
org.apache.sysml.runtime.matrix.operators.AggregateTernaryOperator op) |
static MatrixBlock |
aggregateTernary(MatrixBlock in1,
MatrixBlock in2,
MatrixBlock in3,
MatrixBlock ret,
org.apache.sysml.runtime.matrix.operators.AggregateTernaryOperator op,
int k) |
static void |
aggregateUnaryMatrix(MatrixBlock in,
MatrixBlock out,
org.apache.sysml.runtime.matrix.operators.AggregateUnaryOperator uaop) |
static void |
aggregateUnaryMatrix(MatrixBlock in,
MatrixBlock out,
org.apache.sysml.runtime.matrix.operators.AggregateUnaryOperator uaop,
int k) |
static void |
countAgg(double[] a,
int[] c,
int[] aix,
int ai,
int len) |
static void |
countAgg(double[] a,
int[] c,
int ai,
int len) |
static MatrixBlock |
cumaggregateUnaryMatrix(MatrixBlock in,
MatrixBlock out,
org.apache.sysml.runtime.matrix.operators.UnaryOperator uop) |
static MatrixBlock |
cumaggregateUnaryMatrix(MatrixBlock in,
MatrixBlock out,
org.apache.sysml.runtime.matrix.operators.UnaryOperator uop,
int k) |
static void |
groupedAggregate(MatrixBlock groups,
MatrixBlock target,
MatrixBlock weights,
MatrixBlock result,
int numGroups,
org.apache.sysml.runtime.matrix.operators.Operator op) |
static void |
groupedAggregate(MatrixBlock groups,
MatrixBlock target,
MatrixBlock weights,
MatrixBlock result,
int numGroups,
org.apache.sysml.runtime.matrix.operators.Operator op,
int k) |
static boolean |
isSupportedUnaryAggregateOperator(org.apache.sysml.runtime.matrix.operators.AggregateUnaryOperator op) |
static boolean |
isSupportedUnaryOperator(org.apache.sysml.runtime.matrix.operators.UnaryOperator op) |
static void |
recomputeIndexes(MatrixBlock out,
org.apache.sysml.runtime.matrix.operators.AggregateUnaryOperator op,
int brlen,
int bclen,
MatrixIndexes ix)
Recompute outputs (e.g., maxindex or minindex) according to block indexes from MR.
|
static boolean |
satisfiesMultiThreadingConstraints(MatrixBlock in,
MatrixBlock out,
org.apache.sysml.runtime.matrix.operators.AggregateUnaryOperator uaop,
int k) |
public static void aggregateBinaryMatrix(MatrixBlock in, MatrixBlock aggVal, MatrixBlock aggCorr, boolean deep)
in
- input matrixaggVal
- current aggregate values (in/out)aggCorr
- current aggregate correction (in/out)deep
- deep copy flagpublic static void aggregateBinaryMatrix(MatrixBlock in, MatrixBlock aggVal, org.apache.sysml.runtime.matrix.operators.AggregateOperator aop)
in
- matrix blockaggVal
- aggregate operatoraop
- aggregate operatorpublic static void aggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, org.apache.sysml.runtime.matrix.operators.AggregateUnaryOperator uaop)
public static void aggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, org.apache.sysml.runtime.matrix.operators.AggregateUnaryOperator uaop, int k)
public static MatrixBlock cumaggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, org.apache.sysml.runtime.matrix.operators.UnaryOperator uop)
public static MatrixBlock cumaggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, org.apache.sysml.runtime.matrix.operators.UnaryOperator uop, int k)
public static MatrixBlock aggregateTernary(MatrixBlock in1, MatrixBlock in2, MatrixBlock in3, MatrixBlock ret, org.apache.sysml.runtime.matrix.operators.AggregateTernaryOperator op)
public static MatrixBlock aggregateTernary(MatrixBlock in1, MatrixBlock in2, MatrixBlock in3, MatrixBlock ret, org.apache.sysml.runtime.matrix.operators.AggregateTernaryOperator op, int k)
public static void groupedAggregate(MatrixBlock groups, MatrixBlock target, MatrixBlock weights, MatrixBlock result, int numGroups, org.apache.sysml.runtime.matrix.operators.Operator op)
public static void groupedAggregate(MatrixBlock groups, MatrixBlock target, MatrixBlock weights, MatrixBlock result, int numGroups, org.apache.sysml.runtime.matrix.operators.Operator op, int k)
public static boolean isSupportedUnaryAggregateOperator(org.apache.sysml.runtime.matrix.operators.AggregateUnaryOperator op)
public static boolean isSupportedUnaryOperator(org.apache.sysml.runtime.matrix.operators.UnaryOperator op)
public static boolean satisfiesMultiThreadingConstraints(MatrixBlock in, MatrixBlock out, org.apache.sysml.runtime.matrix.operators.AggregateUnaryOperator uaop, int k)
public static void recomputeIndexes(MatrixBlock out, org.apache.sysml.runtime.matrix.operators.AggregateUnaryOperator op, int brlen, int bclen, MatrixIndexes ix)
out
- matrix blockop
- aggregate unary operatorbrlen
- number of rows in a blockbclen
- number of columns in a blockix
- matrix indexespublic static void countAgg(double[] a, int[] c, int[] aix, int ai, int len)
public static void countAgg(double[] a, int[] c, int ai, int len)
Copyright © 2018 The Apache Software Foundation. All rights reserved.