From 654343376f0d139d0e602b6737c988b575edc114 Mon Sep 17 00:00:00 2001
From: Hashim Sharif <hsharif3@miranda.cs.illinois.edu>
Date: Sun, 4 Apr 2021 01:46:31 -0500
Subject: [PATCH] Wrapping up Keras frontend automated test script

---
 hpvm/test/dnn_benchmarks/keras/Benchmark.py   |  3 ++-
 .../dnn_benchmarks/keras/test_benchmarks.py   | 25 +++++++++++++------
 2 files changed, 19 insertions(+), 9 deletions(-)

diff --git a/hpvm/test/dnn_benchmarks/keras/Benchmark.py b/hpvm/test/dnn_benchmarks/keras/Benchmark.py
index 5b25db407f..ae0adc1a51 100644
--- a/hpvm/test/dnn_benchmarks/keras/Benchmark.py
+++ b/hpvm/test/dnn_benchmarks/keras/Benchmark.py
@@ -69,7 +69,8 @@ class Benchmark:
         try:
             subprocess.run([
                 "hpvm-clang", src_file, target_binary,
-                "-t", "tensor", "--conf-file", approx_conf_file
+                "-t", "tensor", "--conf-file", approx_conf_file,
+                "-fno-exceptions"
             ], check=True)
         except:
             print ("\n\n ERROR: HPVM Compilation Failed!! \n\n")
diff --git a/hpvm/test/dnn_benchmarks/keras/test_benchmarks.py b/hpvm/test/dnn_benchmarks/keras/test_benchmarks.py
index 45ab9b2447..9be86c8a05 100644
--- a/hpvm/test/dnn_benchmarks/keras/test_benchmarks.py
+++ b/hpvm/test/dnn_benchmarks/keras/test_benchmarks.py
@@ -147,6 +147,7 @@ class BenchmarkTests:
             print ("Failed: " + failed_test)
             
 
+    # Returns False if any of the tests failed
     def printHPVMSummary(self):
 
         failed_test_count = len(self.failed_hpvm_tests)
@@ -161,9 +162,14 @@ class BenchmarkTests:
         print ("****** Failed Tests *** \n")
         for failed_test in self.failed_hpvm_tests:
             print ("Failed: " + failed_test)
-            
 
-        
+        if failed_test_count > 0:
+            return False
+
+        return True
+
+
+    
             
 if __name__ == "__main__":
 
@@ -191,22 +197,25 @@ if __name__ == "__main__":
     VGG16_ImageNet = Benchmark(CUR_SRC_PATH + "/vgg16_imagenet.py", "src/vgg16_imagenet_src", 69.46)
 
     #testMgr.addBenchmark(AlexNet)
-    #testMgr.addBenchmark(AlexNet_ImageNet)
     #testMgr.addBenchmark(AlexNet2)
-    testMgr.addBenchmark(LeNet)
-    #testMgr.addBenchmark(MobileNet)
-    #testMgr.addBenchmark(ResNet18)
+    #testMgr.addBenchmark(LeNet)
+    testMgr.addBenchmark(MobileNet)
+    testMgr.addBenchmark(ResNet18)
     #testMgr.addBenchmark(ResNet50)
     #testMgr.addBenchmark(VGG16_cifar10)
     testMgr.addBenchmark(VGG16_cifar100)
     #testMgr.addBenchmark(VGG16_ImageNet)
-
+    testMgr.addBenchmark(AlexNet_ImageNet)
+  
     #testMgr.runKerasTests()
     #testMgr.printKerasSummary()
     
     testMgr.runHPVMTests()
-    testMgr.printHPVMSummary()
+    tests_passed = testMgr.printHPVMSummary()
 
+    if not tests_passed:
+        sys.exit(-1)
+    
     #testMgr.runKerasTests()
     #testMgr.printKerasSummary()
  
-- 
GitLab