# Logs Bins = [1, 2, 4, 5, 10, 20] x_pts = [1, 3, 7, 9, 19, 39] t_list = [] timefile = './data/input/MGDS1_time.csv' if (True == NEWMEASURE): # Step 1. Get exe_dist #=============== Analytical: M/G(DS)/1 =============== for N_exe in Bins: t_start = datetime.datetime.now() N_arr = 20 exe_dist = get_dist_from_exec(execute_dur, N_exe, N_arr) (x_bg, y_bg) = get_MGDS1_from_BGDS1(arrival_rate, exe_dist, budget, period, N_arr) t_end = datetime.datetime.now() t_delta = t_end - t_start t_list.append(t_delta.total_seconds()) write_arrival_data(timefile, t_list) else: t_list = read_arrival_data(timefile) print t_list
x_lim = 20.0 y_lim = 1.0 xy_lim = (x_lim, y_lim) #================= M/D(DS)/1 Theoretical ================== (x_bd, y_bd) = get_MDDS1_from_BDDS1(arrival_rate, 1.0, budget, period, N) # x_bd = x_bd[0:int(x_lim * N)] y_bd = y_bd[0:int(x_lim * N)] #================= M/G(DS)/1 Theoretical ================== execution_file = './data/res/redis_sort_calib.csv' execution_time = read_arrival_data(execution_file) exe_dist = get_dist_from_exec(execution_time, N) (x_bd2, y_bd2) = get_MGDS1_from_BGDS1(arrival_rate, exe_dist, budget, period, N) x_bd2 = x_bd2[0:int(x_lim * N)] y_bd2 = y_bd2[0:int(x_lim * N)] #================= M/D(DS)/1 Empirical ================== ecdf_samples = 10000 x_axis = np.linspace(0, x_lim, ecdf_samples) scale = 10.0 resultfile = './data/res/' + runfile + '.csv' response_time = read_arrival_data(resultfile) response_time = np.array(response_time) response_time = response_time / scale ecdf2 = sm.distributions.ECDF(response_time)