| if __name__ == "__main__": | if __name__ == "__main__": | ||||
| parser = ArgumentParser() | parser = ArgumentParser() | ||||
| parser.add_argument("--serial1", required=True, help="Serial csv file1.") | |||||
| parser.add_argument("--serial2", required=True, help="Serial csv file2.") | |||||
| parser.add_argument("--folder1", required=True, help="PCAP csv folder1.") | |||||
| parser.add_argument("--folder2", required=True, help="PCAP csv folder2.") | |||||
| parser.add_argument("-s", "--serials", required=True, help="Serial csv files. Comma separated.") | |||||
| parser.add_argument("-f", "--folders", required=True, help="PCAP csv folders. Comma separated.") | |||||
| parser.add_argument("--save", default=None, help="Location to save pdf file.") | parser.add_argument("--save", default=None, help="Location to save pdf file.") | ||||
| parser.add_argument( | parser.add_argument( | ||||
| "-c", | "-c", | ||||
| args = parser.parse_args() | args = parser.parse_args() | ||||
| transmission_df_list = list() | transmission_df_list = list() | ||||
| for f in [args.folder1, args.folder2]: | |||||
| for f in args.folders.split(","): | |||||
| manager = multiprocessing.Manager() | manager = multiprocessing.Manager() | ||||
| n = manager.Value("i", 0) | n = manager.Value("i", 0) | ||||
| frame_list = manager.list() | frame_list = manager.list() | ||||
| )) | )) | ||||
| # Plot sRTT CDF | # Plot sRTT CDF | ||||
| legend = list() | |||||
| plot_cdf(transmission_df_list[0]["df"], "srtt") | plot_cdf(transmission_df_list[0]["df"], "srtt") | ||||
| plot_cdf(transmission_df_list[1]["df"], "srtt", axis=plt.gca()) | |||||
| for i in range(1, len(transmission_df_list)): | |||||
| plot_cdf(transmission_df_list[i]["df"], "srtt", axis=plt.gca()) | |||||
| legend.append(transmission_df_list[i]["cc_algo"]) | |||||
| plt.xscale("log") | plt.xscale("log") | ||||
| plt.xlabel("sRTT [s]") | plt.xlabel("sRTT [s]") | ||||
| plt.ylabel("CDF") | plt.ylabel("CDF") | ||||
| plt.legend([transmission_df_list[0]["cc_algo"], transmission_df_list[1]["cc_algo"]]) | |||||
| plt.title("{}".format(transmission_direction)) | |||||
| plt.legend(legend) | |||||
| plt.title("{}".format(transmission_df_list[0]["transmission_direction"])) | |||||
| plt.savefig("{}{}_cdf_compare_plot.pdf".format(args.save, "srtt")) | plt.savefig("{}{}_cdf_compare_plot.pdf".format(args.save, "srtt")) | ||||
| plt.clf() | plt.clf() | ||||
| # Plot goodput CDF | # Plot goodput CDF | ||||
| legend = list() | |||||
| plot_cdf(transmission_df_list[0]["df"], "goodput") | plot_cdf(transmission_df_list[0]["df"], "goodput") | ||||
| plot_cdf(transmission_df_list[1]["df"], "goodput", axis=plt.gca()) | |||||
| for i in range(1, len(transmission_df_list)): | |||||
| plot_cdf(transmission_df_list[i]["df"], "goodput", axis=plt.gca()) | |||||
| legend.append(transmission_df_list[i]["cc_algo"]) | |||||
| plt.xlabel("goodput [mbps]") | plt.xlabel("goodput [mbps]") | ||||
| plt.ylabel("CDF") | plt.ylabel("CDF") | ||||
| plt.legend([transmission_df_list[0]["cc_algo"], transmission_df_list[1]["cc_algo"]]) | |||||
| plt.title("{}".format(transmission_direction)) | |||||
| plt.legend(legend) | |||||
| plt.title("{}".format(transmission_df_list[0]["transmission_direction"])) | |||||
| plt.savefig("{}{}_cdf_compare_plot.pdf".format(args.save, "goodput")) | plt.savefig("{}{}_cdf_compare_plot.pdf".format(args.save, "goodput")) |