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 2017/02/16 20:22:50 UTC

[2/4] incubator-systemml git commit: [SYSTEMML-1275] Remove workaround flags disable_sparse/disable_caching

[SYSTEMML-1275] Remove workaround flags disable_sparse/disable_caching

Project: http://git-wip-us.apache.org/repos/asf/incubator-systemml/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-systemml/commit/ee7591cb
Tree: http://git-wip-us.apache.org/repos/asf/incubator-systemml/tree/ee7591cb
Diff: http://git-wip-us.apache.org/repos/asf/incubator-systemml/diff/ee7591cb

Branch: refs/heads/master
Commit: ee7591cb243af5fb5a2cd45796f71f2936e3d2ef
Parents: f893f6a
Author: Matthias Boehm <mb...@gmail.com>
Authored: Thu Feb 16 12:12:42 2017 -0800
Committer: Matthias Boehm <mb...@gmail.com>
Committed: Thu Feb 16 12:13:47 2017 -0800

----------------------------------------------------------------------
 .../java/org/apache/sysml/api/DMLScript.java    | 19 -------------
 .../java/org/apache/sysml/hops/AggBinaryOp.java |  2 +-
 .../org/apache/sysml/hops/OptimizerUtils.java   |  2 +-
 .../hops/cost/CostEstimatorStaticRuntime.java   |  2 +-
 .../parfor/opt/OptimizerRuleBased.java          |  2 +-
 .../spark/utils/RDDConverterUtils.java          |  2 +-
 .../sysml/runtime/matrix/data/MatrixBlock.java  | 29 ++++----------------
 .../applications/dml/ApplyTransformDMLTest.java | 15 ----------
 .../applications/dml/ArimaDMLTest.java          | 14 ----------
 .../applications/dml/CsplineCGDMLTest.java      | 15 ----------
 .../applications/dml/CsplineDSDMLTest.java      | 16 -----------
 .../applications/dml/GLMDMLTest.java            | 14 ----------
 .../applications/dml/GNMFDMLTest.java           | 14 ----------
 .../applications/dml/HITSDMLTest.java           | 17 +-----------
 .../applications/dml/ID3DMLTest.java            | 14 ----------
 .../applications/dml/L2SVMDMLTest.java          | 14 ----------
 .../applications/dml/LinearLogRegDMLTest.java   | 14 ----------
 .../dml/LinearRegressionDMLTest.java            | 15 ----------
 .../dml/MDABivariateStatsDMLTest.java           | 15 ----------
 .../applications/dml/MultiClassSVMDMLTest.java  | 15 ----------
 .../applications/dml/NaiveBayesDMLTest.java     | 14 ----------
 .../dml/NaiveBayesParforDMLTest.java            | 14 ----------
 .../applications/dml/PageRankDMLTest.java       | 14 ----------
 .../applications/dml/WelchTDMLTest.java         | 14 ----------
 24 files changed, 12 insertions(+), 294 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/main/java/org/apache/sysml/api/DMLScript.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/api/DMLScript.java b/src/main/java/org/apache/sysml/api/DMLScript.java
index e0e0cb2..83d0f5b 100644
--- a/src/main/java/org/apache/sysml/api/DMLScript.java
+++ b/src/main/java/org/apache/sysml/api/DMLScript.java
@@ -116,20 +116,6 @@ public class DMLScript
 	public static boolean USE_ACCELERATOR = false;
 	public static boolean FORCE_ACCELERATOR = false;
 	
-	// ------------------------------------------------------------------------
-	// We have identified two performance bugs that frequently occurs in deep learning script.
-	//
-	// First, we repeatedly perform unnecessary conversion to sparse format.
-	// Also, the operations such as matrix multiplication (including BLAS and CuBLAS) are 
-	// optimized for dense.
-	//
-	// Second, even with large memory budget, we sometimes spend almost 20-30% time in caching.
-	// These two bugs are tracked in SYSTEMML-1140 and should be addressed before SystemML 1.0 release.
-	// We are keeping this flag for performance debugging until SYSTEMML-1140is resolved.
-	public static boolean DISABLE_SPARSE = false;
-	public static boolean DISABLE_CACHING = false;
-	// ------------------------------------------------------------------------
-	
 	// flag that indicates whether or not to suppress any prints to stdout
 	public static boolean _suppressPrint2Stdout = false;
 	
