CPU info:
    CPU Model Name: Intel(R) Xeon(R) CPU E5-2690 v3 @ 2.60GHz
    Hardware threads: 12
    Total Memory: 57700428 kB
-------------------------------------------------------------------
Running 232 test cases...
===== Tensor test 'elementwise addition'
 [512 x 256] [512 x 256] -> [512 x 256] 	// GPU
    [512 x 256] [512 x 256] -> [512 x 256] 	// CPU
   
###### GPU result (131072, 1) [0:7, 0:9] ######

-0.2939662337	
0.3645337820	
-0.5074985027	
1.7281963825	
-0.9004462957	
0.1517100930	
-0.5246900320	
0.9675793052	
...

###### CPU result (131072, 1) [0:7, 0:9] ######

-0.2939662337	
0.3645337820	
-0.5074985027	
1.7281963825	
-0.9004462957	
0.1517100930	
-0.5246900320	
0.9675793052	
...
===== Tensor test 'addition wth simple broadcasting'
 [3 x 2] [3 x 1] -> [3 x 2] 	// GPU
    [3 x 2] [3 x 1] -> [3 x 2] 	// CPU
   
###### GPU result (6, 1) [0:7, 0:9] ######

-0.2939662337	
0.3645337820	
-0.5074985027	
0.7371044755	
-1.6296070814	
-1.6918985844	

###### CPU result (6, 1) [0:7, 0:9] ######

-0.2939662337	
0.3645337820	
-0.5074985027	
0.7371044755	
-1.6296070814	
-1.6918985844	
===== Tensor test 'bias addition (broadcasting)'
 [28 x 28 x 128 x 32] [1 x 1 x 128] -> [28 x 28 x 128 x 32] 	// GPU
    [28 x 28 x 128 x 32] [1 x 1 x 128] -> [28 x 28 x 128 x 32] 	// CPU
   
###### GPU result (3211264, 1) [0:7, 0:9] ######

-0.2939662337	
0.8663594127	
0.3126388192	
0.7371044755	
-1.1277813911	
-0.8717613220	
-0.5233450532	
0.8700708747	
...

###### CPU result (3211264, 1) [0:7, 0:9] ######

-0.2939662337	
0.8663594127	
0.3126388192	
0.7371044755	
-1.1277813911	
-0.8717613220	
-0.5233450532	
0.8700708747	
...
===== Tensor test 'bias addition (broadcasting)'
 [256 x 256 x 64 x 32] [1 x 1 x 64] -> [256 x 256 x 64 x 32] 	// GPU
    [256 x 256 x 64 x 32] [1 x 1 x 64] -> [256 x 256 x 64 x 32] 	// CPU
   
###### GPU result (134217728, 1) [0:7, 0:9] ######

-0.2939662337	
0.8663594127	
0.3126388192	
0.7371044755	
-1.1277813911	
-0.8717613220	
-0.5233450532	
0.8700708747	
...

###### CPU result (134217728, 1) [0:7, 0:9] ######

-0.2939662337	
0.8663594127	
0.3126388192	
0.7371044755	
-1.1277813911	
-0.8717613220	
-0.5233450532	
0.8700708747	
...
===== Tensor test 'bias gradient (reduction)'
 [2048 x 1024] -> [2048] 	// GPU
    [2048 x 1024] -> [2048] 	// CPU
   
###### GPU result (2048, 1) [0:7, 0:9] ######

1.2924218178	
20.1920490265	
31.9372329712	
13.5184125900	
3.1232664585	
-14.3535432816	
-4.3421840668	
-15.4718914032	
...

###### CPU result (2048, 1) [0:7, 0:9] ######

1.2924218178	
20.1920471191	
31.9372329712	
13.5184135437	
3.1232609749	
-14.3535423279	
-4.3421831131	
-15.4718885422	
...
===== Tensor test 'bias gradient (reduction)'
 [256 x 256 x 64 x 32] -> [1 x 1 x 64] 	// GPU
    [256 x 256 x 64 x 32] -> [1 x 1 x 64] 	// CPU
   
###### GPU result (64, 1) [0:7, 0:9] ######

351.1564941406	
-124.9021453857	
221.3203430176	
-120.1626281738	
1640.0554199219	
-266.5092468262	
371.6581115723	
-903.1644287109	
...

###### CPU result (64, 1) [0:7, 0:9] ######

351.1572570801	
-124.9017105103	
221.3192443848	
-120.1618041992	
1640.0551757812	
-266.5106201172	
371.6577148438	
-903.1638183594	
...
MultiplyAndAdd Directly:  0.000044 seconds
MultiplyAndAdd With ColumnSlice:  0.022985 seconds
MultiplyAndAdd With ColumnSlice&:  0.023324 seconds
MultiplyAndAdd With AssignColumnSlice:  0.023628 seconds
AssignSigmoidOf With ColumnSlice:  0.024805 seconds
AssignSigmoidOf With AssignColumnSlice:  0.134910 seconds
testRnnForwardPropSRP:  0.015607 seconds
TestOldRnnForwardPropSRP:  0.142985 seconds
===== Tensor test 'elementwise addition'
 [512 x 256] [512 x 256] -> [512 x 256] 	// GPU
    [512 x 256] [512 x 256] -> [512 x 256] 	// CPU
   
