Browse Source

Script for simple analysis and regular flush

Román Cárdenas 2 years ago
parent
commit
18825c4992
2 changed files with 21 additions and 2 deletions
  1. 2 2
      devstone_comparative.py
  2. 19 0
      results_analysis.py

+ 2 - 2
devstone_comparative.py

@@ -175,8 +175,7 @@ def execute_cmd(cmd, regex, csv_writer):
     total_time = sum((model_time, engine_time, sim_time))
 
     # Write results into output file
-    row = (
-    engine, i_exec, model_type, width, depth, int_cycles, ext_cycles, model_time, engine_time, sim_time, total_time)
+    row = (engine, i_exec, model_type, width, depth, int_cycles, ext_cycles, model_time, engine_time, sim_time, total_time)
     csv_writer.writerow(row)
 
 
@@ -203,3 +202,4 @@ if __name__ == "__main__":
                 for i_exec in range(args.num_rep):
                     print(f'({i_exec}) {engine_cmd_f}')
                     execute_cmd(engine_cmd_f, engine_regex, csv_writer)
+                csv_file.flush()

+ 19 - 0
results_analysis.py

@@ -0,0 +1,19 @@
+import pandas as pd
+
+
+if __name__ == '__main__':
+    df = None
+    for model in 'LI', 'HI', 'HO', 'HOmod':
+        mod_df = pd.read_csv(f'results_{model}.csv', sep=';', index_col=None)
+        del mod_df['iter']
+        del mod_df['int_delay']
+        del mod_df['ext_delay']
+        df = mod_df if df is None else pd.concat([df, mod_df])
+    aux = df.groupby(['engine', 'model', 'width', 'depth'])
+    mean = aux.mean()
+    mean.rename(columns={'model_time': 'mean_model_time', 'runner_time': 'mean_runner_time', 'sim_time': 'mean_sim_time', 'total_time': 'mean_total_time'}, inplace=True)
+    std = aux.std()
+    std.rename(columns={'model_time': 'std_model_time', 'runner_time': 'std_runner_time', 'sim_time': 'std_sim_time', 'total_time': 'std_total_time'}, inplace=True)
+    mean = mean.join(std)
+    mean.to_csv('results_macos.csv')
+    print('done')