@@ -674,11 +660,6 @@ public class DMLScript
 		{  
 			initHadoopExecution( dmlconf );
 			
-			if(DISABLE_CACHING) {
-				//disable caching globally 
-				CacheableData.disableCaching();
-			}
-			
 			//run execute (w/ exception handling to ensure proper shutdown)
 			ec = ExecutionContextFactory.createContext(rtprog);
 			rtprog.execute( ec );  

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/main/java/org/apache/sysml/hops/AggBinaryOp.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/AggBinaryOp.java b/src/main/java/org/apache/sysml/hops/AggBinaryOp.java
index fe8a30d..73dd8a4 100644
--- a/src/main/java/org/apache/sysml/hops/AggBinaryOp.java
+++ b/src/main/java/org/apache/sysml/hops/AggBinaryOp.java
@@ -358,7 +358,7 @@ public class AggBinaryOp extends Hop implements MultiThreadedHop
 		
 		//account for potential final dense-sparse transformation (worst-case sparse representation)
 		if( dim2 >= 2 ) //vectors always dense
-			ret = OptimizerUtils.estimateSizeExactSparsity(dim1, dim2, MatrixBlock.getSparsityTurnPoint());
+			ret = OptimizerUtils.estimateSizeExactSparsity(dim1, dim2, MatrixBlock.SPARSITY_TURN_POINT);
 		
 		return ret;
 	}

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/main/java/org/apache/sysml/hops/OptimizerUtils.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/OptimizerUtils.java b/src/main/java/org/apache/sysml/hops/OptimizerUtils.java
index a7525a5..86b7968 100644
--- a/src/main/java/org/apache/sysml/hops/OptimizerUtils.java
+++ b/src/main/java/org/apache/sysml/hops/OptimizerUtils.java
@@ -459,7 +459,7 @@ public class OptimizerUtils
 
 	public static boolean checkSparseBlockCSRConversion( MatrixCharacteristics mcIn ) {
 		return Checkpoint.CHECKPOINT_SPARSE_CSR
-			&& OptimizerUtils.getSparsity(mcIn) < MatrixBlock.getSparsityTurnPoint();
+			&& OptimizerUtils.getSparsity(mcIn) < MatrixBlock.SPARSITY_TURN_POINT;
 	}
 	
 	/**

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/main/java/org/apache/sysml/hops/cost/CostEstimatorStaticRuntime.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/hops/cost/CostEstimatorStaticRuntime.java b/src/main/java/org/apache/sysml/hops/cost/CostEstimatorStaticRuntime.java
index 3d46198..f8cd476 100644
--- a/src/main/java/org/apache/sysml/hops/cost/CostEstimatorStaticRuntime.java
+++ b/src/main/java/org/apache/sysml/hops/cost/CostEstimatorStaticRuntime.java
@@ -981,7 +981,7 @@ public class CostEstimatorStaticRuntime extends CostEstimator
 								if( d3s==1.0 )
 									return d3m * d3n * nflopRand + d3m * d3n * 8; //DENSE gen (incl allocate)    
 								else 
-									return (d3s>=MatrixBlock.getSparsityTurnPoint())? 
+									return (d3s>=MatrixBlock.SPARSITY_TURN_POINT)? 
 										    2 * d3m * d3n * nflopRand + d3m * d3n * 8: //DENSE gen (incl allocate)    
 									        3 * d3m * d3n * d3s * nflopRand + d3m * d3n * d3s * 24; //SPARSE gen (incl allocate)
 							}

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/main/java/org/apache/sysml/runtime/controlprogram/parfor/opt/OptimizerRuleBased.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/runtime/controlprogram/parfor/opt/OptimizerRuleBased.java b/src/main/java/org/apache/sysml/runtime/controlprogram/parfor/opt/OptimizerRuleBased.java
index 98fa664..66065bf 100644
--- a/src/main/java/org/apache/sysml/runtime/controlprogram/parfor/opt/OptimizerRuleBased.java
+++ b/src/main/java/org/apache/sysml/runtime/controlprogram/parfor/opt/OptimizerRuleBased.java
@@ -1590,7 +1590,7 @@ public class OptimizerRuleBased extends Optimizer
 			
 			if(    dat !=null && dat instanceof MatrixObject 
 				&& moDpf == PDataPartitionFormat.COLUMN_WISE	
-				&& ((MatrixObject)dat).getSparsity()<= MatrixBlock.getSparsityTurnPoint()  //check for sparse matrix
+				&& ((MatrixObject)dat).getSparsity()<=MatrixBlock.SPARSITY_TURN_POINT  //check for sparse matrix
 				&& rIsTransposeSafePartition(pn, moVarname) ) //tranpose-safe
 			{
 				pfpb.setTransposeSparseColumnVector( true );

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/main/java/org/apache/sysml/runtime/instructions/spark/utils/RDDConverterUtils.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/runtime/instructions/spark/utils/RDDConverterUtils.java b/src/main/java/org/apache/sysml/runtime/instructions/spark/utils/RDDConverterUtils.java
index 4d95b95..6b6c61d 100644
--- a/src/main/java/org/apache/sysml/runtime/instructions/spark/utils/RDDConverterUtils.java
+++ b/src/main/java/org/apache/sysml/runtime/instructions/spark/utils/RDDConverterUtils.java
@@ -305,7 +305,7 @@ public class RDDConverterUtils
 				mc.getNumRowBlocks(), mc.getColsPerBlock(), Math.ceil((double)mc.getNonZeros()/mc.getRows()));
 		double partsize = Math.ceil(datasize/in.partitions().size());
 		double blksz = Math.min(mc.getRows(), mc.getRowsPerBlock());
-		return partsize/rowsize/blksz < MatrixBlock.getSparsityTurnPoint();
+		return partsize/rowsize/blksz < MatrixBlock.SPARSITY_TURN_POINT;
 	}
 
 	private static int countNnz(Object vect, boolean isVector, int off) {

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/main/java/org/apache/sysml/runtime/matrix/data/MatrixBlock.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/runtime/matrix/data/MatrixBlock.java b/src/main/java/org/apache/sysml/runtime/matrix/data/MatrixBlock.java
index 58e2034..fb4f196 100644
--- a/src/main/java/org/apache/sysml/runtime/matrix/data/MatrixBlock.java
+++ b/src/main/java/org/apache/sysml/runtime/matrix/data/MatrixBlock.java
@@ -33,7 +33,6 @@ import java.util.Iterator;
 
 import org.apache.commons.math3.random.Well1024a;
 import org.apache.hadoop.io.DataInputBuffer;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.conf.ConfigurationManager;
 import org.apache.sysml.hops.Hop.OpOp2;
 import org.apache.sysml.hops.OptimizerUtils;
@@ -92,9 +91,9 @@ public class MatrixBlock extends MatrixValue implements CacheBlock, Externalizab
 	private static final long serialVersionUID = 7319972089143154056L;
 	
 	//sparsity nnz threshold, based on practical experiments on space consumption and performance
-	private static final double SPARSITY_TURN_POINT = 0.4;
+	public static final double SPARSITY_TURN_POINT = 0.4;
 	//sparsity threshold for ultra-sparse matrix operations (40nnz in a 1kx1k block)
-	private static final double ULTRA_SPARSITY_TURN_POINT = 0.00004; 
+	public static final double ULTRA_SPARSITY_TURN_POINT = 0.00004; 
 	//default sparse block type: modified compressed sparse rows, for efficient incremental construction
 	public static final SparseBlock.Type DEFAULT_SPARSEBLOCK = SparseBlock.Type.MCSR;
 	//default sparse block type for update in place: compressed sparse rows, to prevent serialization
@@ -184,18 +183,6 @@ public class MatrixBlock extends MatrixValue implements CacheBlock, Externalizab
 	// Initialization methods
 	// (reset, init, allocate, etc)
 	
-	public static double getSparsityTurnPoint() {
-		if(DMLScript.DISABLE_SPARSE)
-			return 1e-6;
-		return SPARSITY_TURN_POINT;
-	}
-	
-	public static double getUltraSparsityTurnPoint() {
-		if(DMLScript.DISABLE_SPARSE)
-			return 1e-9;
-		return ULTRA_SPARSITY_TURN_POINT;
-	}
-	
 	@Override
 	public void reset() {
 		reset(rlen, clen, sparse, -1, 0);
@@ -904,7 +891,7 @@ public class MatrixBlock extends MatrixValue implements CacheBlock, Externalizab
 	{
 		double sp = ((double)nonZeros/rlen)/clen;
 		//check for sparse representation in order to account for vectors in dense
-		return sparse && sp< getUltraSparsityTurnPoint() && nonZeros<40;
+		return sparse && sp<ULTRA_SPARSITY_TURN_POINT && nonZeros<40;
 	}
 
 	/**
@@ -1006,14 +993,10 @@ public class MatrixBlock extends MatrixValue implements CacheBlock, Externalizab
 	 * @return true if matrix block shold be in sparse format in memory
 	 */
 	public static boolean evalSparseFormatInMemory( final long nrows, final long ncols, final long nnz )