###### GPU result (131072, 1) [0:7, 0:9] ######

-0.2939453125	
0.3642578125	
-0.5078125000	
1.7285156250	
-0.9008789062	
0.1518554688	
-0.5244140625	
0.9677734375	
...

###### CPU result (131072, 1) [0:7, 0:9] ######

-0.2939453125	
0.3642578125	
-0.5078125000	
1.7285156250	
-0.9008789062	
0.1518554688	
-0.5244140625	
0.9677734375	
...
===== Tensor test 'addition wth simple broadcasting'
 [3 x 2] [3 x 1] -> [3 x 2] 	// GPU
    [3 x 2] [3 x 1] -> [3 x 2] 	// CPU
   
###### GPU result (6, 1) [0:7, 0:9] ######

-0.2939453125	
0.3642578125	
-0.5078125000	
0.7373046875	
-1.6298828125	
-1.6914062500	

###### CPU result (6, 1) [0:7, 0:9] ######

-0.2939453125	
0.3642578125	
-0.5078125000	
0.7373046875	
-1.6298828125	
-1.6914062500	
===== Tensor test 'bias addition (broadcasting)'
 [28 x 28 x 128 x 32] [1 x 1 x 128] -> [28 x 28 x 128 x 32] 	// GPU
    [28 x 28 x 128 x 32] [1 x 1 x 128] -> [28 x 28 x 128 x 32] 	// CPU
   
###### GPU result (3211264, 1) [0:7, 0:9] ######

-0.2939453125	
0.8662109375	
0.3125000000	
0.7373046875	
-1.1279296875	
-0.8715820312	
-0.5234375000	
0.8701171875	
...

###### CPU result (3211264, 1) [0:7, 0:9] ######

-0.2939453125	
0.8662109375	
0.3125000000	
0.7373046875	
-1.1279296875	
-0.8715820312	
-0.5234375000	
0.8701171875	
...
===== Tensor test 'bias addition (broadcasting)'
 [256 x 256 x 64 x 32] [1 x 1 x 64] -> [256 x 256 x 64 x 32] 	// GPU
    [256 x 256 x 64 x 32] [1 x 1 x 64] -> [256 x 256 x 64 x 32] 	// CPU
   
###### GPU result (134217728, 1) [0:7, 0:9] ######

-0.2939453125	
0.8662109375	
0.3125000000	
0.7373046875	
-1.1279296875	
-0.8715820312	
-0.5234375000	
0.8701171875	
...

###### CPU result (134217728, 1) [0:7, 0:9] ######

-0.2939453125	
0.8662109375	
0.3125000000	
0.7373046875	
-1.1279296875	
-0.8715820312	
-0.5234375000	
0.8701171875	
...
===== Tensor test 'bias gradient (reduction)'
 [2048 x 1024] -> [2048] 	// GPU
    [2048 x 1024] -> [2048] 	// CPU
   
###### GPU result (2048, 1) [0:7, 0:9] ######

1.2978515625	
20.1875000000	
31.9375000000	
13.5156250000	
3.1250000000	
-14.3515625000	
-4.3359375000	
-15.4687500000	
...

###### CPU result (2048, 1) [0:7, 0:9] ######

1.2978515625	
20.1875000000	
31.9218750000	
13.5156250000	
3.1250000000	
-14.3437500000	
-4.3359375000	
-15.4687500000	
...
===== Tensor test 'bias gradient (reduction)'
 [256 x 256 x 64 x 32] -> [1 x 1 x 64] 	// GPU
    [256 x 256 x 64 x 32] -> [1 x 1 x 64] 	// CPU
   
###### GPU result (64, 1) [0:7, 0:9] ######

351.0000000000	
-124.7500000000	
221.5000000000	
-120.1875000000	
1640.0000000000	
-266.5000000000	
371.5000000000	
-903.0000000000	
...

###### CPU result (64, 1) [0:7, 0:9] ######

350.7500000000	
-124.7500000000	
221.2500000000	
-120.3750000000	
1640.0000000000	
-266.0000000000	
371.2500000000	
-902.5000000000	
...
MultiplyAndAdd Directly:  34.620188 seconds
MultiplyAndAdd With ColumnSlice:  0.006462 seconds
MultiplyAndAdd With ColumnSlice&:  0.006471 seconds
MultiplyAndAdd With AssignColumnSlice:  0.006301 seconds
AssignSigmoidOf With ColumnSlice:  0.006234 seconds
AssignSigmoidOf With AssignColumnSlice:  0.006213 seconds
testRnnForwardPropSRP:  0.003358 seconds
TestOldRnnForwardPropSRP:  0.030918 seconds

