X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=resources%2Ftools%2Fpresentation%2Fgenerator_tables.py;h=c2c1f00af56585fae4194a8e8404f92b1f6ed40a;hb=c7f237dec4b51c357a27aa6ce5f13d87c8926e60;hp=273288c1aacf90e485d57164d2e93b1caa90a764;hpb=55cad0badce981ec3f0b544e687d898eba689368;p=csit.git diff --git a/resources/tools/presentation/generator_tables.py b/resources/tools/presentation/generator_tables.py index 273288c1aa..c2c1f00af5 100644 --- a/resources/tools/presentation/generator_tables.py +++ b/resources/tools/presentation/generator_tables.py @@ -1,4 +1,4 @@ -# Copyright (c) 2022 Cisco and/or its affiliates. +# Copyright (c) 2023 Cisco and/or its affiliates. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at: @@ -915,8 +915,8 @@ def table_soak_vs_ndr(table, input_data): else: data_c_mean = mean(data_c) data_c_stdev = stdev(data_c) - item.append(round(data_c_mean / 1e6, 1)) - item.append(round(data_c_stdev / 1e6, 1)) + item.append(round(data_c_mean / 1e6, 2)) + item.append(round(data_c_stdev / 1e6, 2)) else: data_c_mean = None data_c_stdev = None @@ -925,11 +925,11 @@ def table_soak_vs_ndr(table, input_data): delta, d_stdev = relative_change_stdev( data_r_mean, data_c_mean, data_r_stdev, data_c_stdev) try: - item.append(round(delta)) + item.append(round(delta, 2)) except ValueError: item.append(delta) try: - item.append(round(d_stdev)) + item.append(round(d_stdev, 2)) except ValueError: item.append(d_stdev) tbl_lst.append(item) @@ -1146,34 +1146,25 @@ def _generate_url(testbed, test_name): frame_size = u"" if u"1t1c" in test_name or \ - (u"-1c-" in test_name and - testbed in (u"3n-hsw", u"3n-tsh", u"2n-dnv", u"3n-dnv", u"2n-tx2")): + (u"-1c-" in test_name and testbed in (u"3n-tsh", u"2n-tx2")): cores = u"1t1c" elif u"2t2c" in test_name or \ - (u"-2c-" in test_name and - testbed in (u"3n-hsw", u"3n-tsh", u"2n-dnv", u"3n-dnv", u"2n-tx2")): + (u"-2c-" in test_name and testbed in (u"3n-tsh", u"2n-tx2")): cores = u"2t2c" elif u"4t4c" in test_name or \ - (u"-4c-" in test_name and - testbed in (u"3n-hsw", u"3n-tsh", u"2n-dnv", u"3n-dnv", u"2n-tx2")): + (u"-4c-" in test_name and testbed in (u"3n-tsh", u"2n-tx2")): cores = u"4t4c" elif u"2t1c" in test_name or \ (u"-1c-" in test_name and - testbed in - (u"2n-icx", u"3n-icx", u"2n-skx", u"3n-skx", u"2n-clx", u"2n-zn2", - u"2n-aws", u"3n-aws")): + testbed in (u"2n-icx", u"3n-icx", u"2n-clx", u"2n-zn2", u"2n-aws")): cores = u"2t1c" elif u"4t2c" in test_name or \ (u"-2c-" in test_name and - testbed in - (u"2n-icx", u"3n-icx", u"2n-skx", u"3n-skx", u"2n-clx", u"2n-zn2", - u"2n-aws", u"3n-aws")): + testbed in (u"2n-icx", u"3n-icx", u"2n-clx", u"2n-zn2", u"2n-aws")): cores = u"4t2c" elif u"8t4c" in test_name or \ (u"-4c-" in test_name and - testbed in - (u"2n-icx", u"3n-icx", u"2n-skx", u"3n-skx", u"2n-clx", u"2n-zn2", - u"2n-aws", u"3n-aws")): + testbed in (u"2n-icx", u"3n-icx", u"2n-clx", u"2n-zn2", u"2n-aws")): cores = u"8t4c" else: cores = u"" @@ -1188,7 +1179,7 @@ def _generate_url(testbed, test_name): driver = u"af_xdp" elif u"rdma" in test_name: driver = u"rdma" - elif u"dnv" in testbed or u"tsh" in testbed: + elif u"tsh" in testbed: driver = u"ixgbe" elif u"ena" in test_name: driver = u"ena" @@ -2023,8 +2014,13 @@ def table_comparison(table, input_data): for itm in footnote.split("\n"): file_handler.write(f'"{itm}"\n') - tbl_tmp = list() - max_lens = [0, ] * len(tbl_cmp_lst[0]) + try: + max_lens = [0, ] * len(tbl_cmp_lst[0]) + except IndexError as err: + logging.error(f"Generator tables: {err}") + return + + tbl_tmp = list() for line in tbl_cmp_lst: row = [line[0], ] for idx, itm in enumerate(line[1:]): @@ -2176,8 +2172,10 @@ def table_weekly_comparison(table, in_data): header[1].insert( 1, in_data.metadata(job_name, build_nr).get(u"generated", u"") ) + logging.info( + in_data.metadata(job_name, build_nr).get(u"version", u"ERROR")) header[0].insert( - 1, in_data.metadata(job_name, build_nr).get(u"version", u"") + 1, in_data.metadata(job_name, build_nr).get("version", build_nr) ) for tst_name, tst_data in build.items(): @@ -2219,9 +2217,7 @@ def table_weekly_comparison(table, in_data): if ref_data is None or cmp_data is None: cmp_dict[tst_name].append(float(u'nan')) else: - cmp_dict[tst_name].append( - relative_change(ref_data, cmp_data) - ) + cmp_dict[tst_name].append(relative_change(ref_data, cmp_data)) tbl_lst_none = list() tbl_lst = list() @@ -2265,17 +2261,31 @@ def table_weekly_comparison(table, in_data): txt_file_name = f"{table[u'output-file']}.txt" logging.info(f" Writing the file {txt_file_name}") - convert_csv_to_pretty_txt(csv_file_name, txt_file_name, delimiter=u",") + try: + convert_csv_to_pretty_txt(csv_file_name, txt_file_name, delimiter=u",") + except Exception as err: + logging.error(repr(err)) + for hdr in header: + logging.info(",".join(hdr)) + for test in tbl_lst: + logging.info(",".join( + [ + str(item).replace(u"None", u"-").replace(u"nan", u"-"). + replace(u"null", u"-") for item in test + ] + )) # Reorganize header in txt table txt_table = list() - with open(txt_file_name, u"rt", encoding='utf-8') as file_handler: - for line in list(file_handler): - txt_table.append(line) try: + with open(txt_file_name, u"rt", encoding='utf-8') as file_handler: + for line in list(file_handler): + txt_table.append(line) txt_table.insert(5, txt_table.pop(2)) with open(txt_file_name, u"wt", encoding='utf-8') as file_handler: file_handler.writelines(txt_table) + except FileNotFoundError as err: + logging.error(repr(err)) except IndexError: pass