From ac54be0bc260b9bc120fd20bb8038dc5373e4f8d Mon Sep 17 00:00:00 2001
From: Hashim Sharif <hsharif3@tyler.cs.illinois.edu>
Date: Mon, 6 Apr 2020 04:13:43 -0500
Subject: [PATCH] Updating sampling unit test that uncovers more bugs

---
 .../hpvm-tensor-rt/dnn_sources/src/test_ops.cc   | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/llvm/projects/hpvm-tensor-rt/dnn_sources/src/test_ops.cc b/llvm/projects/hpvm-tensor-rt/dnn_sources/src/test_ops.cc
index fc8b1aa755..56ceb6a5af 100644
--- a/llvm/projects/hpvm-tensor-rt/dnn_sources/src/test_ops.cc
+++ b/llvm/projects/hpvm-tensor-rt/dnn_sources/src/test_ops.cc
@@ -647,18 +647,28 @@ void testSampling(){
 void testSampling2(){
 
   printf("***** TestingSampling2 ***** \n\n");
-  Tensor* input = (Tensor*) create4DTensor(CUDNN_DATA_FLOAT, CUDNN_TENSOR_NCHW, 1, 3, 2, 2);
+  Tensor* input = (Tensor*) create4DTensor(CUDNN_DATA_FLOAT, CUDNN_TENSOR_NCHW, 1, 4, 2, 2);
   fillTensorWithVal(input, 2);
   //fillWithOnesAndTwos(input);
   
-  Tensor* filter = (Tensor*) create4DTensor(CUDNN_DATA_FLOAT, CUDNN_TENSOR_NCHW, 4, 3, 1, 1);
+  Tensor* filter = (Tensor*) create4DTensor(CUDNN_DATA_FLOAT, CUDNN_TENSOR_NCHW, 4, 4, 1, 1);
   fillTensorWithVal(filter, 2);
 
   // Interpolation not being applied most likely
-  void* res = tensorConvApprox(input, filter, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1);
+  void* res = tensorConvApprox(input, filter, 0, 0, 1, 1, 1, 1, 1, 1, 2, 0);
   
   printTensorValues(res);
 
+  // Start from offset 1 completely failing
+  void* res2 = tensorConvApprox(input, filter, 0, 0, 1, 1, 1, 1, 1, 1, 2, 0);
+  
+  printTensorValues(res2);
+
+  // Results are strange. Are filters being overwritten?
+  void* res3 = tensorConvApprox(input, filter, 0, 0, 1, 1, 1, 1, 1, 1, 2, 1);
+  
+  printTensorValues(res3);
+
 }
 
 
-- 
GitLab