Test module "MathTests" has passed with:
  232 test cases out of 232 passed
  19546252 assertions out of 19546252 passed

  Test suite "BatchNormalizationSuite" has passed with:
    2 test cases out of 2 passed
    5376 assertions out of 5376 passed

    Test case "BatchNormalizationSuite/BatchNormalizationForward" has passed with:
      3360 assertions out of 3360 passed

    Test case "BatchNormalizationSuite/BatchNormalizationBackward" has passed with:
      2016 assertions out of 2016 passed

  Test suite "ConvolutionSuite" has passed with:
    6 test cases out of 6 passed
    8395 assertions out of 8395 passed

    Test case "ConvolutionSuite/ConvolutionForward" has passed with:
      1515 assertions out of 1515 passed

    Test case "ConvolutionSuite/ConvolutionBackwardData" has passed with:
      1515 assertions out of 1515 passed

    Test case "ConvolutionSuite/ConvolutionBackwardKernel" has passed with:
      1515 assertions out of 1515 passed

    Test case "ConvolutionSuite/PoolingForward" has passed with:
      1320 assertions out of 1320 passed

    Test case "ConvolutionSuite/PoolingBackward" has passed with:
      1760 assertions out of 1760 passed

    Test case "ConvolutionSuite/MaxUnpooling" has passed with:
      770 assertions out of 770 passed

  Test suite "Half_ConvolutionSuite" has passed with:
    5 test cases out of 5 passed
    5807 assertions out of 5807 passed

    Test case "Half_ConvolutionSuite/ConvolutionForward" has passed with:
      909 assertions out of 909 passed

    Test case "Half_ConvolutionSuite/ConvolutionBackwardData" has passed with:
      909 assertions out of 909 passed

    Test case "Half_ConvolutionSuite/ConvolutionBackwardKernel" has passed with:
      909 assertions out of 909 passed

    Test case "Half_ConvolutionSuite/PoolingForward" has passed with:
      1320 assertions out of 1320 passed

    Test case "Half_ConvolutionSuite/PoolingBackward" has passed with:
      1760 assertions out of 1760 passed

  Test suite "CPUMatrixSuite" has passed with:
    40 test cases out of 40 passed
    5248763 assertions out of 5248763 passed

    Test case "CPUMatrixSuite/CPUMatrixConstructorNoFlags" has passed with:
      8 assertions out of 8 passed

    Test case "CPUMatrixSuite/CPUMatrixCharConstructorNoFlags" has passed with:
      8 assertions out of 8 passed

    Test case "CPUMatrixSuite/CPUMatrixConstructorFlagNormal" has passed with:
      8 assertions out of 8 passed

    Test case "CPUMatrixSuite/CPUMatrixShortConstructorNoFlags" has passed with:
      8 assertions out of 8 passed

    Test case "CPUMatrixSuite/CPUMatrixConstructorFormatRowMajor" has passed with:
      6 assertions out of 6 passed

    Test case "CPUMatrixSuite/CPUMatrixAddAndSub" has passed with:
      13 assertions out of 13 passed

    Test case "CPUMatrixSuite/CPUMatrixBatchMatmMul" has passed with:
      1 assertion out of 1 passed

    Test case "CPUMatrixSuite/CPUMatrixMultiplyAndDiv" has passed with:
      9 assertions out of 9 passed

    Test case "CPUMatrixSuite/CPUMatrixElementOperations" has passed with:
      27 assertions out of 27 passed

    Test case "CPUMatrixSuite/CPUMatrixNorms" has passed with:
      12 assertions out of 12 passed

    Test case "CPUMatrixSuite/CPUMatrixSetValues" has passed with:
      12 assertions out of 12 passed

    Test case "CPUMatrixSuite/CPUMatrixTranspose" has passed with:
      2 assertions out of 2 passed

    Test case "CPUMatrixSuite/CPUMatrixColumnSlice" has passed with:
      3 assertions out of 3 passed

    Test case "CPUMatrixSuite/CPUKhatriRaoProduct" has passed with:
      1 assertion out of 1 passed

    Test case "CPUMatrixSuite/CPUAddColumnReshapeProductOf" has passed with:
      2 assertions out of 2 passed

    Test case "CPUMatrixSuite/CPUMatrixRowSliceAndStack" has passed with:
      3 assertions out of 3 passed

    Test case "CPUMatrixSuite/CPUAssignRepeatOf" has passed with:
      2 assertions out of 2 passed

    Test case "CPUMatrixSuite/CPURowElementOperations" has passed with:
      1 assertion out of 1 passed

    Test case "CPUMatrixSuite/CPUColumnElementOperations" has passed with:
      1 assertion out of 1 passed

    Test case "CPUMatrixSuite/CPUMatrixSeedingFloat" has passed with:
      1 assertion out of 1 passed

    Test case "CPUMatrixSuite/CPUMatrixSeedingDouble" has passed with:
      1 assertion out of 1 passed

    Test case "CPUMatrixSuite/CPUMatrixAdam" has passed with:
      4 assertions out of 4 passed

    Test case "CPUMatrixSuite/CPUMatrixAdamVarEpsilon" has passed with:
      4 assertions out of 4 passed

    Test case "CPUMatrixSuite/CPUMatrixOneHot" has passed with:
      9 assertions out of 9 passed

    Test case "CPUMatrixSuite/CPUMatrixScatterToIndices" has passed with:
      1 assertion out of 1 passed

    Test case "CPUMatrixSuite/CPUMatrixGatherFromTarget" has passed with:
      3 assertions out of 3 passed

    Test case "CPUMatrixSuite/CPUSparseMatrixColumnSlice" has passed with:
      1 assertion out of 1 passed

    Test case "CPUMatrixSuite/CPUSparseMatrixCopyColumnSliceToDense" has passed with:
      1 assertion out of 1 passed

    Test case "CPUMatrixSuite/CPUSparseMatrixMultiplyAndAdd" has passed with:
      20000 assertions out of 20000 passed

    Test case "CPUMatrixSuite/CPUSparseMatrixDoGatherColumnsOf" has passed with:
      50 assertions out of 50 passed

    Test case "CPUMatrixSuite/CPUSparseMatrixOneHot" has passed with:
      15 assertions out of 15 passed

    Test case "CPUMatrixSuite/MatrixMultiplyTest" has passed with:
      1484 assertions out of 1484 passed

    Test case "CPUMatrixSuite/MatrixMultiplyAndPlusAndMinus" has passed with:
      1050120 assertions out of 1050120 passed

    Test case "CPUMatrixSuite/MatrixColumnwiseScaleAndWeightedAdd" has passed with:
      8 assertions out of 8 passed

    Test case "CPUMatrixSuite/MatrixScaleAndAdd" has passed with:
      1572864 assertions out of 1572864 passed

    Test case "CPUMatrixSuite/MatrixScaleAndAdd_double" has passed with:
      1572864 assertions out of 1572864 passed

    Test case "CPUMatrixSuite/MatrixNorms" has passed with:
      14 assertions out of 14 passed

    Test case "CPUMatrixSuite/MatrixInnerProductOfMatrices" has passed with:
      1 assertion out of 1 passed

    Test case "CPUMatrixSuite/CPUMatrixFileWriteRead" has passed with:
      1 assertion out of 1 passed

    Test case "CPUMatrixSuite/MatrixFileWriteRead" has passed with:
      3 assertions out of 3 passed

    Test case "CPUMatrixSuite/CPUMatrix1BitQuantizeFloat" has passed with:
      481229 assertions out of 481229 passed

    Test case "CPUMatrixSuite/CPUMatrix1BitQuantizeDouble" has passed with:
      549976 assertions out of 549976 passed

  Test suite "QuantizersUnitTests" has passed with:
    2 test cases out of 2 passed
    12 assertions out of 12 passed

    Test case "QuantizersUnitTests/FloatToShort" has passed with:
      6 assertions out of 6 passed

    Test case "QuantizersUnitTests/QuantizeZeros" has passed with:
      6 assertions out of 6 passed

  Test suite "QuantizedOperationsUnitTests" has passed with:
    1 test case out of 1 passed
    65 assertions out of 65 passed

    Test case "QuantizedOperationsUnitTests/MultiplyIntToShort" has passed with:
      65 assertions out of 65 passed

  Test suite "MathTensorTests" has passed with:
    9 test cases out of 9 passed
    6 assertions out of 6 passed

    Test case "MathTensorTests/ElementwiseAddition" has passed with:
      1 assertion out of 1 passed

    Test case "MathTensorTests/AdditionWithSimpleBroadcasting" has passed with:
      1 assertion out of 1 passed

    Test case "MathTensorTests/BiasAddition" has passed with:
      1 assertion out of 1 passed

    Test case "MathTensorTests/BiasAddition2" has passed with:
      1 assertion out of 1 passed

    Test case "MathTensorTests/BiasGradient" has passed with:
      1 assertion out of 1 passed

    Test case "MathTensorTests/BiasGradient2" has passed with:
      1 assertion out of 1 passed

    Test case "MathTensorTests/ColumnSliceMultAndAdd" has passed

    Test case "MathTensorTests/RnnForwardProp" has passed

    Test case "MathTensorTests/OldRnnForwardProp" has passed

  Test suite "Half_MathTensorTests" has passed with:
    9 test cases out of 9 passed
    6 assertions out of 6 passed

    Test case "Half_MathTensorTests/ElementwiseAddition" has passed with:
      1 assertion out of 1 passed

    Test case "Half_MathTensorTests/AdditionWithSimpleBroadcasting" has passed with:
      1 assertion out of 1 passed

    Test case "Half_MathTensorTests/BiasAddition" has passed with:
      1 assertion out of 1 passed

    Test case "Half_MathTensorTests/BiasAddition2" has passed with:
      1 assertion out of 1 passed

    Test case "Half_MathTensorTests/BiasGradient" has passed with:
      1 assertion out of 1 passed

    Test case "Half_MathTensorTests/BiasGradient2" has passed with:
      1 assertion out of 1 passed

    Test case "Half_MathTensorTests/ColumnSliceMultAndAdd" has passed

    Test case "Half_MathTensorTests/RnnForwardProp" has passed

    Test case "Half_MathTensorTests/OldRnnForwardProp" has passed

  Test suite "GPUMatrixSuite" has passed with:
    64 test cases out of 64 passed
    1263796 assertions out of 1263796 passed

    Test case "GPUMatrixSuite/GPUBlasMultiplyAndWeightedAdd" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUBlasBatchMatMul" has passed with:
      2 assertions out of 2 passed

    Test case "GPUMatrixSuite/GPUBlasScale" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUBlasInnerProduct" has passed with:
      2 assertions out of 2 passed

    Test case "GPUMatrixSuite/MatrixCopyAssignAcrossDevices" has passed

    Test case "GPUMatrixSuite/GPUMatrixConstructorNoFlag" has passed with:
      6 assertions out of 6 passed

    Test case "GPUMatrixSuite/GPUMatrixConstructorFlagNormal" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUMatrixIdentityAndZero" has passed with:
      7200 assertions out of 7200 passed

    Test case "GPUMatrixSuite/GPUMatrixElementWiseOperations" has passed with:
      3 assertions out of 3 passed

    Test case "GPUMatrixSuite/GPUMatrixInplaceOperations" has passed with:
      6 assertions out of 6 passed

    Test case "GPUMatrixSuite/GPUMatrixAddAndSub" has passed with:
      13 assertions out of 13 passed

    Test case "GPUMatrixSuite/GPUMatrixNorms" has passed with:
      14 assertions out of 14 passed

    Test case "GPUMatrixSuite/GPUMatrixRandomUniform" has passed with:
      76800 assertions out of 76800 passed

    Test case "GPUMatrixSuite/GPUMatrixColumnSlice" has passed with:
      2 assertions out of 2 passed

    Test case "GPUMatrixSuite/GPUMatrixRowSlice" has passed with:
      3 assertions out of 3 passed

    Test case "GPUMatrixSuite/GPUMatrixKhatriRaoProduct" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUMatrixAddColumnReshapeProductOf" has passed with:
      2 assertions out of 2 passed

    Test case "GPUMatrixSuite/GPUMatrixInnerProduct" has passed with:
      2 assertions out of 2 passed

    Test case "GPUMatrixSuite/GPUMatrixAssignRepeatOf" has passed with:
      2 assertions out of 2 passed

    Test case "GPUMatrixSuite/GPUMatrixRowElementOperations" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUMatrixColumnElementOperations" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUMatrixCurandSeedingFloat" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUMatrixCurandSeedingDouble" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUMatrixAdam" has passed with:
      4 assertions out of 4 passed

    Test case "GPUMatrixSuite/GPUMatrixAdamVarEpsilon" has passed with:
      4 assertions out of 4 passed

    Test case "GPUMatrixSuite/GPUMatrixOneHot" has passed with:
      9 assertions out of 9 passed

    Test case "GPUMatrixSuite/GPUMatrixScatterToIndices" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUMatrixGatherFromTarget" has passed with:
      3 assertions out of 3 passed

    Test case "GPUMatrixSuite/GPUSparseMatrixConstructorsAndInitializers" has passed with:
      10 assertions out of 10 passed

    Test case "GPUMatrixSuite/GPUSparseMatrixScaleAndAdd" has passed with:
      20 assertions out of 20 passed

    Test case "GPUMatrixSuite/GPUSparseDensePlusSparse" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUSparseElementwiseTimesDense" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUSparseTimesDense" has passed with:
      24 assertions out of 24 passed

    Test case "GPUMatrixSuite/GPUSparseTimesDenseRandom" has passed with:
      147852 assertions out of 147852 passed

    Test case "GPUMatrixSuite/GPUSparseElementWise" has passed with:
      10 assertions out of 10 passed

    Test case "GPUMatrixSuite/GPUSparseIsEqual" has passed with:
      2 assertions out of 2 passed

    Test case "GPUMatrixSuite/GPUSparseDenseConversions" has passed with:
      26 assertions out of 26 passed

    Test case "GPUMatrixSuite/GPUSparseTranspose" has passed with:
      5 assertions out of 5 passed

    Test case "GPUMatrixSuite/GPUSparseNormTests" has passed with:
      4 assertions out of 4 passed

    Test case "GPUMatrixSuite/GPUSparseMatrixInnerProduct" has passed with:
      5 assertions out of 5 passed

    Test case "GPUMatrixSuite/GPUSparseMatrixColumnSlice" has passed with:
      4 assertions out of 4 passed

    Test case "GPUMatrixSuite/GPUSparseMatrixCopyColumnSliceToDense" has passed with:
      4 assertions out of 4 passed

    Test case "GPUMatrixSuite/GPUSparseMatrix1DConvolutionFixedInit" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUSparseMatrix1DConvolutionRandomInit" has passed with:
      24 assertions out of 24 passed

    Test case "GPUMatrixSuite/GPUSparseMatrix1DConvolutionBackprop" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUSparseMatrixReshape" has passed with:
      3 assertions out of 3 passed

    Test case "GPUMatrixSuite/GPUSparseTensorShuffleScaleAndAdd" has passed with:
      2 assertions out of 2 passed

    Test case "GPUMatrixSuite/GPUSparseMatrixOneHot" has passed with:
      8 assertions out of 8 passed

    Test case "GPUMatrixSuite/MatrixDataSynchronization_DefaultBehaviorTestForConstructors" has passed with:
      15 assertions out of 15 passed

    Test case "GPUMatrixSuite/MatrixDataSynchronization_AccessPatternAndTransferTest" has passed with:
      459 assertions out of 459 passed

    Test case "GPUMatrixSuite/MatrixDataSynchronization_GravitatingTowardsPreferredDevice" has passed with:
      7 assertions out of 7 passed

    Test case "GPUMatrixSuite/GPUMatrixFileWriteRead" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/GPUMatrix1BitQuantizeFloat" has passed with:
      481229 assertions out of 481229 passed

    Test case "GPUMatrixSuite/GPUMatrix1BitQuantizeDouble" has passed with:
      549976 assertions out of 549976 passed

    Test case "GPUMatrixSuite/MatrixChangeModesBetweenDenseAndSparse" has passed with:
      4 assertions out of 4 passed

    Test case "GPUMatrixSuite/MatrixSparseTimesDense" has passed with:
      3 assertions out of 3 passed

    Test case "GPUMatrixSuite/MatrixDenseTimesSparse" has passed with:
      2 assertions out of 2 passed

    Test case "GPUMatrixSuite/CPUMatrixDenseTimesSparse" has passed with:
      2 assertions out of 2 passed

    Test case "GPUMatrixSuite/CPUMatrixDenseTimesSparseAsSparse" has passed

    Test case "GPUMatrixSuite/MatrixSparseTimesSparse" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/MatrixSparsePlusSparse" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/MatrixDensePlusSparse" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/MatrixSparsePlusDense" has passed with:
      1 assertion out of 1 passed

    Test case "GPUMatrixSuite/MatrixSparseElementWisePower" has passed with:
      1 assertion out of 1 passed

  Test suite "MatrixUnitTests" has passed with:
    31 test cases out of 31 passed
    6684617 assertions out of 6684617 passed

    Test case "MatrixUnitTests/MatrixConstructors" has passed with:
      10 assertions out of 10 passed

    Test case "MatrixUnitTests/MatrixMoveTest1" has passed with:
      8 assertions out of 8 passed

    Test case "MatrixUnitTests/MatrixMoveTest2" has passed with:
      11 assertions out of 11 passed

    Test case "MatrixUnitTests/MatrixDeepCopy" has passed with:
      17 assertions out of 17 passed

    Test case "MatrixUnitTests/MatrixInitZero" has passed with:
      386 assertions out of 386 passed

    Test case "MatrixUnitTests/MatrixInitEye" has passed with:
      3138 assertions out of 3138 passed

    Test case "MatrixUnitTests/MatrixInitOnes" has passed with:
      674 assertions out of 674 passed

    Test case "MatrixUnitTests/MatrixInitGaussianRand" has passed with:
      4 assertions out of 4 passed

    Test case "MatrixUnitTests/MatrixInitRandomUniform" has passed with:
      87002 assertions out of 87002 passed

    Test case "MatrixUnitTests/MatrixInitRandomUniformSeed" has passed with:
      878592 assertions out of 878592 passed

    Test case "MatrixUnitTests/MatrixSetValueMethods" has passed with:
      846 assertions out of 846 passed

    Test case "MatrixUnitTests/MatrixTransposeTest" has passed with:
      1476 assertions out of 1476 passed

    Test case "MatrixUnitTests/MatrixMultiAndDiv" has passed with:
      12 assertions out of 12 passed

    Test case "MatrixUnitTests/MatrixTranspose" has passed with:
      2 assertions out of 2 passed

    Test case "MatrixUnitTests/MatrixAddAndSub" has passed with:
      10 assertions out of 10 passed

    Test case "MatrixUnitTests/MatrixElementOps" has passed with:
      18 assertions out of 18 passed

    Test case "MatrixUnitTests/MatrixColumnElementMultiply" has passed with:
      431 assertions out of 431 passed

    Test case "MatrixUnitTests/MatrixAssignXOf" has passed with:
      5711864 assertions out of 5711864 passed

    Test case "MatrixUnitTests/MatrixSumOfElements" has passed with:
      4 assertions out of 4 passed

    Test case "MatrixUnitTests/MatrixColumnSlice" has passed with:
      3 assertions out of 3 passed

    Test case "MatrixUnitTests/MatrixKhatriRaoProduct" has passed with:
      1 assertion out of 1 passed

    Test case "MatrixUnitTests/MatrixAddColumnReshapeProductOf" has passed with:
      2 assertions out of 2 passed

    Test case "MatrixUnitTests/MatrixCopy" has passed with:
      2 assertions out of 2 passed

    Test case "MatrixUnitTests/MatrixHasElement" has passed with:
      12 assertions out of 12 passed

    Test case "MatrixUnitTests/MatrixVectorMax" has passed with:
      4 assertions out of 4 passed

    Test case "MatrixUnitTests/MatrixAssignNumOfDiff" has passed with:
      2 assertions out of 2 passed

    Test case "MatrixUnitTests/MatrixScale" has passed with:
      1 assertion out of 1 passed

    Test case "MatrixUnitTests/MatrixSGDUpdate" has passed with:
      21 assertions out of 21 passed

    Test case "MatrixUnitTests/MatrixMomentumSGDUpdate_WithAndWithout_UnitGain" has passed with:
      32 assertions out of 32 passed

    Test case "MatrixUnitTests/MatrixNesterovAcceleratedMomentumSGDUpdate_WithAndWithout_UnitGain" has passed with:
      32 assertions out of 32 passed

    Test case "MatrixUnitTests/MatrixFSAdagradUpdate_WithAndWithout_UnitGain" has passed

  Test suite "Half_MatrixUnitTests" has passed with:
    30 test cases out of 30 passed
    6244840 assertions out of 6244840 passed

    Test case "Half_MatrixUnitTests/MatrixConstructors" has passed with:
      10 assertions out of 10 passed

    Test case "Half_MatrixUnitTests/MatrixMoveTest1" has passed with:
      8 assertions out of 8 passed

    Test case "Half_MatrixUnitTests/MatrixMoveTest2" has passed with:
      11 assertions out of 11 passed

    Test case "Half_MatrixUnitTests/MatrixDeepCopy" has passed with:
      17 assertions out of 17 passed

    Test case "Half_MatrixUnitTests/MatrixInitZero" has passed with:
      386 assertions out of 386 passed

    Test case "Half_MatrixUnitTests/MatrixInitEye" has passed with:
      3138 assertions out of 3138 passed

    Test case "Half_MatrixUnitTests/MatrixInitOnes" has passed with:
      674 assertions out of 674 passed

    Test case "Half_MatrixUnitTests/MatrixInitGaussianRand" has passed with:
      4 assertions out of 4 passed

    Test case "Half_MatrixUnitTests/MatrixInitRandomUniform" has passed with:
      87002 assertions out of 87002 passed

    Test case "Half_MatrixUnitTests/MatrixInitRandomUniformSeed" has passed with:
      878592 assertions out of 878592 passed

    Test case "Half_MatrixUnitTests/MatrixSetValueMethods" has passed with:
      846 assertions out of 846 passed

    Test case "Half_MatrixUnitTests/MatrixTransposeTest" has passed with:
      1476 assertions out of 1476 passed

    Test case "Half_MatrixUnitTests/MatrixMultiAndDiv" has passed with:
      12 assertions out of 12 passed

    Test case "Half_MatrixUnitTests/MatrixTranspose" has passed with:
      2 assertions out of 2 passed

    Test case "Half_MatrixUnitTests/MatrixAddAndSub" has passed with:
      11 assertions out of 11 passed

    Test case "Half_MatrixUnitTests/MatrixElementOps" has passed with:
      18 assertions out of 18 passed

    Test case "Half_MatrixUnitTests/MatrixColumnElementMultiply" has passed with:
      1 assertion out of 1 passed

    Test case "Half_MatrixUnitTests/MatrixAssignXOf" has passed with:
      5272568 assertions out of 5272568 passed

    Test case "Half_MatrixUnitTests/MatrixSumOfElements" has passed with:
      3 assertions out of 3 passed

    Test case "Half_MatrixUnitTests/MatrixColumnSlice" has passed with:
      3 assertions out of 3 passed

    Test case "Half_MatrixUnitTests/MatrixKhatriRaoProduct" has passed with:
      1 assertion out of 1 passed

    Test case "Half_MatrixUnitTests/MatrixAddColumnReshapeProductOf" has passed with:
      2 assertions out of 2 passed

    Test case "Half_MatrixUnitTests/MatrixCopy" has passed with:
      2 assertions out of 2 passed

    Test case "Half_MatrixUnitTests/MatrixHasElement" has passed with:
      12 assertions out of 12 passed

    Test case "Half_MatrixUnitTests/MatrixAssignNumOfDiff" has passed with:
      1 assertion out of 1 passed

    Test case "Half_MatrixUnitTests/MatrixScale" has passed with:
      1 assertion out of 1 passed

    Test case "Half_MatrixUnitTests/MatrixSGDUpdate" has passed with:
      7 assertions out of 7 passed

    Test case "Half_MatrixUnitTests/MatrixMomentumSGDUpdate_WithAndWithout_UnitGain" has passed with:
      16 assertions out of 16 passed

    Test case "Half_MatrixUnitTests/MatrixNesterovAcceleratedMomentumSGDUpdate_WithAndWithout_UnitGain" has passed with:
      16 assertions out of 16 passed

    Test case "Half_MatrixUnitTests/MatrixFSAdagradUpdate_WithAndWithout_UnitGain" has passed

  Test suite "MatrixLearnerSuite" has passed with:
    3 test cases out of 3 passed
    8 assertions out of 8 passed

    Test case "MatrixLearnerSuite/FSAdagradSparse" has passed with:
      2 assertions out of 2 passed

    Test case "MatrixLearnerSuite/RmsPropSparse" has passed with:
      2 assertions out of 2 passed

    Test case "MatrixLearnerSuite/AdaDeltaSparse" has passed with:
      4 assertions out of 4 passed

  Test suite "Half_GPUMatrixSuite" has passed with:
    29 test cases out of 29 passed
    84564 assertions out of 84564 passed

    Test case "Half_GPUMatrixSuite/GPUBlasMultiplyAndWeightedAdd" has passed with:
      1 assertion out of 1 passed

    Test case "Half_GPUMatrixSuite/GPUBlasScale" has passed with:
      1 assertion out of 1 passed

    Test case "Half_GPUMatrixSuite/GPUBlasInnerProduct" has passed with:
      4 assertions out of 4 passed

    Test case "Half_GPUMatrixSuite/MatrixCopyAssignAcrossDevices" has passed

    Test case "Half_GPUMatrixSuite/GPUMatrixConstructorNoFlag" has passed with:
      6 assertions out of 6 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixConstructorFlagNormal" has passed with:
      1 assertion out of 1 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixIdentityAndZero" has passed with:
      7200 assertions out of 7200 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixElementWiseOperations" has passed with:
      3 assertions out of 3 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixInplaceOperations" has passed with:
      6 assertions out of 6 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixAddAndSub" has passed with:
      13 assertions out of 13 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixNorms" has passed with:
      14 assertions out of 14 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixRandomUniform" has passed with:
      76800 assertions out of 76800 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixColumnSlice" has passed with:
      2 assertions out of 2 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixRowSlice" has passed with:
      3 assertions out of 3 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixKhatriRaoProduct" has passed with:
      1 assertion out of 1 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixAddColumnReshapeProductOf" has passed with:
      2 assertions out of 2 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixInnerProduct" has passed with:
      2 assertions out of 2 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixAssignRepeatOf" has passed with:
      2 assertions out of 2 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixRowElementOperations" has passed with:
      1 assertion out of 1 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixColumnElementOperations" has passed with:
      1 assertion out of 1 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixCurandSeedingHalf" has passed with:
      1 assertion out of 1 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixAdam" has passed with:
      4 assertions out of 4 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixAdamVarEpsilon" has passed with:
      4 assertions out of 4 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixOneHot" has passed with:
      9 assertions out of 9 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixGatherFromTarget" has passed with:
      3 assertions out of 3 passed

    Test case "Half_GPUMatrixSuite/MatrixDataSynchronization_DefaultBehaviorTestForConstructors" has passed with:
      15 assertions out of 15 passed

    Test case "Half_GPUMatrixSuite/MatrixDataSynchronization_AccessPatternAndTransferTest" has passed with:
      459 assertions out of 459 passed

    Test case "Half_GPUMatrixSuite/MatrixDataSynchronization_GravitatingTowardsPreferredDevice" has passed with:
      7 assertions out of 7 passed

    Test case "Half_GPUMatrixSuite/GPUMatrixFileWriteRead" has passed with:
      1 assertion out of 1 passed
