From bd1f093804beb25a9d9fcaf81f30a3c40c1f5593 Mon Sep 17 00:00:00 2001
From: Elizabeth <hashim.sharif91@gmail.com>
Date: Wed, 9 Oct 2019 17:30:36 -0500
Subject: [PATCH] Fixed bug in total time/energy storag

---
 llvm/projects/soc_simulator/src/driver.py | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

diff --git a/llvm/projects/soc_simulator/src/driver.py b/llvm/projects/soc_simulator/src/driver.py
index 4eabc33818..062142edd9 100644
--- a/llvm/projects/soc_simulator/src/driver.py
+++ b/llvm/projects/soc_simulator/src/driver.py
@@ -202,7 +202,7 @@ def run_simulations(config_filename):
         exit(1)
 
     config_file = open(config_filename, "r")
-    
+  
     # each line = indepedent configuration
     # layers are separated by commas
     # tensor ops are separated by spaces
@@ -211,9 +211,6 @@ def run_simulations(config_filename):
         prev_layer = ApproxTypes.FP32
         curr_layer = None
 
-        aggregate_results[results_time_key][config_count] = 0
-        aggregate_results[results_energy_key][config_count] = 0
-
         for layer_ind, config_layer in enumerate(config_layers): # level
             layer_data = tensor_layers[layer_ind]  # layer
             layer_name = layer_data["Name"]
@@ -224,9 +221,9 @@ def run_simulations(config_filename):
                 quant_time, quant_energy = quantize(curr_layer, prev_layer, 0, layer_data)
                 # Compute 
                 time, energy = run_promise_simulation(config_layer, layer_data)
+                print(time, energy)
                 aggregate_results[results_time_key][config_count] += time
                 aggregate_results[results_energy_key][config_count] += energy 
-
             else:
                 print("Running layer %s on the GPU" % layer_name)
                 tensor_ops = config_layer.split(' ')
@@ -241,17 +238,16 @@ def run_simulations(config_filename):
                         curr_layer = ApproxTypes.FP32
                     quant_time, quant_energy = quantize(curr_layer, prev_layer, tensor_ind, \
                                 layer_data)
-
                     conv_time, conv_energy = run_gpu_simulation(curr_layer, layer_name, tensor_ind)
-                    total_time += conv_time
-                    total_time += conv_energy
+                    total_time += quant_time + conv_time 
+                    total_energy += quant_energy + conv_energy
 
                 aggregate_results[results_time_key][config_count] += total_time
                 aggregate_results[results_energy_key][config_count] += total_energy 
+
             prev_layer = curr_layer
         config_count += 1
         print("\n")
-
     config_count += 1 # because we're storing the count and not the index
     config_file.close()
 
@@ -267,6 +263,7 @@ def display_results(results_filename):
         attribute_data.append("Configuration,Total,Improvement") # header
 
         baseline_val = aggregate_results[attribute][0]
+        print(baseline_val)
         best_config = None
         best_result = None
 
-- 
GitLab