You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@systemml.apache.org by mb...@apache.org on 2018/03/24 05:18:41 UTC
[08/10] systemml git commit: [SYSTEMML-2191] Cleanup exception
hierarchy and handling, part 1
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteAlgebraicSimplificationDynamic.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteAlgebraicSimplificationDynamic.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteAlgebraicSimplificationDynamic.java
index 89e2146..ae5bda3 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteAlgebraicSimplificationDynamic.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteAlgebraicSimplificationDynamic.java
@@ -38,7 +38,6 @@ import org.apache.sysml.hops.Hop.OpOp3;
import org.apache.sysml.hops.Hop.OpOp4;
import org.apache.sysml.hops.Hop.ParamBuiltinOp;
import org.apache.sysml.hops.Hop.ReOrgOp;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.IndexingOp;
import org.apache.sysml.hops.LeftIndexingOp;
import org.apache.sysml.hops.LiteralOp;
@@ -87,9 +86,7 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
private static OpOp2[] LOOKUP_VALID_WUMM_BINARY = new OpOp2[]{OpOp2.MULT, OpOp2.POW};
@Override
- public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
- throws HopsException
- {
+ public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state) {
if( roots == null )
return roots;
@@ -107,9 +104,7 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
@Override
- public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
- throws HopsException
- {
+ public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state) {
if( root == null )
return root;
@@ -133,10 +128,8 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
*
* @param hop high-level operator
* @param descendFirst true if recursively process children first
- * @throws HopsException if HopsException occurs
*/
private void rule_AlgebraicSimplification(Hop hop, boolean descendFirst)
- throws HopsException
{
if(hop.isVisited())
return;
@@ -207,7 +200,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop removeEmptyRightIndexing(Hop parent, Hop hi, int pos)
- throws HopsException
{
if( hi instanceof IndexingOp && hi.getDataType()==DataType.MATRIX ) //indexing op
{
@@ -245,7 +237,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop removeEmptyLeftIndexing(Hop parent, Hop hi, int pos)
- throws HopsException
{
if( hi instanceof LeftIndexingOp && hi.getDataType() == DataType.MATRIX ) //left indexing op
{
@@ -449,7 +440,7 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
return hi;
}
- private static Hop removeUnnecessaryIfElseOperation(Hop parent, Hop hi, int pos) throws HopsException
+ private static Hop removeUnnecessaryIfElseOperation(Hop parent, Hop hi, int pos)
{
if( !HopRewriteUtils.isTernary(hi, OpOp3.IFELSE) )
return hi;
@@ -530,9 +521,7 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
@SuppressWarnings("unchecked")
- private static Hop simplifyColwiseAggregate( Hop parent, Hop hi, int pos )
- throws HopsException
- {
+ private static Hop simplifyColwiseAggregate( Hop parent, Hop hi, int pos ) {
if( hi instanceof AggUnaryOp )
{
AggUnaryOp uhi = (AggUnaryOp)hi;
@@ -594,9 +583,7 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
@SuppressWarnings("unchecked")
- private static Hop simplifyRowwiseAggregate( Hop parent, Hop hi, int pos )
- throws HopsException
- {
+ private static Hop simplifyRowwiseAggregate( Hop parent, Hop hi, int pos ) {
if( hi instanceof AggUnaryOp )
{
AggUnaryOp uhi = (AggUnaryOp)hi;
@@ -661,7 +648,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyColSumsMVMult( Hop parent, Hop hi, int pos )
- throws HopsException
{
//colSums(X*Y) -> t(Y) %*% X, if Y col vector; additional transpose later
//removed by other rewrite if unnecessary, i.e., if Y==t(Z)
@@ -697,7 +683,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyRowSumsMVMult( Hop parent, Hop hi, int pos )
- throws HopsException
{
//rowSums(X * Y) -> X %*% t(Y), if Y row vector; additional transpose later
//removed by other rewrite if unnecessary, i.e., if Y==t(Z)
@@ -733,7 +718,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyUnnecessaryAggregate(Hop parent, Hop hi, int pos)
- throws HopsException
{
//e.g., sum(X) -> as.scalar(X) if 1x1 (applies to sum, min, max, prod, trace)
if( hi instanceof AggUnaryOp && ((AggUnaryOp)hi).getDirection()==Direction.RowCol )
@@ -760,7 +744,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyEmptyAggregate(Hop parent, Hop hi, int pos)
- throws HopsException
{
if( hi instanceof AggUnaryOp )
{
@@ -790,7 +773,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyEmptyUnaryOperation(Hop parent, Hop hi, int pos)
- throws HopsException
{
if( hi instanceof UnaryOp )
{
@@ -815,7 +797,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyEmptyReorgOperation(Hop parent, Hop hi, int pos)
- throws HopsException
{
if( hi instanceof ReorgOp )
{
@@ -857,7 +838,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyEmptySortOperation(Hop parent, Hop hi, int pos)
- throws HopsException
{
//order(X, indexreturn=FALSE) -> matrix(0,nrow(X),1)
//order(X, indexreturn=TRUE) -> seq(1,nrow(X),1)
@@ -895,9 +875,7 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
return hi;
}
- private static Hop simplifyEmptyMatrixMult(Hop parent, Hop hi, int pos)
- throws HopsException
- {
+ private static Hop simplifyEmptyMatrixMult(Hop parent, Hop hi, int pos) {
if( HopRewriteUtils.isMatrixMultiply(hi) ) //X%*%Y -> matrix(0, )
{
Hop left = hi.getInput().get(0);
@@ -919,7 +897,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyIdentityRepMatrixMult(Hop parent, Hop hi, int pos)
- throws HopsException
{
if( HopRewriteUtils.isMatrixMultiply(hi) ) //X%*%Y -> X, if y is matrix(1,1,1)
{
@@ -942,7 +919,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyScalarMatrixMult(Hop parent, Hop hi, int pos)
- throws HopsException
{
if( HopRewriteUtils.isMatrixMultiply(hi) ) //X%*%Y
{
@@ -981,7 +957,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyMatrixMultDiag(Hop parent, Hop hi, int pos)
- throws HopsException
{
Hop hnew = null;
@@ -1233,10 +1208,8 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
* @param hi high-level operator
* @param pos position
* @return high-level operator
- * @throws HopsException if HopsException occurs
*/
private static Hop simplifyWeightedSquaredLoss(Hop parent, Hop hi, int pos)
- throws HopsException
{
//NOTE: there might be also a general simplification without custom operator
//via (X-UVt)^2 -> X^2 - 2X*UVt + UVt^2
@@ -1424,7 +1397,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyWeightedSigmoidMMChains(Hop parent, Hop hi, int pos)
- throws HopsException
{
Hop hnew = null;
@@ -1559,9 +1531,7 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
return hi;
}
- private static Hop simplifyWeightedDivMM(Hop parent, Hop hi, int pos)
- throws HopsException
- {
+ private static Hop simplifyWeightedDivMM(Hop parent, Hop hi, int pos) {
Hop hnew = null;
boolean appliedPattern = false;
@@ -1875,7 +1845,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyWeightedCrossEntropy(Hop parent, Hop hi, int pos)
- throws HopsException
{
Hop hnew = null;
boolean appliedPattern = false;
@@ -1951,9 +1920,7 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
return hi;
}
- private static Hop simplifyWeightedUnaryMM(Hop parent, Hop hi, int pos)
- throws HopsException
- {
+ private static Hop simplifyWeightedUnaryMM(Hop parent, Hop hi, int pos) {
Hop hnew = null;
boolean appliedPattern = false;
@@ -2103,11 +2070,8 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
* @param hi high-level operator
* @param pos position
* @return high-level operator
- * @throws HopsException if HopsException occurs
*/
- private static Hop simplifyDotProductSum(Hop parent, Hop hi, int pos)
- throws HopsException
- {
+ private static Hop simplifyDotProductSum(Hop parent, Hop hi, int pos) {
//sum(v^2)/sum(v1*v2) --> as.scalar(t(v)%*%v) in order to exploit tsmm vector dotproduct
//w/o materialization of intermediates
if( hi instanceof AggUnaryOp && ((AggUnaryOp)hi).getOp()==AggOp.SUM //sum
@@ -2176,11 +2140,8 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
* @param pos Position of hi in parent's list of inputs.
*
* @return Either hi or the rewritten HOP replacing it.
- *
- * @throws HopsException if HopsException occurs
*/
- private static Hop fuseSumSquared(Hop parent, Hop hi, int pos)
- throws HopsException {
+ private static Hop fuseSumSquared(Hop parent, Hop hi, int pos) {
// if SUM
if (hi instanceof AggUnaryOp && ((AggUnaryOp) hi).getOp() == AggOp.SUM) {
Hop sumInput = hi.getInput().get(0);
@@ -2267,7 +2228,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyEmptyBinaryOperation(Hop parent, Hop hi, int pos)
- throws HopsException
{
if( hi instanceof BinaryOp ) //b(?) X Y
{
@@ -2347,11 +2307,9 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
* @param hi high-level operator
* @param pos position
* @return high-level operator
- * @throws HopsException if HopsException occurs
*/
@SuppressWarnings("unchecked")
private static Hop reorderMinusMatrixMult(Hop parent, Hop hi, int pos)
- throws HopsException
{
if( HopRewriteUtils.isMatrixMultiply(hi) ) //X%*%Y
{
@@ -2486,7 +2444,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyScalarMVBinaryOperation(Hop hi)
- throws HopsException
{
if( hi instanceof BinaryOp && ((BinaryOp)hi).supportsMatrixScalarOperations() //e.g., X * s
&& hi.getInput().get(0).getDataType()==DataType.MATRIX
@@ -2509,7 +2466,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyNnzComputation(Hop parent, Hop hi, int pos)
- throws HopsException
{
//sum(ppred(X,0,"!=")) -> literal(nnz(X)), if nnz known
if( hi instanceof AggUnaryOp && ((AggUnaryOp)hi).getOp()==AggOp.SUM //sum
@@ -2544,7 +2500,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyNrowNcolComputation(Hop parent, Hop hi, int pos)
- throws HopsException
{
//nrow(X) -> literal(nrow(X)), ncol(X) -> literal(ncol(X)), if respective dims known
//(this rewrite aims to remove unnecessary data dependencies to X which trigger computation
@@ -2573,7 +2528,6 @@ public class RewriteAlgebraicSimplificationDynamic extends HopRewriteRule
}
private static Hop simplifyTableSeqExpand(Hop parent, Hop hi, int pos)
- throws HopsException
{
//pattern: table(seq(1,nrow(v)), v, nrow(v), m) -> rexpand(v, max=m, dir=row, ignore=false, cast=true)
//note: this rewrite supports both left/right sequence
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteAlgebraicSimplificationStatic.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteAlgebraicSimplificationStatic.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteAlgebraicSimplificationStatic.java
index 3a3235d..a75167c 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteAlgebraicSimplificationStatic.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteAlgebraicSimplificationStatic.java
@@ -41,7 +41,6 @@ import org.apache.sysml.hops.Hop.OpOp3;
import org.apache.sysml.hops.Hop.OpOpN;
import org.apache.sysml.hops.Hop.ParamBuiltinOp;
import org.apache.sysml.hops.Hop.ReOrgOp;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.LiteralOp;
import org.apache.sysml.hops.NaryOp;
import org.apache.sysml.hops.OptimizerUtils;
@@ -82,7 +81,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
@Override
public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
- throws HopsException
{
if( roots == null )
return roots;
@@ -102,7 +100,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
@Override
public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
- throws HopsException
{
if( root == null )
return root;
@@ -127,10 +124,8 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
*
* @param hop high-level operator
* @param descendFirst if process children recursively first
- * @throws HopsException if HopsException occurs
*/
private void rule_AlgebraicSimplification(Hop hop, boolean descendFirst)
- throws HopsException
{
if(hop.isVisited())
return;
@@ -260,10 +255,8 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
* @param hi high-level operator
* @param pos position
* @return high-level operator
- * @throws HopsException if HopsException occurs
*/
private static Hop removeUnnecessaryBinaryOperation( Hop parent, Hop hi, int pos )
- throws HopsException
{
if( hi instanceof BinaryOp )
{
@@ -348,11 +341,9 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
*
* @param hi high-order operation
* @return high-level operator
- * @throws HopsException if HopsException occurs
*/
@SuppressWarnings("incomplete-switch")
private static Hop fuseDatagenAndBinaryOperation( Hop hi )
- throws HopsException
{
if( hi instanceof BinaryOp )
{
@@ -480,7 +471,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
}
private static Hop fuseDatagenAndMinusOperation( Hop hi )
- throws HopsException
{
if( hi instanceof BinaryOp )
{
@@ -530,7 +520,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
}
private static Hop foldMultipleAppendOperations(Hop hi)
- throws HopsException
{
if( hi.getDataType().isMatrix() //no string appends or frames
&& (HopRewriteUtils.isBinary(hi, OpOp2.CBIND, OpOp2.RBIND)
@@ -588,10 +577,8 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
* @param hi high-level operator
* @param pos position
* @return high-level operator
- * @throws HopsException if HopsException occurs
*/
private static Hop simplifyBinaryToUnaryOperation( Hop parent, Hop hi, int pos )
- throws HopsException
{
if( hi instanceof BinaryOp )
{
@@ -648,10 +635,8 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
*
* @param hi high-level operator
* @return high-level operator
- * @throws HopsException if HopsException occurs
*/
private static Hop canonicalizeMatrixMultScalarAdd( Hop hi )
- throws HopsException
{
//pattern: binary operation (+ or -) of matrix mult and scalar
if( hi instanceof BinaryOp )
@@ -684,7 +669,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
}
private static Hop simplifyCTableWithConstMatrixInputs( Hop hi )
- throws HopsException
{
//pattern: table(X, matrix(1,...), matrix(7, ...)) -> table(X, 1, 7)
if( HopRewriteUtils.isTernary(hi, OpOp3.CTABLE) ) {
@@ -711,10 +695,8 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
* @param hi high-level operator
* @param pos position
* @return high-level operator
- * @throws HopsException if HopsException occurs
*/
private static Hop simplifyReverseOperation( Hop parent, Hop hi, int pos )
- throws HopsException
{
if( hi instanceof AggBinaryOp
&& hi.getInput().get(0) instanceof TernaryOp )
@@ -970,7 +952,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
}
private static Hop simplifyBinaryMatrixScalarOperation( Hop parent, Hop hi, int pos )
- throws HopsException
{
// Note: This rewrite is not applicable for all binary operations because some of them
// are undefined over scalars. We explicitly exclude potential conflicting matrix-scalar binary
@@ -1083,7 +1064,7 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
return hi;
}
- private static Hop pushdownSumBinaryMult(Hop parent, Hop hi, int pos ) throws HopsException {
+ private static Hop pushdownSumBinaryMult(Hop parent, Hop hi, int pos ) {
//pattern: sum(lamda*X) -> lamda*sum(X)
if( hi instanceof AggUnaryOp && ((AggUnaryOp)hi).getDirection()==Direction.RowCol
&& ((AggUnaryOp)hi).getOp()==Hop.AggOp.SUM // only one parent which is the sum
@@ -1173,10 +1154,8 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
* @param parent parent high-level operator
* @param hi high-level operator
* @param pos position
- * @throws HopsException if HopsException occurs
*/
private static Hop fuseBinarySubDAGToUnaryOperation( Hop parent, Hop hi, int pos )
- throws HopsException
{
if( hi instanceof BinaryOp )
{
@@ -1361,7 +1340,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
}
private static Hop simplifySlicedMatrixMult(Hop parent, Hop hi, int pos)
- throws HopsException
{
//e.g., (X%*%Y)[1,1] -> X[1,] %*% Y[,1]
if( hi instanceof IndexingOp
@@ -1402,7 +1380,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
}
private static Hop simplifyConstantSort(Hop parent, Hop hi, int pos)
- throws HopsException
{
//order(matrix(7), indexreturn=FALSE) -> matrix(7)
//order(matrix(7), indexreturn=TRUE) -> seq(1,nrow(X),1)
@@ -1441,7 +1418,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
}
private static Hop simplifyOrderedSort(Hop parent, Hop hi, int pos)
- throws HopsException
{
//order(seq(2,N+1,1), indexreturn=FALSE) -> matrix(7)
//order(seq(2,N+1,1), indexreturn=TRUE) -> seq(1,N,1)/seq(N,1,-1)
@@ -1486,7 +1462,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
}
private static Hop fuseOrderOperationChain(Hop hi)
- throws HopsException
{
//order(order(X,2),1) -> order(X, (12)),
if( HopRewriteUtils.isReorg(hi, ReOrgOp.SORT)
@@ -1550,10 +1525,8 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
* @param hi high-level operator
* @param pos position
* @return high-level operator
- * @throws HopsException if HopsException occurs
*/
private static Hop simplifyTransposeAggBinBinaryChains(Hop parent, Hop hi, int pos)
- throws HopsException
{
if( HopRewriteUtils.isTransposeOperation(hi)
&& hi.getInput().get(0) instanceof BinaryOp //basic binary
@@ -1588,7 +1561,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
// Patterns: X + (X==0) * s -> replace(X, 0, s)
private static Hop simplifyReplaceZeroOperation(Hop parent, Hop hi, int pos)
- throws HopsException
{
if( HopRewriteUtils.isBinary(hi, OpOp2.PLUS) && hi.getInput().get(0).isMatrix()
&& HopRewriteUtils.isBinary(hi.getInput().get(1), OpOp2.MULT)
@@ -1641,7 +1613,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
}
private static Hop removeUnnecessaryMinus(Hop parent, Hop hi, int pos)
- throws HopsException
{
if( hi.getDataType() == DataType.MATRIX && hi instanceof BinaryOp
&& ((BinaryOp)hi).getOp()==OpOp2.MINUS //first minus
@@ -1696,7 +1667,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
}
private static Hop fuseMinusNzBinaryOperation(Hop parent, Hop hi, int pos)
- throws HopsException
{
//pattern X - (s * ppred(X,0,!=)) -> X -nz s
//note: this is done as a hop rewrite in order to significantly reduce the
@@ -1730,7 +1700,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
}
private static Hop fuseLogNzUnaryOperation(Hop parent, Hop hi, int pos)
- throws HopsException
{
//pattern ppred(X,0,"!=")*log(X) -> log_nz(X)
//note: this is done as a hop rewrite in order to significantly reduce the
@@ -1762,7 +1731,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
}
private static Hop fuseLogNzBinaryOperation(Hop parent, Hop hi, int pos)
- throws HopsException
{
//pattern ppred(X,0,"!=")*log(X,0.5) -> log_nz(X,0.5)
//note: this is done as a hop rewrite in order to significantly reduce the
@@ -1795,7 +1763,6 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
}
private static Hop simplifyOuterSeqExpand(Hop parent, Hop hi, int pos)
- throws HopsException
{
//pattern: outer(v, t(seq(1,m)), "==") -> rexpand(v, max=m, dir=row, ignore=true, cast=false)
//note: this rewrite supports both left/right sequence
@@ -1848,11 +1815,9 @@ public class RewriteAlgebraicSimplificationStatic extends HopRewriteRule
* @param hi high-level operator
* @param pos position
* @return high-level operator
- * @throws HopsException if HopsException occurs
*/
@SuppressWarnings("unused")
private static Hop removeUnecessaryPPred(Hop parent, Hop hi, int pos)
- throws HopsException
{
if( hi instanceof BinaryOp )
{
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteBlockSizeAndReblock.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteBlockSizeAndReblock.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteBlockSizeAndReblock.java
index 245a333..2c102cc 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteBlockSizeAndReblock.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteBlockSizeAndReblock.java
@@ -43,7 +43,6 @@ public class RewriteBlockSizeAndReblock extends HopRewriteRule
@Override
public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
- throws HopsException
{
if( roots == null )
return null;
@@ -61,7 +60,6 @@ public class RewriteBlockSizeAndReblock extends HopRewriteRule
@Override
public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
- throws HopsException
{
if( root == null )
return null;
@@ -77,7 +75,6 @@ public class RewriteBlockSizeAndReblock extends HopRewriteRule
}
private void rule_BlockSizeAndReblock(Hop hop, final int blocksize)
- throws HopsException
{
// Go to the source(s) of the DAG
for (Hop hi : hop.getInput()) {
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteCommonSubexpressionElimination.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteCommonSubexpressionElimination.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteCommonSubexpressionElimination.java
index f8d812a..686c563 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteCommonSubexpressionElimination.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteCommonSubexpressionElimination.java
@@ -24,7 +24,6 @@ import java.util.HashMap;
import org.apache.sysml.hops.DataOp;
import org.apache.sysml.hops.Hop;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.LiteralOp;
/**
@@ -51,7 +50,6 @@ public class RewriteCommonSubexpressionElimination extends HopRewriteRule
@Override
public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
- throws HopsException
{
if( roots == null )
return null;
@@ -63,7 +61,7 @@ public class RewriteCommonSubexpressionElimination extends HopRewriteRule
int cseMerged = 0;
if( _mergeLeafs ) {
cseMerged += rule_CommonSubexpressionElimination_MergeLeafs(h, dataops, literalops);
- h.resetVisitStatus();
+ h.resetVisitStatus();
}
cseMerged += rule_CommonSubexpressionElimination(h);
@@ -76,7 +74,6 @@ public class RewriteCommonSubexpressionElimination extends HopRewriteRule
@Override
public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
- throws HopsException
{
if( root == null )
return null;
@@ -97,7 +94,6 @@ public class RewriteCommonSubexpressionElimination extends HopRewriteRule
}
private int rule_CommonSubexpressionElimination_MergeLeafs( Hop hop, HashMap<String, Hop> dataops, HashMap<String, Hop> literalops )
- throws HopsException
{
int ret = 0;
if( hop.isVisited() )
@@ -159,7 +155,6 @@ public class RewriteCommonSubexpressionElimination extends HopRewriteRule
}
private int rule_CommonSubexpressionElimination( Hop hop )
- throws HopsException
{
int ret = 0;
if( hop.isVisited() )
@@ -219,5 +214,4 @@ public class RewriteCommonSubexpressionElimination extends HopRewriteRule
return ret;
}
-
}
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteCompressedReblock.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteCompressedReblock.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteCompressedReblock.java
index b24a178..ff310dd 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteCompressedReblock.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteCompressedReblock.java
@@ -29,7 +29,6 @@ import org.apache.sysml.conf.DMLConfig;
import org.apache.sysml.hops.AggBinaryOp;
import org.apache.sysml.hops.FunctionOp;
import org.apache.sysml.hops.Hop;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.OptimizerUtils;
import org.apache.sysml.hops.Hop.AggOp;
import org.apache.sysml.hops.Hop.DataOpTypes;
@@ -69,7 +68,6 @@ public class RewriteCompressedReblock extends StatementBlockRewriteRule
@Override
public List<StatementBlock> rewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus sate)
- throws HopsException
{
//check for inapplicable statement blocks
if( !HopRewriteUtils.isLastLevelStatementBlock(sb)
@@ -92,15 +90,11 @@ public class RewriteCompressedReblock extends StatementBlockRewriteRule
}
@Override
- public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate)
- throws HopsException
- {
+ public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate) {
return sbs;
}
- private static void injectCompressionDirective(Hop hop, CompressConfig compress, DMLProgram prog)
- throws HopsException
- {
+ private static void injectCompressionDirective(Hop hop, CompressConfig compress, DMLProgram prog) {
if( hop.isVisited() || hop.requiresCompression() )
return;
@@ -122,9 +116,7 @@ public class RewriteCompressedReblock extends StatementBlockRewriteRule
&& hop.getDim1() > 1 && hop.getDim2() > 1; //multi-column matrix
}
- private static boolean satisfiesAutoCompressionCondition(Hop hop, DMLProgram prog)
- throws HopsException
- {
+ private static boolean satisfiesAutoCompressionCondition(Hop hop, DMLProgram prog) {
//check for basic compression condition
if( !(satisfiesCompressionCondition(hop)
&& OptimizerUtils.isSparkExecutionMode()) )
@@ -169,7 +161,6 @@ public class RewriteCompressedReblock extends StatementBlockRewriteRule
}
private static void rAnalyzeProgram(StatementBlock sb, ProbeStatus status)
- throws HopsException
{
if(sb instanceof FunctionStatementBlock) {
FunctionStatementBlock fsb = (FunctionStatementBlock) sb;
@@ -216,7 +207,6 @@ public class RewriteCompressedReblock extends StatementBlockRewriteRule
}
private static void rAnalyzeHopDag(Hop current, ProbeStatus status)
- throws HopsException
{
if( current.isVisited() )
return;
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteConstantFolding.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteConstantFolding.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteConstantFolding.java
index 7684c78..9a1e76d 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteConstantFolding.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteConstantFolding.java
@@ -19,7 +19,6 @@
package org.apache.sysml.hops.rewrite;
-import java.io.IOException;
import java.util.ArrayList;
import org.apache.sysml.conf.ConfigurationManager;
@@ -34,10 +33,8 @@ import org.apache.sysml.hops.LiteralOp;
import org.apache.sysml.hops.UnaryOp;
import org.apache.sysml.hops.recompile.Recompiler;
import org.apache.sysml.lops.Lop;
-import org.apache.sysml.lops.LopsException;
import org.apache.sysml.lops.compile.Dag;
import org.apache.sysml.parser.Expression.DataType;
-import org.apache.sysml.runtime.DMLRuntimeException;
import org.apache.sysml.runtime.controlprogram.Program;
import org.apache.sysml.runtime.controlprogram.ProgramBlock;
import org.apache.sysml.runtime.controlprogram.context.ExecutionContext;
@@ -62,39 +59,28 @@ public class RewriteConstantFolding extends HopRewriteRule
@Override
- public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
- throws HopsException
- {
+ public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state) {
if( roots == null )
return null;
-
for( int i=0; i<roots.size(); i++ ) {
Hop h = roots.get(i);
roots.set(i, rule_ConstantFolding(h));
}
-
return roots;
}
@Override
- public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
- throws HopsException
- {
+ public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state) {
if( root == null )
return null;
-
return rule_ConstantFolding(root);
}
- private Hop rule_ConstantFolding( Hop hop )
- throws HopsException
- {
+ private Hop rule_ConstantFolding( Hop hop ) {
return rConstantFoldingExpression(hop);
}
- private Hop rConstantFoldingExpression( Hop root )
- throws HopsException
- {
+ private Hop rConstantFoldingExpression( Hop root ) {
if( root.isVisited() )
return root;
@@ -175,13 +161,8 @@ public class RewriteConstantFolding extends HopRewriteRule
*
* @param bop high-level operator
* @return literal op
- * @throws LopsException if LopsException occurs
- * @throws DMLRuntimeException if DMLRuntimeException occurs
- * @throws IOException if IOException occurs
- * @throws HopsException if HopsException occurs
*/
private LiteralOp evalScalarOperation( Hop bop )
- throws LopsException, DMLRuntimeException, IOException, HopsException
{
//Timing time = new Timing( true );
@@ -228,16 +209,13 @@ public class RewriteConstantFolding extends HopRewriteRule
return literal;
}
- private ProgramBlock getProgramBlock()
- throws DMLRuntimeException
- {
+ private ProgramBlock getProgramBlock() {
if( _tmpPB == null )
_tmpPB = new ProgramBlock( new Program() );
return _tmpPB;
}
- private ExecutionContext getExecutionContext()
- {
+ private ExecutionContext getExecutionContext() {
if( _tmpEC == null )
_tmpEC = ExecutionContextFactory.createContext();
return _tmpEC;
@@ -266,14 +244,14 @@ public class RewriteConstantFolding extends HopRewriteRule
&& hop.getDataType() == DataType.SCALAR);
}
- private static boolean isApplicableFalseConjunctivePredicate( Hop hop ) throws HopsException {
+ private static boolean isApplicableFalseConjunctivePredicate( Hop hop ) {
ArrayList<Hop> in = hop.getInput();
return ( HopRewriteUtils.isBinary(hop, OpOp2.AND) && hop.getDataType().isScalar()
&& ( (in.get(0) instanceof LiteralOp && !((LiteralOp)in.get(0)).getBooleanValue())
||(in.get(1) instanceof LiteralOp && !((LiteralOp)in.get(1)).getBooleanValue())) );
}
- private static boolean isApplicableTrueDisjunctivePredicate( Hop hop ) throws HopsException {
+ private static boolean isApplicableTrueDisjunctivePredicate( Hop hop ) {
ArrayList<Hop> in = hop.getInput();
return ( HopRewriteUtils.isBinary(hop, OpOp2.OR) && hop.getDataType().isScalar()
&& ( (in.get(0) instanceof LiteralOp && ((LiteralOp)in.get(0)).getBooleanValue())
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteElementwiseMultChainOptimization.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteElementwiseMultChainOptimization.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteElementwiseMultChainOptimization.java
index ca7ef2e..a5d8b06 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteElementwiseMultChainOptimization.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteElementwiseMultChainOptimization.java
@@ -31,7 +31,6 @@ import java.util.TreeSet;
import org.apache.sysml.hops.BinaryOp;
import org.apache.sysml.hops.Hop;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.LiteralOp;
import org.apache.sysml.parser.Expression;
@@ -56,7 +55,7 @@ import org.apache.sysml.parser.Expression;
*/
public class RewriteElementwiseMultChainOptimization extends HopRewriteRule {
@Override
- public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state) throws HopsException {
+ public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state) {
if( roots == null )
return null;
for( int i=0; i<roots.size(); i++ ) {
@@ -67,7 +66,7 @@ public class RewriteElementwiseMultChainOptimization extends HopRewriteRule {
}
@Override
- public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state) throws HopsException {
+ public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state) {
if( root == null )
return null;
return rule_RewriteEMult(root);
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteForLoopVectorization.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteForLoopVectorization.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteForLoopVectorization.java
index cade354..0064a6c 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteForLoopVectorization.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteForLoopVectorization.java
@@ -29,7 +29,6 @@ import org.apache.sysml.hops.Hop;
import org.apache.sysml.hops.Hop.AggOp;
import org.apache.sysml.hops.Hop.Direction;
import org.apache.sysml.hops.Hop.OpOp1;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.IndexingOp;
import org.apache.sysml.hops.LeftIndexingOp;
import org.apache.sysml.hops.LiteralOp;
@@ -60,7 +59,6 @@ public class RewriteForLoopVectorization extends StatementBlockRewriteRule
@Override
public List<StatementBlock> rewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus state)
- throws HopsException
{
if( sb instanceof ForStatementBlock )
{
@@ -102,13 +100,11 @@ public class RewriteForLoopVectorization extends StatementBlockRewriteRule
}
@Override
- public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs,
- ProgramRewriteStatus sate) throws HopsException {
+ public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate) {
return sbs;
}
private static StatementBlock vectorizeScalarAggregate( StatementBlock sb, StatementBlock csb, Hop from, Hop to, Hop increment, String itervar )
- throws HopsException
{
StatementBlock ret = sb;
@@ -210,7 +206,6 @@ public class RewriteForLoopVectorization extends StatementBlockRewriteRule
}
private static StatementBlock vectorizeElementwiseBinary( StatementBlock sb, StatementBlock csb, Hop from, Hop to, Hop increment, String itervar )
- throws HopsException
{
StatementBlock ret = sb;
@@ -294,7 +289,6 @@ public class RewriteForLoopVectorization extends StatementBlockRewriteRule
}
private static StatementBlock vectorizeElementwiseUnary( StatementBlock sb, StatementBlock csb, Hop from, Hop to, Hop increment, String itervar )
- throws HopsException
{
StatementBlock ret = sb;
@@ -354,7 +348,6 @@ public class RewriteForLoopVectorization extends StatementBlockRewriteRule
}
private static StatementBlock vectorizeIndexedCopy( StatementBlock sb, StatementBlock csb, Hop from, Hop to, Hop increment, String itervar )
- throws HopsException
{
StatementBlock ret = sb;
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteIndexingVectorization.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteIndexingVectorization.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteIndexingVectorization.java
index e2097e2..621daae 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteIndexingVectorization.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteIndexingVectorization.java
@@ -26,7 +26,6 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.sysml.hops.Hop;
import org.apache.sysml.hops.Hop.OpOp2;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.IndexingOp;
import org.apache.sysml.hops.LeftIndexingOp;
import org.apache.sysml.hops.LiteralOp;
@@ -47,33 +46,23 @@ public class RewriteIndexingVectorization extends HopRewriteRule
private static final Log LOG = LogFactory.getLog(RewriteIndexingVectorization.class.getName());
@Override
- public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
- throws HopsException
- {
+ public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state) {
if( roots == null )
return roots;
-
for( Hop h : roots )
rule_IndexingVectorization( h );
-
return roots;
}
@Override
- public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
- throws HopsException
- {
+ public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state) {
if( root == null )
return root;
-
rule_IndexingVectorization( root );
-
return root;
}
- private void rule_IndexingVectorization( Hop hop )
- throws HopsException
- {
+ private void rule_IndexingVectorization( Hop hop ) {
if(hop.isVisited())
return;
@@ -96,9 +85,7 @@ public class RewriteIndexingVectorization extends HopRewriteRule
hop.setVisited();
}
- private static Hop vectorizeRightLeftIndexingChains(Hop hi)
- throws HopsException
- {
+ private static Hop vectorizeRightLeftIndexingChains(Hop hi) {
//check for valid root operator
if( !(hi instanceof LeftIndexingOp
&& hi.getInput().get(1) instanceof IndexingOp
@@ -184,11 +171,9 @@ public class RewriteIndexingVectorization extends HopRewriteRule
* dynamic rewrites
*
* @param hop high-level operator
- * @throws HopsException if HopsException occurs
*/
@SuppressWarnings("unused")
private static void vectorizeRightIndexing( Hop hop )
- throws HopsException
{
if( hop instanceof IndexingOp ) //right indexing
{
@@ -276,7 +261,6 @@ public class RewriteIndexingVectorization extends HopRewriteRule
@SuppressWarnings("unchecked")
private static Hop vectorizeLeftIndexing( Hop hop )
- throws HopsException
{
Hop ret = hop;
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteInjectSparkLoopCheckpointing.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteInjectSparkLoopCheckpointing.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteInjectSparkLoopCheckpointing.java
index 50a5579..6c3ad76 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteInjectSparkLoopCheckpointing.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteInjectSparkLoopCheckpointing.java
@@ -25,7 +25,6 @@ import java.util.List;
import org.apache.sysml.hops.DataOp;
import org.apache.sysml.hops.Hop;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.Hop.DataOpTypes;
import org.apache.sysml.hops.OptimizerUtils;
import org.apache.sysml.parser.DataIdentifier;
@@ -60,7 +59,6 @@ public class RewriteInjectSparkLoopCheckpointing extends StatementBlockRewriteRu
@Override
public List<StatementBlock> rewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus status)
- throws HopsException
{
if( !OptimizerUtils.isSparkExecutionMode() ) {
// nothing to do here, return original statement block
@@ -130,8 +128,7 @@ public class RewriteInjectSparkLoopCheckpointing extends StatementBlockRewriteRu
}
@Override
- public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs,
- ProgramRewriteStatus sate) throws HopsException {
+ public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate) {
return sbs;
}
}
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteInjectSparkPReadCheckpointing.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteInjectSparkPReadCheckpointing.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteInjectSparkPReadCheckpointing.java
index 7ee3506..3f43431 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteInjectSparkPReadCheckpointing.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteInjectSparkPReadCheckpointing.java
@@ -24,7 +24,6 @@ import java.util.ArrayList;
import org.apache.sysml.hops.DataOp;
import org.apache.sysml.hops.Hop;
import org.apache.sysml.hops.Hop.DataOpTypes;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.OptimizerUtils;
/**
@@ -36,9 +35,7 @@ import org.apache.sysml.hops.OptimizerUtils;
public class RewriteInjectSparkPReadCheckpointing extends HopRewriteRule
{
@Override
- public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
- throws HopsException
- {
+ public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state) {
if( !OptimizerUtils.isSparkExecutionMode() )
return roots;
@@ -53,15 +50,12 @@ public class RewriteInjectSparkPReadCheckpointing extends HopRewriteRule
}
@Override
- public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
- throws HopsException
- {
+ public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state) {
//not applicable to predicates (we do not allow persistent reads there)
return root;
}
private void rInjectCheckpointAfterPRead( Hop hop )
- throws HopsException
{
if(hop.isVisited())
return;
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteMarkLoopVariablesUpdateInPlace.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteMarkLoopVariablesUpdateInPlace.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteMarkLoopVariablesUpdateInPlace.java
index 79683fb..c3dd512 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteMarkLoopVariablesUpdateInPlace.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteMarkLoopVariablesUpdateInPlace.java
@@ -28,7 +28,6 @@ import org.apache.sysml.api.DMLScript.RUNTIME_PLATFORM;
import org.apache.sysml.hops.DataOp;
import org.apache.sysml.hops.Hop;
import org.apache.sysml.hops.Hop.OpOp1;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.LeftIndexingOp;
import org.apache.sysml.hops.UnaryOp;
import org.apache.sysml.parser.ForStatement;
@@ -55,7 +54,6 @@ public class RewriteMarkLoopVariablesUpdateInPlace extends StatementBlockRewrite
@Override
public List<StatementBlock> rewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus status)
- throws HopsException
{
if( DMLScript.rtplatform == RUNTIME_PLATFORM.HADOOP
|| DMLScript.rtplatform == RUNTIME_PLATFORM.SPARK )
@@ -95,7 +93,6 @@ public class RewriteMarkLoopVariablesUpdateInPlace extends StatementBlockRewrite
}
private boolean rIsApplicableForUpdateInPlace( ArrayList<StatementBlock> sbs, String varname )
- throws HopsException
{
//NOTE: no function statement blocks / predicates considered because function call would
//render variable as not applicable and predicates don't allow assignments; further reuse
@@ -157,8 +154,7 @@ public class RewriteMarkLoopVariablesUpdateInPlace extends StatementBlockRewrite
}
@Override
- public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs,
- ProgramRewriteStatus sate) throws HopsException {
+ public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate) {
return sbs;
}
}
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteMatrixMultChainOptimization.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteMatrixMultChainOptimization.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteMatrixMultChainOptimization.java
index e8510d4..91033c4 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteMatrixMultChainOptimization.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteMatrixMultChainOptimization.java
@@ -55,7 +55,6 @@ public class RewriteMatrixMultChainOptimization extends HopRewriteRule
@Override
public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
- throws HopsException
{
if( roots == null )
return null;
@@ -69,7 +68,6 @@ public class RewriteMatrixMultChainOptimization extends HopRewriteRule
@Override
public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
- throws HopsException
{
if( root == null )
return null;
@@ -85,10 +83,8 @@ public class RewriteMatrixMultChainOptimization extends HopRewriteRule
* to find chains that need to be optimized.
*
* @param hop high-level operator
- * @throws HopsException if HopsException occurs
*/
private void rule_OptimizeMMChains(Hop hop)
- throws HopsException
{
if( hop.isVisited() )
return;
@@ -116,9 +112,8 @@ public class RewriteMatrixMultChainOptimization extends HopRewriteRule
* mmChain.
*
* @param hop high-level operator
- * @throws HopsException if HopsException occurs
*/
- private void optimizeMMChain( Hop hop ) throws HopsException
+ private void optimizeMMChain( Hop hop )
{
if( LOG.isTraceEnabled() ) {
LOG.trace("MM Chain Optimization for HOP: (" + hop.getClass().getSimpleName()
@@ -326,7 +321,6 @@ public class RewriteMatrixMultChainOptimization extends HopRewriteRule
}
private static void clearLinksWithinChain( Hop hop, ArrayList<Hop> operators )
- throws HopsException
{
for( int i=0; i < operators.size(); i++ ) {
Hop op = operators.get(i);
@@ -352,10 +346,8 @@ public class RewriteMatrixMultChainOptimization extends HopRewriteRule
* @param chain list of high-level operators
* @param dimArray dimension array
* @return true if all dimensions known
- * @throws HopsException if HopsException occurs
*/
private static boolean getDimsArray( Hop hop, ArrayList<Hop> chain, double[] dimsArray )
- throws HopsException
{
boolean dimsKnown = true;
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteMergeBlockSequence.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteMergeBlockSequence.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteMergeBlockSequence.java
index 9c2d715..0ddba21 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteMergeBlockSequence.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteMergeBlockSequence.java
@@ -28,7 +28,6 @@ import java.util.List;
import org.apache.sysml.hops.FunctionOp;
import org.apache.sysml.hops.Hop;
import org.apache.sysml.hops.Hop.DataOpTypes;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.parser.ExternalFunctionStatement;
import org.apache.sysml.parser.FunctionStatementBlock;
import org.apache.sysml.parser.StatementBlock;
@@ -51,13 +50,13 @@ public class RewriteMergeBlockSequence extends StatementBlockRewriteRule
@Override
public List<StatementBlock> rewriteStatementBlock(StatementBlock sb,
- ProgramRewriteStatus state) throws HopsException {
+ ProgramRewriteStatus state) {
return Arrays.asList(sb);
}
@Override
public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs,
- ProgramRewriteStatus sate) throws HopsException
+ ProgramRewriteStatus sate)
{
if( sbs == null || sbs.isEmpty() )
return sbs;
@@ -174,8 +173,7 @@ public class RewriteMergeBlockSequence extends StatementBlockRewriteRule
current.setVisited();
}
- private static boolean hasFunctionOpRoot(StatementBlock sb)
- throws HopsException {
+ private static boolean hasFunctionOpRoot(StatementBlock sb) {
if( sb == null || sb.getHops() == null )
return false;
boolean ret = false;
@@ -184,8 +182,7 @@ public class RewriteMergeBlockSequence extends StatementBlockRewriteRule
return ret;
}
- private static boolean hasExternalFunctionOpRootWithSideEffect(StatementBlock sb)
- throws HopsException {
+ private static boolean hasExternalFunctionOpRootWithSideEffect(StatementBlock sb) {
if( sb == null || sb.getHops() == null )
return false;
for( Hop root : sb.getHops() )
@@ -202,7 +199,6 @@ public class RewriteMergeBlockSequence extends StatementBlockRewriteRule
}
private static boolean hasFunctionIOConflict(StatementBlock sb1, StatementBlock sb2)
- throws HopsException
{
//semantics: a function op root in sb1 conflicts with sb2 if this function op writes
//to a variable that is read or written by sb2, where the write might be either
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveDanglingParentReferences.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveDanglingParentReferences.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveDanglingParentReferences.java
index 824c56b..926e53c 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveDanglingParentReferences.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveDanglingParentReferences.java
@@ -27,7 +27,6 @@ import org.apache.sysml.hops.Hop;
import org.apache.sysml.hops.Hop.DataOpTypes;
import org.apache.sysml.hops.Hop.OpOpN;
import org.apache.sysml.hops.Hop.OpOp1;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.NaryOp;
import org.apache.sysml.hops.UnaryOp;
@@ -41,9 +40,7 @@ import org.apache.sysml.hops.UnaryOp;
public class RewriteRemoveDanglingParentReferences extends HopRewriteRule
{
@Override
- public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
- throws HopsException
- {
+ public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state) {
if( roots == null )
return null;
@@ -58,9 +55,7 @@ public class RewriteRemoveDanglingParentReferences extends HopRewriteRule
}
@Override
- public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
- throws HopsException
- {
+ public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state) {
if( root == null )
return root;
@@ -74,9 +69,7 @@ public class RewriteRemoveDanglingParentReferences extends HopRewriteRule
return root;
}
- private int removeDanglingParentReferences( Hop hop, boolean pin )
- throws HopsException
- {
+ private int removeDanglingParentReferences( Hop hop, boolean pin ) {
//check mark processed
if( hop.isVisited() )
return 0;
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveEmptyBasicBlocks.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveEmptyBasicBlocks.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveEmptyBasicBlocks.java
index b03763c..c4ba9f9 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveEmptyBasicBlocks.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveEmptyBasicBlocks.java
@@ -22,7 +22,6 @@ package org.apache.sysml.hops.rewrite;
import java.util.ArrayList;
import java.util.List;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.parser.StatementBlock;
/**
@@ -38,9 +37,7 @@ public class RewriteRemoveEmptyBasicBlocks extends StatementBlockRewriteRule
}
@Override
- public List<StatementBlock> rewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus state)
- throws HopsException
- {
+ public List<StatementBlock> rewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus state) {
ArrayList<StatementBlock> ret = new ArrayList<>();
//prune last level blocks with empty hops
@@ -56,8 +53,7 @@ public class RewriteRemoveEmptyBasicBlocks extends StatementBlockRewriteRule
}
@Override
- public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate)
- throws HopsException {
+ public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate) {
return sbs;
}
}
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemovePersistentReadWrite.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemovePersistentReadWrite.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemovePersistentReadWrite.java
index ec5c6c0..79aca58 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemovePersistentReadWrite.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemovePersistentReadWrite.java
@@ -28,7 +28,6 @@ import org.apache.commons.logging.LogFactory;
import org.apache.sysml.hops.DataOp;
import org.apache.sysml.hops.Hop;
import org.apache.sysml.hops.Hop.DataOpTypes;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.parser.Expression.DataType;
import org.apache.sysml.runtime.controlprogram.LocalVariableMap;
import org.apache.sysml.runtime.controlprogram.caching.CacheableData;
@@ -78,33 +77,23 @@ public class RewriteRemovePersistentReadWrite extends HopRewriteRule
}
@Override
- public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
- throws HopsException
- {
+ public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state) {
if( roots == null )
return null;
-
for( Hop h : roots )
rule_RemovePersistentDataOp( h );
-
return roots;
}
@Override
- public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
- throws HopsException
- {
+ public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state) {
if( root == null )
return root;
-
rule_RemovePersistentDataOp( root );
-
return root;
}
- private void rule_RemovePersistentDataOp( Hop hop )
- throws HopsException
- {
+ private void rule_RemovePersistentDataOp( Hop hop ) {
//check mark processed
if( hop.isVisited() )
return;
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveReadAfterWrite.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveReadAfterWrite.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveReadAfterWrite.java
index c53d59d..5963871 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveReadAfterWrite.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveReadAfterWrite.java
@@ -26,7 +26,6 @@ import java.util.Map.Entry;
import org.apache.sysml.hops.DataOp;
import org.apache.sysml.hops.Hop;
import org.apache.sysml.hops.Hop.DataOpTypes;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.LiteralOp;
import org.apache.sysml.parser.DataExpression;
@@ -44,7 +43,6 @@ public class RewriteRemoveReadAfterWrite extends HopRewriteRule
@Override
@SuppressWarnings("unchecked")
public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
- throws HopsException
{
if( roots == null )
return null;
@@ -78,17 +76,12 @@ public class RewriteRemoveReadAfterWrite extends HopRewriteRule
}
@Override
- public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
- throws HopsException
- {
+ public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state) {
//do noting, read/write do not occur in predicates
-
return root;
}
- private void collectPersistentReadWriteOps(Hop hop, HashMap<String,Hop> pWrites, HashMap<String,Hop> pReads)
- throws HopsException
- {
+ private void collectPersistentReadWriteOps(Hop hop, HashMap<String,Hop> pWrites, HashMap<String,Hop> pReads) {
if( hop.isVisited() )
return;
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveUnnecessaryBranches.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveUnnecessaryBranches.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveUnnecessaryBranches.java
index 094adb0..619a084 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveUnnecessaryBranches.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveUnnecessaryBranches.java
@@ -23,7 +23,6 @@ import java.util.ArrayList;
import java.util.List;
import org.apache.sysml.hops.Hop;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.LiteralOp;
import org.apache.sysml.parser.IfStatement;
import org.apache.sysml.parser.IfStatementBlock;
@@ -44,7 +43,6 @@ public class RewriteRemoveUnnecessaryBranches extends StatementBlockRewriteRule
@Override
public List<StatementBlock> rewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus state)
- throws HopsException
{
ArrayList<StatementBlock> ret = new ArrayList<>();
@@ -88,8 +86,7 @@ public class RewriteRemoveUnnecessaryBranches extends StatementBlockRewriteRule
}
@Override
- public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs,
- ProgramRewriteStatus sate) throws HopsException {
+ public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate) {
return sbs;
}
}
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveUnnecessaryCasts.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveUnnecessaryCasts.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveUnnecessaryCasts.java
index e657f7f..224affe 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveUnnecessaryCasts.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteRemoveUnnecessaryCasts.java
@@ -22,7 +22,6 @@ package org.apache.sysml.hops.rewrite;
import java.util.ArrayList;
import org.apache.sysml.hops.Hop;
import org.apache.sysml.hops.Hop.OpOp1;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.UnaryOp;
import org.apache.sysml.parser.Expression.ValueType;
@@ -43,29 +42,20 @@ import org.apache.sysml.parser.Expression.ValueType;
*/
public class RewriteRemoveUnnecessaryCasts extends HopRewriteRule
{
-
@Override
- public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
- throws HopsException
- {
+ public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state) {
if( roots == null )
return null;
-
for( Hop h : roots )
rule_RemoveUnnecessaryCasts( h );
-
return roots;
}
@Override
- public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
- throws HopsException
- {
+ public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state) {
if( root == null )
return root;
-
rule_RemoveUnnecessaryCasts( root );
-
return root;
}
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagDataDependentOperators.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagDataDependentOperators.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagDataDependentOperators.java
index b7ab7d1..a758ee0 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagDataDependentOperators.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagDataDependentOperators.java
@@ -79,7 +79,6 @@ public class RewriteSplitDagDataDependentOperators extends StatementBlockRewrite
@Override
public List<StatementBlock> rewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus state)
- throws HopsException
{
//DAG splits not required for forced single node
if( DMLScript.rtplatform == RUNTIME_PLATFORM.SINGLE_NODE
@@ -482,8 +481,7 @@ public class RewriteSplitDagDataDependentOperators extends StatementBlockRewrite
}
@Override
- public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs,
- ProgramRewriteStatus sate) throws HopsException {
+ public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate) {
return sbs;
}
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagUnknownCSVRead.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagUnknownCSVRead.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagUnknownCSVRead.java
index 3e423b8..30631d6 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagUnknownCSVRead.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagUnknownCSVRead.java
@@ -52,7 +52,6 @@ public class RewriteSplitDagUnknownCSVRead extends StatementBlockRewriteRule
@Override
public List<StatementBlock> rewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus state)
- throws HopsException
{
//DAG splits not required for forced single node
if( DMLScript.rtplatform == RUNTIME_PLATFORM.SINGLE_NODE
@@ -145,15 +144,13 @@ public class RewriteSplitDagUnknownCSVRead extends StatementBlockRewriteRule
}
@Override
- public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs,
- ProgramRewriteStatus sate) throws HopsException {
+ public List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate) {
return sbs;
}
private void collectCSVReadHopsUnknownSize( ArrayList<Hop> roots, ArrayList<Hop> cand ) {
if( roots == null )
return;
-
Hop.resetVisitStatus(roots);
for( Hop root : roots )
collectCSVReadHopsUnknownSize(root, cand);
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/RewriteTransientWriteParentHandling.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/RewriteTransientWriteParentHandling.java b/src/main/java/org/apache/sysml/hops/rewrite/RewriteTransientWriteParentHandling.java
index 4e16084..994132b 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/RewriteTransientWriteParentHandling.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/RewriteTransientWriteParentHandling.java
@@ -23,7 +23,6 @@ import java.util.ArrayList;
import org.apache.sysml.hops.DataOp;
import org.apache.sysml.hops.Hop;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.hops.Hop.DataOpTypes;
/**
@@ -35,27 +34,20 @@ import org.apache.sysml.hops.Hop.DataOpTypes;
*/
public class RewriteTransientWriteParentHandling extends HopRewriteRule
{
-
@Override
- public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
- throws HopsException
- {
+ public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state) {
for (Hop h : roots)
rule_RehangTransientWriteParents(h, roots);
-
return roots;
}
@Override
- public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
- throws HopsException
- {
- // do nothing (does not apply to predicate hop DAGs)
+ public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state) {
+ // do nothing (does not apply to predicate hop DAGs)
return root;
}
private void rule_RehangTransientWriteParents(Hop hop, ArrayList<Hop> sbHops)
- throws HopsException
{
if (hop instanceof DataOp && ((DataOp) hop).getDataOpType() == DataOpTypes.TRANSIENTWRITE
&& !hop.getParent().isEmpty()) {
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/hops/rewrite/StatementBlockRewriteRule.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/rewrite/StatementBlockRewriteRule.java b/src/main/java/org/apache/sysml/hops/rewrite/StatementBlockRewriteRule.java
index ff2d5bf..fe8d111 100644
--- a/src/main/java/org/apache/sysml/hops/rewrite/StatementBlockRewriteRule.java
+++ b/src/main/java/org/apache/sysml/hops/rewrite/StatementBlockRewriteRule.java
@@ -24,7 +24,6 @@ import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.sysml.hops.HopsException;
import org.apache.sysml.parser.StatementBlock;
/**
@@ -52,10 +51,8 @@ public abstract class StatementBlockRewriteRule
* @param sb statement block
* @param sate program rewrite status
* @return list of statement blocks
- * @throws HopsException if HopsException occurs
*/
- public abstract List<StatementBlock> rewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus sate)
- throws HopsException;
+ public abstract List<StatementBlock> rewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus sate);
/**
* Handle a list of statement blocks. Specific type constraints have to be ensured
@@ -65,8 +62,6 @@ public abstract class StatementBlockRewriteRule
* @param sbs list of statement blocks
* @param sate program rewrite status
* @return list of statement blocks
- * @throws HopsException if HopsException occurs
*/
- public abstract List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate)
- throws HopsException;
+ public abstract List<StatementBlock> rewriteStatementBlocks(List<StatementBlock> sbs, ProgramRewriteStatus sate);
}
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/Aggregate.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/Aggregate.java b/src/main/java/org/apache/sysml/lops/Aggregate.java
index f90e214..2631415 100644
--- a/src/main/java/org/apache/sysml/lops/Aggregate.java
+++ b/src/main/java/org/apache/sysml/lops/Aggregate.java
@@ -127,13 +127,12 @@ public class Aggregate extends Lop
}
@Override
- public String getInstructions(int input_index, int output_index) throws LopsException {
+ public String getInstructions(int input_index, int output_index) {
return getInstructions(String.valueOf(input_index), String.valueOf(output_index));
}
@Override
public String getInstructions(String input1, String output)
- throws LopsException
{
boolean isCorrectionApplicable = (getExecType() == ExecType.MR &&
(operation == OperationTypes.Mean || operation == OperationTypes.Var
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/Append.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/Append.java b/src/main/java/org/apache/sysml/lops/Append.java
index f2b9896..ac96d89 100644
--- a/src/main/java/org/apache/sysml/lops/Append.java
+++ b/src/main/java/org/apache/sysml/lops/Append.java
@@ -67,9 +67,7 @@ public class Append extends Lop
//called when append executes in CP
@Override
- public String getInstructions(String input1, String input2, String input3, String output)
- throws LopsException
- {
+ public String getInstructions(String input1, String input2, String input3, String output) {
StringBuilder sb = new StringBuilder();
sb.append( getExecType() );
sb.append( OPERAND_DELIMITOR );
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/AppendG.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/AppendG.java b/src/main/java/org/apache/sysml/lops/AppendG.java
index b412563..5483121 100644
--- a/src/main/java/org/apache/sysml/lops/AppendG.java
+++ b/src/main/java/org/apache/sysml/lops/AppendG.java
@@ -87,9 +87,7 @@ public class AppendG extends Lop
//called when append executes in MR
@Override
- public String getInstructions(int input_index1, int input_index2, int input_index3, int input_index4, int output_index)
- throws LopsException
- {
+ public String getInstructions(int input_index1, int input_index2, int input_index3, int input_index4, int output_index) {
return getInstructions(
String.valueOf(input_index1),
String.valueOf(input_index2),
@@ -100,9 +98,7 @@ public class AppendG extends Lop
//called when append executes in SP
@Override
- public String getInstructions(String input_index1, String input_index2, String input_index3, String input_index4, String output_index)
- throws LopsException
- {
+ public String getInstructions(String input_index1, String input_index2, String input_index3, String input_index4, String output_index) {
StringBuilder sb = new StringBuilder();
sb.append( getExecType() );
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/AppendGAlignedSP.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/AppendGAlignedSP.java b/src/main/java/org/apache/sysml/lops/AppendGAlignedSP.java
index a591c3e..0e83ebb 100644
--- a/src/main/java/org/apache/sysml/lops/AppendGAlignedSP.java
+++ b/src/main/java/org/apache/sysml/lops/AppendGAlignedSP.java
@@ -66,7 +66,6 @@ public class AppendGAlignedSP extends Lop
//called when append executes in CP
@Override
public String getInstructions(String input_index1, String input_index2, String input_index3, String output_index)
- throws LopsException
{
StringBuilder sb = new StringBuilder();
sb.append( getExecType() );
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/AppendM.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/AppendM.java b/src/main/java/org/apache/sysml/lops/AppendM.java
index 0d71319..9ca8047 100644
--- a/src/main/java/org/apache/sysml/lops/AppendM.java
+++ b/src/main/java/org/apache/sysml/lops/AppendM.java
@@ -80,9 +80,7 @@ public class AppendM extends Lop
//called when append executes in MR
@Override
- public String getInstructions(int input_index1, int input_index2, int input_index3, int output_index)
- throws LopsException
- {
+ public String getInstructions(int input_index1, int input_index2, int input_index3, int output_index) {
return getInstructions(
String.valueOf(input_index1),
String.valueOf(input_index2),
@@ -93,9 +91,7 @@ public class AppendM extends Lop
//called when append executes in SP
@Override
- public String getInstructions(String input1, String input2, String input3, String output)
- throws LopsException
- {
+ public String getInstructions(String input1, String input2, String input3, String output) {
StringBuilder sb = new StringBuilder();
sb.append( getExecType() );
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/AppendR.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/AppendR.java b/src/main/java/org/apache/sysml/lops/AppendR.java
index e8d55b4..0fbec7e 100644
--- a/src/main/java/org/apache/sysml/lops/AppendR.java
+++ b/src/main/java/org/apache/sysml/lops/AppendR.java
@@ -71,9 +71,7 @@ public class AppendR extends Lop
//called when append executes in MR
@Override
- public String getInstructions(int input_index1, int input_index2, int output_index)
- throws LopsException
- {
+ public String getInstructions(int input_index1, int input_index2, int output_index) {
return getInstructions(
String.valueOf(input_index1),
String.valueOf(input_index2),
@@ -82,9 +80,7 @@ public class AppendR extends Lop
//called when append executes in CP
@Override
- public String getInstructions(String input1, String input2, String output)
- throws LopsException
- {
+ public String getInstructions(String input1, String input2, String output) {
StringBuilder sb = new StringBuilder();
sb.append( getExecType() );
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/Binary.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/Binary.java b/src/main/java/org/apache/sysml/lops/Binary.java
index d393ea2..26c9778 100644
--- a/src/main/java/org/apache/sysml/lops/Binary.java
+++ b/src/main/java/org/apache/sysml/lops/Binary.java
@@ -190,7 +190,7 @@ public class Binary extends Lop
@Override
- public String getInstructions(int input_index1, int input_index2, int output_index) throws LopsException {
+ public String getInstructions(int input_index1, int input_index2, int output_index) {
return getInstructions(
String.valueOf(input_index1),
String.valueOf(input_index2),
@@ -198,9 +198,7 @@ public class Binary extends Lop
}
@Override
- public String getInstructions(String input1, String input2, String output)
- throws LopsException
- {
+ public String getInstructions(String input1, String input2, String output) {
StringBuilder sb = new StringBuilder();
sb.append( getExecType() );
sb.append( OPERAND_DELIMITOR );
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/BinaryM.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/BinaryM.java b/src/main/java/org/apache/sysml/lops/BinaryM.java
index d3183e6..08ab70e 100644
--- a/src/main/java/org/apache/sysml/lops/BinaryM.java
+++ b/src/main/java/org/apache/sysml/lops/BinaryM.java
@@ -59,9 +59,8 @@ public class BinaryM extends Lop
* @param et exec type
* @param partitioned true if partitioned
* @param colVector true if colVector
- * @throws LopsException if LopsException occurs
*/
- public BinaryM(Lop input1, Lop input2, OperationTypes op, DataType dt, ValueType vt, ExecType et, boolean partitioned, boolean colVector ) throws LopsException {
+ public BinaryM(Lop input1, Lop input2, OperationTypes op, DataType dt, ValueType vt, ExecType et, boolean partitioned, boolean colVector ) {
super(Lop.Type.Binary, dt, vt);
_operation = op;
@@ -164,22 +163,21 @@ public class BinaryM extends Lop
}
}
- public static boolean isOpcode(String opcode)
- {
+ public static boolean isOpcode(String opcode) {
return opcode.equals("map+") || opcode.equals("map-") ||
- opcode.equals("map*") || opcode.equals("map/") ||
- opcode.equals("map%%") || opcode.equals("map%/%") ||
- opcode.equals("map<") || opcode.equals("map<=") ||
- opcode.equals("map>") || opcode.equals("map>=") ||
- opcode.equals("map==") || opcode.equals("map!=") ||
- opcode.equals("map&&") || opcode.equals("map||") ||
- opcode.equals("mapmin") || opcode.equals("mapmax") ||
+ opcode.equals("map*") || opcode.equals("map/") ||
+ opcode.equals("map%%") || opcode.equals("map%/%") ||
+ opcode.equals("map<") || opcode.equals("map<=") ||
+ opcode.equals("map>") || opcode.equals("map>=") ||
+ opcode.equals("map==") || opcode.equals("map!=") ||
+ opcode.equals("map&&") || opcode.equals("map||") ||
+ opcode.equals("mapmin") || opcode.equals("mapmax") ||
opcode.equals("map^") || opcode.equals("map1-*");
}
@Override
- public String getInstructions(int input_index1, int input_index2, int output_index) throws LopsException {
+ public String getInstructions(int input_index1, int input_index2, int output_index) {
return getInstructions(
String.valueOf(input_index1),
String.valueOf(input_index2),
@@ -188,7 +186,6 @@ public class BinaryM extends Lop
@Override
public String getInstructions(String input1, String input2, String output)
- throws LopsException
{
StringBuilder sb = new StringBuilder();
sb.append( getExecType() );
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/BinaryScalar.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/BinaryScalar.java b/src/main/java/org/apache/sysml/lops/BinaryScalar.java
index f581a9a..5b5fe02 100644
--- a/src/main/java/org/apache/sysml/lops/BinaryScalar.java
+++ b/src/main/java/org/apache/sysml/lops/BinaryScalar.java
@@ -77,8 +77,7 @@ public class BinaryScalar extends Lop
}
@Override
- public String getInstructions(String input1, String input2, String output) throws LopsException
- {
+ public String getInstructions(String input1, String input2, String output) {
StringBuilder sb = new StringBuilder();
sb.append(getExecType());
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/BinaryUAggChain.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/BinaryUAggChain.java b/src/main/java/org/apache/sysml/lops/BinaryUAggChain.java
index e1b8968..388f4a4 100644
--- a/src/main/java/org/apache/sysml/lops/BinaryUAggChain.java
+++ b/src/main/java/org/apache/sysml/lops/BinaryUAggChain.java
@@ -49,12 +49,9 @@ public class BinaryUAggChain extends Lop
* @param dt data type
* @param vt value type
* @param et execution type
- * @throws LopsException if LopsException occurs
*/
- public BinaryUAggChain(Lop input1, Binary.OperationTypes bop, Aggregate.OperationTypes uaop, PartialAggregate.DirectionTypes uadir, DataType dt, ValueType vt, ExecType et)
- throws LopsException
- {
- super(Lop.Type.BinUaggChain, dt, vt);
+ public BinaryUAggChain(Lop input1, Binary.OperationTypes bop, Aggregate.OperationTypes uaop, PartialAggregate.DirectionTypes uadir, DataType dt, ValueType vt, ExecType et) {
+ super(Lop.Type.BinUaggChain, dt, vt);
addInput(input1); //X
input1.addOutput(this);
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/CSVReBlock.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/CSVReBlock.java b/src/main/java/org/apache/sysml/lops/CSVReBlock.java
index 1217cd1..92694b0 100644
--- a/src/main/java/org/apache/sysml/lops/CSVReBlock.java
+++ b/src/main/java/org/apache/sysml/lops/CSVReBlock.java
@@ -37,7 +37,7 @@ public class CSVReBlock extends Lop
private int _rows_per_block;
private int _cols_per_block;
- public CSVReBlock(Lop input, int rows_per_block, int cols_per_block, DataType dt, ValueType vt, ExecType et) throws LopsException
+ public CSVReBlock(Lop input, int rows_per_block, int cols_per_block, DataType dt, ValueType vt, ExecType et)
{
super(Lop.Type.CSVReBlock, dt, vt);
addInput(input);
@@ -67,7 +67,7 @@ public class CSVReBlock extends Lop
return "CSVReblock - rows per block = " + _rows_per_block + " cols per block " + _cols_per_block ;
}
- private String prepCSVProperties() throws LopsException {
+ private String prepCSVProperties() {
StringBuilder sb = new StringBuilder();
Data dataInput = (Data)getInputs().get(0);
@@ -110,12 +110,12 @@ public class CSVReBlock extends Lop
}
@Override
- public String getInstructions(int input_index, int output_index) throws LopsException {
+ public String getInstructions(int input_index, int output_index) {
return getInstructions(String.valueOf(input_index), String.valueOf(output_index));
}
@Override
- public String getInstructions(String input1, String output) throws LopsException {
+ public String getInstructions(String input1, String output) {
StringBuilder sb = new StringBuilder();
sb.append( getExecType() );
sb.append( Lop.OPERAND_DELIMITOR );
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/Checkpoint.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/Checkpoint.java b/src/main/java/org/apache/sysml/lops/Checkpoint.java
index 84e1825..d469d7e 100644
--- a/src/main/java/org/apache/sysml/lops/Checkpoint.java
+++ b/src/main/java/org/apache/sysml/lops/Checkpoint.java
@@ -57,12 +57,9 @@ public class Checkpoint extends Lop
* @param dt data type
* @param vt value type
* @param level storage level
- * @throws LopsException if LopsException occurs
*/
- public Checkpoint(Lop input, DataType dt, ValueType vt, String level)
- throws LopsException
- {
- super(Lop.Type.Checkpoint, dt, vt);
+ public Checkpoint(Lop input, DataType dt, ValueType vt, String level) {
+ super(Lop.Type.Checkpoint, dt, vt);
this.addInput(input);
input.addOutput(this);
@@ -92,9 +89,7 @@ public class Checkpoint extends Lop
}
@Override
- public String getInstructions(String input1, String output)
- throws LopsException
- {
+ public String getInstructions(String input1, String output) {
//valid execution type
if(getExecType() != ExecType.SPARK) {
throw new LopsException("Wrong execution type for Checkpoint.getInstructions (expected: SPARK, found: "+getExecType()+").");
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/CoVariance.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/CoVariance.java b/src/main/java/org/apache/sysml/lops/CoVariance.java
index 8e84222..00a3bb6 100644
--- a/src/main/java/org/apache/sysml/lops/CoVariance.java
+++ b/src/main/java/org/apache/sysml/lops/CoVariance.java
@@ -32,23 +32,21 @@ import org.apache.sysml.parser.Expression.ValueType;
public class CoVariance extends Lop
{
- public CoVariance(Lop input1, DataType dt, ValueType vt, ExecType et) throws LopsException {
+ public CoVariance(Lop input1, DataType dt, ValueType vt, ExecType et) {
super(Lop.Type.CoVariance, dt, vt);
init(input1, null, null, et);
}
- public CoVariance(Lop input1, Lop input2, DataType dt, ValueType vt, ExecType et) throws LopsException {
+ public CoVariance(Lop input1, Lop input2, DataType dt, ValueType vt, ExecType et) {
this(input1, input2, null, dt, vt, et);
}
- public CoVariance(Lop input1, Lop input2, Lop input3, DataType dt, ValueType vt, ExecType et) throws LopsException {
+ public CoVariance(Lop input1, Lop input2, Lop input3, DataType dt, ValueType vt, ExecType et) {
super(Lop.Type.CoVariance, dt, vt);
init(input1, input2, input3, et);
}
- private void init(Lop input1, Lop input2, Lop input3, ExecType et)
- throws LopsException
- {
+ private void init(Lop input1, Lop input2, Lop input3, ExecType et) {
/*
* When et = MR: covariance lop will have a single input lop, which
* denote the combined input data -- output of combinebinary, if unweighed;
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/CombineBinary.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/CombineBinary.java b/src/main/java/org/apache/sysml/lops/CombineBinary.java
index 44ee47d..0836aca 100644
--- a/src/main/java/org/apache/sysml/lops/CombineBinary.java
+++ b/src/main/java/org/apache/sysml/lops/CombineBinary.java
@@ -72,9 +72,7 @@ public class CombineBinary extends Lop
}
@Override
- public String getInstructions(int input_index1, int input_index2, int output_index)
- throws LopsException
- {
+ public String getInstructions(int input_index1, int input_index2, int output_index) {
// Determine whether or not the second input denotes weights vector.
// CombineBinary can be used to combine (data,weights) vectors or (data1,data2) vectors
boolean isSecondInputIsWeight = true;
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/CombineTernary.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/CombineTernary.java b/src/main/java/org/apache/sysml/lops/CombineTernary.java
index ac1a60f..2352935 100644
--- a/src/main/java/org/apache/sysml/lops/CombineTernary.java
+++ b/src/main/java/org/apache/sysml/lops/CombineTernary.java
@@ -69,8 +69,7 @@ public class CombineTernary extends Lop
@Override
public String getInstructions(int input_index1, int input_index2,
- int input_index3, int output_index)
- throws LopsException
+ int input_index3, int output_index)
{
StringBuilder sb = new StringBuilder();
sb.append( getExecType() );
http://git-wip-us.apache.org/repos/asf/systemml/blob/215a1cc6/src/main/java/org/apache/sysml/lops/CombineUnary.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/CombineUnary.java b/src/main/java/org/apache/sysml/lops/CombineUnary.java
index a7f34f6..11fdc5b 100644
--- a/src/main/java/org/apache/sysml/lops/CombineUnary.java
+++ b/src/main/java/org/apache/sysml/lops/CombineUnary.java
@@ -60,9 +60,7 @@ public class CombineUnary extends Lop
}
@Override
- public String getInstructions(int input_index1, int output_index)
- throws LopsException
- {
+ public String getInstructions(int input_index1, int output_index) {
StringBuilder sb = new StringBuilder();
sb.append( getExecType() );
sb.append( Lop.OPERAND_DELIMITOR );