-	{		
-//		// Extremely low getSparsityTurnPoint should disable sparse in most cases
-//		if(DMLScript.DISABLE_SPARSE)
-//			return false;
-		
+	{				
 		//evaluate sparsity threshold
 		double lsparsity = (double)nnz/nrows/ncols;
-		boolean lsparse = (lsparsity < getSparsityTurnPoint());
+		boolean lsparse = (lsparsity < SPARSITY_TURN_POINT);
 		
 		//compare size of sparse and dense representation in order to prevent
 		//that the sparse size exceed the dense size since we use the dense size
@@ -1038,7 +1021,7 @@ public class MatrixBlock extends MatrixValue implements CacheBlock, Externalizab
 	{
 		//evaluate sparsity threshold
 		double lsparsity = ((double)nnz/nrows)/ncols;
-		boolean lsparse = (lsparsity < getSparsityTurnPoint());
+		boolean lsparse = (lsparsity < SPARSITY_TURN_POINT);
 		
 		double sizeUltraSparse = estimateSizeUltraSparseOnDisk( nrows, ncols, nnz );
 		double sizeSparse = estimateSizeSparseOnDisk(nrows, ncols, nnz);

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/ApplyTransformDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/ApplyTransformDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/ApplyTransformDMLTest.java
index e419844..240eb6f 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/ApplyTransformDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/ApplyTransformDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.ApplyTransformTest;
 
 @RunWith(value = Parameterized.class)
@@ -38,18 +37,4 @@ public class ApplyTransformDMLTest extends ApplyTransformTest {
 	public void testApplyTransformDml() {
 		testApplyTransform(ScriptType.DML);
 	}
-	
-	@Test
-	public void testApplyTransformDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testApplyTransform(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
-
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/ArimaDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/ArimaDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/ArimaDMLTest.java
index 86fc575..17ef153 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/ArimaDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/ArimaDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.ArimaTest;
 
 @RunWith(value = Parameterized.class)
@@ -37,17 +36,4 @@ public class ArimaDMLTest extends ArimaTest {
 	public void testArimaDml() {
 		testArima(ScriptType.DML);
 	}
-
-	@Test
-	public void testArimaDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testArima(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/CsplineCGDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/CsplineCGDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/CsplineCGDMLTest.java
index 7b9c466..5a61764 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/CsplineCGDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/CsplineCGDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.CsplineCGTest;
 
 @RunWith(value = Parameterized.class)
@@ -37,18 +36,4 @@ public class CsplineCGDMLTest extends CsplineCGTest {
 	public void testCsplineCGDml() {
 		testCsplineCG(ScriptType.DML);
 	}
-	
-	@Test
-	public void testCsplineCGDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testCsplineCG(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
-
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/CsplineDSDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/CsplineDSDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/CsplineDSDMLTest.java
index f99440e..ddb03a8 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/CsplineDSDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/CsplineDSDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.CsplineDSTest;
 
 @RunWith(value = Parameterized.class)
@@ -37,19 +36,4 @@ public class CsplineDSDMLTest extends CsplineDSTest {
 	public void testCsplineDSDml() {
 		testCsplineDS(ScriptType.DML);
 	}
-	
-	
-	@Test
-	public void testCsplineDSDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testCsplineDS(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
-
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/GLMDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/GLMDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/GLMDMLTest.java
index 97c0faa..71e16f5 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/GLMDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/GLMDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.GLMTest;
 
 @RunWith(value = Parameterized.class)
@@ -40,17 +39,4 @@ public class GLMDMLTest extends GLMTest {
 	public void testGLMDml() {
 		testGLM(ScriptType.DML);
 	}
-
-	@Test
-	public void testGLMDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testGLM(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/GNMFDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/GNMFDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/GNMFDMLTest.java
index 56e10d5..933b892 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/GNMFDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/GNMFDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.GNMFTest;
 
 @RunWith(value = Parameterized.class)
@@ -37,17 +36,4 @@ public class GNMFDMLTest extends GNMFTest {
 	public void testGNMFDml() {
 		testGNMF(ScriptType.DML);
 	}
-	
-	@Test
-	public void testGNMFDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testGNMF(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/HITSDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/HITSDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/HITSDMLTest.java
index 535582a..52c8630 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/HITSDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/HITSDMLTest.java
@@ -20,7 +20,6 @@
 package org.apache.sysml.test.integration.applications.dml;
 
 import org.junit.Test;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.HITSTest;
 
 public class HITSDMLTest extends HITSTest {
@@ -33,19 +32,5 @@ public class HITSDMLTest extends HITSTest {
 	@Test
 	public void testHitsDml() {
 		testHits(ScriptType.DML);
-	}
-
-	@Test
-	public void testHitsDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testHits(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
-	
+	}	
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/ID3DMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/ID3DMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/ID3DMLTest.java
index 012e678..676e0e3 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/ID3DMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/ID3DMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.ID3Test;
 
 @RunWith(value = Parameterized.class)
@@ -37,17 +36,4 @@ public class ID3DMLTest extends ID3Test {
 	public void testID3Dml() {
 		testID3(ScriptType.DML);
 	}
-
-	@Test
-	public void testID3DmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testID3(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/L2SVMDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/L2SVMDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/L2SVMDMLTest.java
index cc69b77..23249e7 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/L2SVMDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/L2SVMDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.L2SVMTest;
 
 @RunWith(value = Parameterized.class)
@@ -37,17 +36,4 @@ public class L2SVMDMLTest extends L2SVMTest {
 	public void testL2SVMDml() {
 		testL2SVM(ScriptType.DML);
 	}
-
-	@Test
-	public void testL2SVMDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testL2SVM(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/LinearLogRegDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/LinearLogRegDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/LinearLogRegDMLTest.java
index e19d856..4691e25 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/LinearLogRegDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/LinearLogRegDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.LinearLogRegTest;
 
 @RunWith(value = Parameterized.class)
@@ -37,17 +36,4 @@ public class LinearLogRegDMLTest extends LinearLogRegTest {
 	public void testLinearLogRegDml() {
 		testLinearLogReg(ScriptType.DML);
 	}
-
-	@Test
-	public void testLinearLogRegDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testLinearLogReg(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/LinearRegressionDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/LinearRegressionDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/LinearRegressionDMLTest.java
index d18f98a..c9dc307 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/LinearRegressionDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/LinearRegressionDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.LinearRegressionTest;
 
 @RunWith(value = Parameterized.class)
@@ -37,18 +36,4 @@ public class LinearRegressionDMLTest extends LinearRegressionTest {
 	public void testLinearRegressionDml() {
 		testLinearRegression(ScriptType.DML);
 	}
-	
-	@Test
-	public void testLinearRegressionDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testLinearRegression(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
-
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/MDABivariateStatsDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/MDABivariateStatsDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/MDABivariateStatsDMLTest.java
index 249508f..0564929 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/MDABivariateStatsDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/MDABivariateStatsDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.MDABivariateStatsTest;
 
 @RunWith(value = Parameterized.class)
@@ -37,18 +36,4 @@ public class MDABivariateStatsDMLTest extends MDABivariateStatsTest {
 	public void testMDABivariateStatsDml() {
 		testMDABivariateStats(ScriptType.DML);
 	}
-	
-	@Test
-	public void testMDABivariateStatsDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testMDABivariateStats(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
-
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/MultiClassSVMDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/MultiClassSVMDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/MultiClassSVMDMLTest.java
index c3654dc..7791ef6 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/MultiClassSVMDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/MultiClassSVMDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.MultiClassSVMTest;
 
 @RunWith(value = Parameterized.class)
@@ -37,18 +36,4 @@ public class MultiClassSVMDMLTest extends MultiClassSVMTest {
 	public void testMultiClassSVMDml() {
 		testMultiClassSVM(ScriptType.DML);
 	}
-	
-	@Test
-	public void testMultiClassSVMDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testMultiClassSVM(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
-
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/NaiveBayesDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/NaiveBayesDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/NaiveBayesDMLTest.java
index 8fd18d4..6f7a253 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/NaiveBayesDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/NaiveBayesDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.NaiveBayesTest;
 
 @RunWith(value = Parameterized.class)
@@ -37,17 +36,4 @@ public class NaiveBayesDMLTest extends NaiveBayesTest {
 	public void testNaiveBayesDml() {
 		testNaiveBayes(ScriptType.DML);
 	}
-
-	@Test
-	public void testNaiveBayesDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testNaiveBayes(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/NaiveBayesParforDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/NaiveBayesParforDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/NaiveBayesParforDMLTest.java
index 926bb3d..330e86a 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/NaiveBayesParforDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/NaiveBayesParforDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.NaiveBayesParforTest;
 
 @RunWith(value = Parameterized.class)
@@ -37,17 +36,4 @@ public class NaiveBayesParforDMLTest extends NaiveBayesParforTest {
 	public void testNaiveBayesDml() {
 		testNaiveBayes(ScriptType.DML);
 	}
-
-	@Test
-	public void testNaiveBayesDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testNaiveBayes(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/PageRankDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/PageRankDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/PageRankDMLTest.java
index de493b6..b78a081 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/PageRankDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/PageRankDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.PageRankTest;
 
 @RunWith(value = Parameterized.class)
@@ -37,17 +36,4 @@ public class PageRankDMLTest extends PageRankTest {
 	public void testPageRankDml() {
 		testPageRank(ScriptType.DML);
 	}
-
-	@Test
-	public void testPageRankDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testPageRank(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
 }

http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/ee7591cb/src/test/java/org/apache/sysml/test/integration/applications/dml/WelchTDMLTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/applications/dml/WelchTDMLTest.java b/src/test/java/org/apache/sysml/test/integration/applications/dml/WelchTDMLTest.java
index 98befa7..0fba2c2 100644
--- a/src/test/java/org/apache/sysml/test/integration/applications/dml/WelchTDMLTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/applications/dml/WelchTDMLTest.java
@@ -22,7 +22,6 @@ package org.apache.sysml.test.integration.applications.dml;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
-import org.apache.sysml.api.DMLScript;
 import org.apache.sysml.test.integration.applications.WelchTTest;
 
 @RunWith(value = Parameterized.class)
@@ -37,17 +36,4 @@ public class WelchTDMLTest extends WelchTTest {
 	public void testWelchTTestDml() {
 		testWelchTTest(ScriptType.DML);
 	}
-
-	@Test
-	public void testWelchTTestDmlDisableSparseNCaching() {
-		try {
-			DMLScript.DISABLE_SPARSE = true;
-			DMLScript.DISABLE_CACHING = true;
-			testWelchTTest(ScriptType.DML);
-		}
-		finally {
-			DMLScript.DISABLE_SPARSE = false;
-			DMLScript.DISABLE_CACHING = false;
-		}
-	}
 }