Loading ci/basop-pages/create_report_pages.py +19 −6 Original line number Diff line number Diff line Loading @@ -92,11 +92,12 @@ ARROW_DOWN = '<span class="arrowdown">⬂</span>' # expected columns. actual columns are filtered from the incoming data later, this # is mainly for controlling the order in the output table COLUMNS = ["testcase", "Result", "MLD", "MAXIMUM ABS DIFF"] COLUMNS = ["testcase", "Result", "MLD", "MAXIMUM ABS DIFF", "MIN_SSNR"] COLUMNS_GLOBAL = COLUMNS[:1] COLUMNS_DIFFERENTIAL = COLUMNS[1:] COLUMNS_DIFFERENTIAL_NOT_MLD = COLUMNS_DIFFERENTIAL[2:] def create_subpage( html_out, csv_out, Loading @@ -111,11 +112,18 @@ def create_subpage( ) write_out_csv(merged_reports, merged_reports[0].keys(), csv_out) table_header_a = "".join([TH_TMPL_GLOBAL.format(c) for c in COLUMNS_GLOBAL] + [TH_TMPL_DIFFERENTIAL.format(c) for c in COLUMNS_DIFFERENTIAL]) table_header_a = "".join( [TH_TMPL_GLOBAL.format(c) for c in COLUMNS_GLOBAL] + [TH_TMPL_DIFFERENTIAL.format(c) for c in COLUMNS_DIFFERENTIAL] ) table_header_b = list() for c in COLUMNS_DIFFERENTIAL: table_header_b.append(TH_TMPL_SECOND_ROW.format(f"Previous Run<br>ID: {id_previous}")) table_header_b.append(TH_TMPL_SECOND_ROW.format(f"Current Run<br>ID: {id_current}")) table_header_b.append( TH_TMPL_SECOND_ROW.format(f"Previous Run<br>ID: {id_previous}") ) table_header_b.append( TH_TMPL_SECOND_ROW.format(f"Current Run<br>ID: {id_current}") ) table_header_b = "".join(table_header_b) table_body = "\n".join( tr_from_row(row, id_current, id_previous) for row in merged_reports Loading Loading @@ -241,8 +249,13 @@ def merge_and_cleanup_mld_reports( return diff other_col_pairs = [(f"{col}-{id_previous}", f"{col}-{id_current}") for col in COLUMNS_DIFFERENTIAL_NOT_MLD] merged = sorted(merged, key=partial(sort_func, other_col_pairs=other_col_pairs), reverse=True) other_col_pairs = [ (f"{col}-{id_previous}", f"{col}-{id_current}") for col in COLUMNS_DIFFERENTIAL_NOT_MLD ] merged = sorted( merged, key=partial(sort_func, other_col_pairs=other_col_pairs), reverse=True ) # remove the unecessary whole path from the testcase names for row in merged: Loading ci/complexity_measurements/check_for_changes.py 0 → 100644 +45 −0 Original line number Diff line number Diff line import argparse import csv import sys import numpy as np THRESH = 0.01 COLS = [ [3, 5, 7, 9], # wmops_all [3,5,7,8,10,12,13,15,17], # ram_all [3,5,7,9,11,13,15,17,19], # rom_all ] def main(args): linewise_logfiles = [args.wmops_logfile, args.ram_logfile, args.rom_logfile] changes_found_linewise = any([check_linewise_logfile(f, c) for f, c in zip(linewise_logfiles, COLS)]) if changes_found_linewise: print("Global max of WMOPS, RAM or ROM changed") return int(changes_found_linewise) def check_linewise_logfile(filepath, cols): with open(filepath) as f: contents = [line for line in csv.reader(f, delimiter=" ")] curr = contents[-1] prev = contents[-2] change_ratios = [abs(float(curr[i]) / float(prev[i]) - 1) > THRESH for i in cols] changes_found = any(change_ratios) return changes_found if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("wmops_logfile") parser.add_argument("ram_logfile") parser.add_argument("rom_logfile") args = parser.parse_args() sys.exit(main(args)) ci/complexity_measurements/getWmops.sh +6 −1 Original line number Diff line number Diff line Loading @@ -86,4 +86,9 @@ ${scriptDir}/parseNewsletterRom.py ${wmopsFilenameFlc}_PROM.csv ${wmopsFilenameF # generate java script from database tcsh ${scriptDir}/genWebpageData_Rom.csh ${destDir}/wmops/log_rom_all.txt ${destDir}/wmops/graphs_rom_flc.js Graphs_ROM python3 ${scriptDir}/check_for_changes.py ${destDir}/wmops/log_wmops_all.txt ${destDir}/wmops/log_ram_all.txt ${destDir}/wmops/log_rom_all.txt if [ "$?" != "0" ]; then ret_val=1 fi exit $ret_val lib_com/ivas_cnst.h +6 −2 Original line number Diff line number Diff line Loading @@ -1292,10 +1292,14 @@ typedef enum #define LFE_CHANNEL 3 #define MIN_LFE_NRG 0.5f #define MCT_MAX_CHANNELS MAX_TRANSPORT_CHANNELS #ifdef ADJUST_MCT_CHANNELS_MAX #define MCT_MAX_CHANNELS 11 /* == 7.1.4 LS channels without the LFE channel */ #define MCT_MAX_BLOCKS ( ( MCT_MAX_CHANNELS + 1 ) / CPE_CHANNELS ) /* max. number of channel pairs (MCT_MAX_CHANNELS/2) within MCT*/ #else #define MCT_MAX_CHANNELS 12 #define MCT_MAX_BLOCKS ( MCT_MAX_CHANNELS / CPE_CHANNELS ) /* max. number of channel pairs (MCT_MAX_CHANNELS/2) within MCT*/ #define MAX_NUM_DATA max( MCT_MAX_CHANNELS, 4 ) #endif #define NBBITS_MCT_RATIO 4 #define BITRATE_MCT_RATIO_RANGE ( 1 << NBBITS_MCT_RATIO ) /* Range of the coded bitrate distribution ratio */ Loading lib_com/ivas_prot.h +0 −4 Original line number Diff line number Diff line Loading @@ -3039,11 +3039,7 @@ void mctStereoIGF_enc( MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */ Encoder_State **sts, /* i/o: encoder state structure */ float *orig_spectrum[MCT_MAX_CHANNELS][NB_DIV], /* i : MDCT spectrum for ITF */ #ifdef NONBE_FIX_1097_SBA_DTX_BRATE_SWITCHING_ENC float *powerSpec[MCT_MAX_CHANNELS], /* i/o: MDCT^2 + MDST^2 spectrum,or estimate */ #else float powerSpec[MCT_MAX_CHANNELS][L_FRAME48k], /* i/o: MDCT^2 + MDST^2 spectrum,or estimate */ #endif float *powerSpecMsInv[MCT_MAX_CHANNELS][NB_DIV], /* i : same as above but for inverse spect. */ float *inv_spectrum[MCT_MAX_CHANNELS][NB_DIV], /* i : inverse spectrum */ const int16_t sp_aud_decision0[MCT_MAX_CHANNELS] /* i : speech audio decision */ Loading Loading
ci/basop-pages/create_report_pages.py +19 −6 Original line number Diff line number Diff line Loading @@ -92,11 +92,12 @@ ARROW_DOWN = '<span class="arrowdown">⬂</span>' # expected columns. actual columns are filtered from the incoming data later, this # is mainly for controlling the order in the output table COLUMNS = ["testcase", "Result", "MLD", "MAXIMUM ABS DIFF"] COLUMNS = ["testcase", "Result", "MLD", "MAXIMUM ABS DIFF", "MIN_SSNR"] COLUMNS_GLOBAL = COLUMNS[:1] COLUMNS_DIFFERENTIAL = COLUMNS[1:] COLUMNS_DIFFERENTIAL_NOT_MLD = COLUMNS_DIFFERENTIAL[2:] def create_subpage( html_out, csv_out, Loading @@ -111,11 +112,18 @@ def create_subpage( ) write_out_csv(merged_reports, merged_reports[0].keys(), csv_out) table_header_a = "".join([TH_TMPL_GLOBAL.format(c) for c in COLUMNS_GLOBAL] + [TH_TMPL_DIFFERENTIAL.format(c) for c in COLUMNS_DIFFERENTIAL]) table_header_a = "".join( [TH_TMPL_GLOBAL.format(c) for c in COLUMNS_GLOBAL] + [TH_TMPL_DIFFERENTIAL.format(c) for c in COLUMNS_DIFFERENTIAL] ) table_header_b = list() for c in COLUMNS_DIFFERENTIAL: table_header_b.append(TH_TMPL_SECOND_ROW.format(f"Previous Run<br>ID: {id_previous}")) table_header_b.append(TH_TMPL_SECOND_ROW.format(f"Current Run<br>ID: {id_current}")) table_header_b.append( TH_TMPL_SECOND_ROW.format(f"Previous Run<br>ID: {id_previous}") ) table_header_b.append( TH_TMPL_SECOND_ROW.format(f"Current Run<br>ID: {id_current}") ) table_header_b = "".join(table_header_b) table_body = "\n".join( tr_from_row(row, id_current, id_previous) for row in merged_reports Loading Loading @@ -241,8 +249,13 @@ def merge_and_cleanup_mld_reports( return diff other_col_pairs = [(f"{col}-{id_previous}", f"{col}-{id_current}") for col in COLUMNS_DIFFERENTIAL_NOT_MLD] merged = sorted(merged, key=partial(sort_func, other_col_pairs=other_col_pairs), reverse=True) other_col_pairs = [ (f"{col}-{id_previous}", f"{col}-{id_current}") for col in COLUMNS_DIFFERENTIAL_NOT_MLD ] merged = sorted( merged, key=partial(sort_func, other_col_pairs=other_col_pairs), reverse=True ) # remove the unecessary whole path from the testcase names for row in merged: Loading
ci/complexity_measurements/check_for_changes.py 0 → 100644 +45 −0 Original line number Diff line number Diff line import argparse import csv import sys import numpy as np THRESH = 0.01 COLS = [ [3, 5, 7, 9], # wmops_all [3,5,7,8,10,12,13,15,17], # ram_all [3,5,7,9,11,13,15,17,19], # rom_all ] def main(args): linewise_logfiles = [args.wmops_logfile, args.ram_logfile, args.rom_logfile] changes_found_linewise = any([check_linewise_logfile(f, c) for f, c in zip(linewise_logfiles, COLS)]) if changes_found_linewise: print("Global max of WMOPS, RAM or ROM changed") return int(changes_found_linewise) def check_linewise_logfile(filepath, cols): with open(filepath) as f: contents = [line for line in csv.reader(f, delimiter=" ")] curr = contents[-1] prev = contents[-2] change_ratios = [abs(float(curr[i]) / float(prev[i]) - 1) > THRESH for i in cols] changes_found = any(change_ratios) return changes_found if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("wmops_logfile") parser.add_argument("ram_logfile") parser.add_argument("rom_logfile") args = parser.parse_args() sys.exit(main(args))
ci/complexity_measurements/getWmops.sh +6 −1 Original line number Diff line number Diff line Loading @@ -86,4 +86,9 @@ ${scriptDir}/parseNewsletterRom.py ${wmopsFilenameFlc}_PROM.csv ${wmopsFilenameF # generate java script from database tcsh ${scriptDir}/genWebpageData_Rom.csh ${destDir}/wmops/log_rom_all.txt ${destDir}/wmops/graphs_rom_flc.js Graphs_ROM python3 ${scriptDir}/check_for_changes.py ${destDir}/wmops/log_wmops_all.txt ${destDir}/wmops/log_ram_all.txt ${destDir}/wmops/log_rom_all.txt if [ "$?" != "0" ]; then ret_val=1 fi exit $ret_val
lib_com/ivas_cnst.h +6 −2 Original line number Diff line number Diff line Loading @@ -1292,10 +1292,14 @@ typedef enum #define LFE_CHANNEL 3 #define MIN_LFE_NRG 0.5f #define MCT_MAX_CHANNELS MAX_TRANSPORT_CHANNELS #ifdef ADJUST_MCT_CHANNELS_MAX #define MCT_MAX_CHANNELS 11 /* == 7.1.4 LS channels without the LFE channel */ #define MCT_MAX_BLOCKS ( ( MCT_MAX_CHANNELS + 1 ) / CPE_CHANNELS ) /* max. number of channel pairs (MCT_MAX_CHANNELS/2) within MCT*/ #else #define MCT_MAX_CHANNELS 12 #define MCT_MAX_BLOCKS ( MCT_MAX_CHANNELS / CPE_CHANNELS ) /* max. number of channel pairs (MCT_MAX_CHANNELS/2) within MCT*/ #define MAX_NUM_DATA max( MCT_MAX_CHANNELS, 4 ) #endif #define NBBITS_MCT_RATIO 4 #define BITRATE_MCT_RATIO_RANGE ( 1 << NBBITS_MCT_RATIO ) /* Range of the coded bitrate distribution ratio */ Loading
lib_com/ivas_prot.h +0 −4 Original line number Diff line number Diff line Loading @@ -3039,11 +3039,7 @@ void mctStereoIGF_enc( MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */ Encoder_State **sts, /* i/o: encoder state structure */ float *orig_spectrum[MCT_MAX_CHANNELS][NB_DIV], /* i : MDCT spectrum for ITF */ #ifdef NONBE_FIX_1097_SBA_DTX_BRATE_SWITCHING_ENC float *powerSpec[MCT_MAX_CHANNELS], /* i/o: MDCT^2 + MDST^2 spectrum,or estimate */ #else float powerSpec[MCT_MAX_CHANNELS][L_FRAME48k], /* i/o: MDCT^2 + MDST^2 spectrum,or estimate */ #endif float *powerSpecMsInv[MCT_MAX_CHANNELS][NB_DIV], /* i : same as above but for inverse spect. */ float *inv_spectrum[MCT_MAX_CHANNELS][NB_DIV], /* i : inverse spectrum */ const int16_t sp_aud_decision0[MCT_MAX_CHANNELS] /* i : speech audio decision */ Loading