From 834a4ecd19abb1ac246d962a0e577bc5b8ef69d3 Mon Sep 17 00:00:00 2001 From: "valentin.emiya" <valentin.emiya@lif.univ-mrs.fr> Date: Sat, 5 Dec 2020 07:00:19 +0100 Subject: [PATCH] update exp to multiple runs --- python/tffpy/experiments/exp_solve_tff.py | 19 ++++++++++++++++--- python/tffpy/scripts/script_exp_solve_tff.py | 4 ++-- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/python/tffpy/experiments/exp_solve_tff.py b/python/tffpy/experiments/exp_solve_tff.py index 55f008f..afc7fa6 100644 --- a/python/tffpy/experiments/exp_solve_tff.py +++ b/python/tffpy/experiments/exp_solve_tff.py @@ -254,7 +254,8 @@ class SolveTffExperiment(Experiment): self.fig_dir.mkdir(parents=True, exist_ok=True) print('Figures saved in {}'.format(self.fig_dir)) results = self.load_results(array_type='xarray') - results = results.squeeze() + results_std = results.std('solver_rand_state').squeeze() + results = results.mean('solver_rand_state').squeeze() coords_dict = results.to_dict()['coords'] csv_path = self.fig_dir / 'exp_solve_pd.csv' results.to_series().to_csv(csv_path, header=True) @@ -304,12 +305,24 @@ class SolveTffExperiment(Experiment): x = x.reshape(-1) y = y.reshape(-1) + I = np.logical_and(x!=0, y!=0) + x, y = x[I], y[I] slope, intercept, r_value, p_value, std_err = linregress(x, y) - print('Running times (all): slope={}, intercept={}, 1/slope={},' - .format(slope, intercept, 1 / slope)) + print('Running times (all): slope={}, intercept={}, 1/slope={}, ' + 'r_value={}, p_value={}, std_err={}' + .format(slope, intercept, 1 / slope, r_value, p_value, std_err)) print('Linear slope (not affine):') print(np.vdot(x, y) / np.vdot(x, x), np.vdot(x, x) / np.vdot(x, y)) + log_x, log_y = np.log10(x), np.log10(y) + slope, intercept, r_value, p_value, std_err = linregress(log_x, log_y) + print('Running times (all-log): slope={}, intercept={}, 1/slope={},' + 'r_value={}, p_value={}, std_err={}' + .format(slope, intercept, 1 / slope, r_value, p_value, std_err)) + print('Linear slope (not affine) - log:') + print(np.vdot(log_x, log_y) / np.vdot(log_x, log_x), + np.vdot(log_x, log_x) / np.vdot(log_x, log_y)) + # plt.plot(x, slope * x + intercept) plt.xlabel(r'Running time for TFF-1 (s)') plt.ylabel(r'Running time for TFF-P (s)') diff --git a/python/tffpy/scripts/script_exp_solve_tff.py b/python/tffpy/scripts/script_exp_solve_tff.py index 51071ec..2cc8a43 100644 --- a/python/tffpy/scripts/script_exp_solve_tff.py +++ b/python/tffpy/scripts/script_exp_solve_tff.py @@ -118,12 +118,12 @@ if __name__ == '__main__': '/data1/home/valentin.emiya/data_exp/SolveTffExperiment/' print('Run:') print(' '.join(['rsync', '-rv', - 'valentin.emiya@frontend.lidil.univ-mrs.fr:' + 'valentin.emiya@sms-ext.lis-lab.fr:' + from_dir, to_dir])) print('Or (less files):') print(' '.join(['rsync', '-rv', - 'valentin.emiya@frontend.lidil.univ-mrs.fr:' + 'valentin.emiya@sms-ext.lis-lab.fr:' + from_dir + '*.*', to_dir])) -- GitLab