systemml git commit: [SYSTEMML-703] Prepare for GPU on Jenkins, disable expensive NN tests

2017-06-22 Thread nakul02
Repository: systemml
Updated Branches:
  refs/heads/gh-pages 7c4907095 -> 05792e0e9


[SYSTEMML-703] Prepare for GPU on Jenkins, disable expensive NN tests

Closes #550


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

Branch: refs/heads/gh-pages
Commit: 05792e0e947d5d1b9f4c0adbcfec7d0ec4d45bdf
Parents: 7c49070
Author: Nakul Jindal 
Authored: Thu Jun 22 17:04:49 2017 -0700
Committer: Nakul Jindal 
Committed: Thu Jun 22 17:04:49 2017 -0700

--
 release-process.md | 12 
 1 file changed, 12 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/systemml/blob/05792e0e/release-process.md
--
diff --git a/release-process.md b/release-process.md
index f41c7c8..36528bd 100644
--- a/release-process.md
+++ b/release-process.md
@@ -259,6 +259,18 @@ For examples, see the [Spark MLContext Programming 
Guide](http://apache.github.i
 Verify that the performance suite located at scripts/perftest/ executes on 
Spark and Hadoop. Testing should
 include 80MB, 800MB, 8GB, and 80GB data sizes.
 
+# Run NN Unit Tests for GPU
+
+Up to Checklist
+
+The unit tests for NN operators for GPU take a long time to run and are 
therefor not run as part of the Jenkins build.
+They must be run before a release. To run them, edit the 
+[NeuralNetworkOpTests.java|https://github.com/apache/systemml/blob/master/src/test/java/org/apache/sysml/test/gpu/NeuralNetworkOpTests.java]
+file and remove all the `@Ignore` annotations from all the tests. Then run the 
NN unit tests using mvn verify:
+```
+mvn -Dit.test=org.apache.sysml.test.gpu.NeuralNetworkOpTests verify -PgpuTests
+```
+
 
 # Voting
 



systemml git commit: [SYSTEMML-703] Prepare for GPU on Jenkins, disable expensive NN tests

2017-06-22 Thread nakul02
Repository: systemml
Updated Branches:
  refs/heads/master 345682404 -> 57e11e99c


[SYSTEMML-703] Prepare for GPU on Jenkins, disable expensive NN tests

Closes #550


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

Branch: refs/heads/master
Commit: 57e11e99c3f110b68ad5e3397f10b30533ab9b79
Parents: 3456824
Author: Nakul Jindal 
Authored: Thu Jun 22 17:04:49 2017 -0700
Committer: Nakul Jindal 
Committed: Thu Jun 22 17:04:49 2017 -0700

--
 docs/release-process.md | 12 +
 .../sysml/test/gpu/NeuralNetworkOpTests.java| 28 +++-
 2 files changed, 33 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/systemml/blob/57e11e99/docs/release-process.md
--
diff --git a/docs/release-process.md b/docs/release-process.md
index f41c7c8..36528bd 100644
--- a/docs/release-process.md
+++ b/docs/release-process.md
@@ -259,6 +259,18 @@ For examples, see the [Spark MLContext Programming 
Guide](http://apache.github.i
 Verify that the performance suite located at scripts/perftest/ executes on 
Spark and Hadoop. Testing should
 include 80MB, 800MB, 8GB, and 80GB data sizes.
 
+# Run NN Unit Tests for GPU
+
+Up to Checklist
+
+The unit tests for NN operators for GPU take a long time to run and are 
therefor not run as part of the Jenkins build.
+They must be run before a release. To run them, edit the 
+[NeuralNetworkOpTests.java|https://github.com/apache/systemml/blob/master/src/test/java/org/apache/sysml/test/gpu/NeuralNetworkOpTests.java]
+file and remove all the `@Ignore` annotations from all the tests. Then run the 
NN unit tests using mvn verify:
+```
+mvn -Dit.test=org.apache.sysml.test.gpu.NeuralNetworkOpTests verify -PgpuTests
+```
+
 
 # Voting
 

http://git-wip-us.apache.org/repos/asf/systemml/blob/57e11e99/src/test/java/org/apache/sysml/test/gpu/NeuralNetworkOpTests.java
--
diff --git a/src/test/java/org/apache/sysml/test/gpu/NeuralNetworkOpTests.java 
b/src/test/java/org/apache/sysml/test/gpu/NeuralNetworkOpTests.java
index f4e931b..c53e803 100644
--- a/src/test/java/org/apache/sysml/test/gpu/NeuralNetworkOpTests.java
+++ b/src/test/java/org/apache/sysml/test/gpu/NeuralNetworkOpTests.java
@@ -35,6 +35,15 @@ import org.junit.Test;
 
 /**
  * Test neural network operations on the GPU
+ * Because of the large number of cases that each test deals with, this class 
takes
+ * very long to run. (It took about 9 hours to run the testMaxPoolBackward() 
to completion.
+ * The recommended course of action before a release is
+ * 1. Remove the @Ignore annotations
+ * 2. Run just these test on a machine with CUDA 8 installed.
+ * Only this class can be run like so:
+ * 
+ * mvn -Dit.test=org.apache.sysml.test.gpu.NeuralNetworkOpTests verify 
-PgpuTests
+ * 
  */
 public class NeuralNetworkOpTests extends GPUTests {
 
@@ -100,6 +109,7 @@ public class NeuralNetworkOpTests extends GPUTests {
return 1e-5;
}
 
+   @Ignore
@Test
public void testConv2d() {
String scriptStr = "O = conv2d(image, filter, padding=[padH, 
padW], stride=[strideH, strideW], input_shape=[N,C,H,W], 
filter_shape=[K,C,R,S])";
@@ -253,6 +263,7 @@ public class NeuralNetworkOpTests extends GPUTests {
clearGPUMemory();
}
 
+   @Ignore
@Test
public void testConv2dBackwardFilter() {
String scriptStr = "O = conv2d_backward_filter(image, dout, 
padding=[padH, padW], stride=[strideH, strideW], input_shape=[N,C,H,W], 
filter_shape=[K,C,R,S])";
@@ -298,9 +309,9 @@ public class NeuralNetworkOpTests extends GPUTests {

filterSizeInMB, 
N, K, P, Q, doutSizeInMB,

strideH, 
strideW, padH, padW);

Matrix image = generateInputMatrix(spark, (int) 
N,
-   
(int) (C * H * W), 0.-127.0, 
127, sparsity, seed);
+   
(int) (C * H * W), -127.0, 127, 
sparsity, seed);