Loading .gitlab-ci.yml +115 −39 Original line number Diff line number Diff line Loading @@ -2270,9 +2270,13 @@ coverage-test-on-main-scheduled: # still needed as long as no long MASA testvectors are there - .test-job-linux-needs-testv-dir tags: - test-complexity-measurement - ivas-linux-fast timeout: 3 hours 30 minutes stage: test before_script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup artifacts: name: "$CI_JOB_NAME--$CI_COMMIT_REF_NAME--sha-$CI_COMMIT_SHA" when: always Loading @@ -2280,89 +2284,164 @@ coverage-test-on-main-scheduled: paths: - $CI_JOB_NAME-public complexity-stereo-in-stereo-out: complexity-stereo-in-ext-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup - in_format=stereo - out_format=stereo - out_format=ext - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-ism-in-binaural-out: complexity-ism-in-binaural_room_ir-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 1 hour # when: delayed # start_in: 1 hour script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup - in_format=ISM - out_format=BINAURAL - out_format=BINAURAL_ROOM_IR - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-sba-hoa3-in-hoa3-out: complexity-ism-in-ext-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 2 hours 30 minutes # when: delayed # start_in: 2 hour script: - in_format=ISM - out_format=EXT - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-sba-hoa3-in-ext-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX # when: delayed # start_in: 3 hours script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup - in_format=HOA3 - out_format=HOA3 - out_format=EXT - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-mc-in-7_1_4-out: complexity-sba-hoa3-in-binaural_room_ir-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 4 hours # when: delayed # start_in: 4 hours script: - in_format=HOA3 - out_format=BINAURAL_ROOM_IR - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-mc-in-ext-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX # when: delayed # start_in: 5 hours script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup - in_format=MC - out_format=7_1_4 - out_format=EXT - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-masa-in-7_1_4-out: complexity-mc-in-binaural_room_ir-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 7 hours 30 minutes # when: delayed # start_in: 6 hours script: - in_format=MC - out_format=BINAURAL_ROOM_IR - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-masa-in-ext-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX # when: delayed # start_in: 7 hours script: - in_format=MASA - out_format=EXT - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-masa-in-binaural-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX # when: delayed # start_in: 8 hours script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup - in_format=MASA - out_format=7_1_4 - out_format=BINAURAL - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-omasa-in-ext-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX # when: delayed # start_in: 9 hours script: - in_format=OMASA - out_format=EXT - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-omasa-in-binaural-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX # when: delayed # start_in: 10 hours script: - in_format=OMASA - out_format=BINAURAL - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts Loading @@ -2373,12 +2452,9 @@ complexity-StereoDmxEVS-stereo-in-mono-out: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 8 hours 30 minutes # when: delayed # start_in: 11 hours script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup - in_format=StereoDmxEVS - out_format=mono - ret_val=0 Loading CMakeLists.txt +1 −1 Original line number Diff line number Diff line Loading @@ -174,7 +174,7 @@ target_include_directories(lib_util PUBLIC lib_util PRIVATE lib_com lib_enc lib_ target_include_directories(lib_util PRIVATE lib_lc3plus lib_isar) if(NOT WMOPS) add_executable(ivas_lc3plus_unit_test ${CMAKE_SOURCE_DIR}/scripts/split_rendering/lc3plus/ivas_lc3plus_unit_test.c) add_executable(ivas_lc3plus_unit_test scripts/split_rendering/lc3plus/ivas_lc3plus_unit_test.c) target_link_libraries(ivas_lc3plus_unit_test lib_rend lib_dec lib_util lib_com lib_debug lib_isar) endif() Loading ci/basop-pages/create_report_pages.py +10 −3 Original line number Diff line number Diff line Loading @@ -198,10 +198,12 @@ def tr_from_row(row, id_current, id_previous): try: if float(curr) > float(prev): curr += f" {ARROW_UP}" td_tmpl_curr = TD_TMPL_INCREASE # increase is bad -> mark in red, execpt for SNR for which it is good -> mark in green td_tmpl_curr = TD_TMPL_REDUCE if c == "MIN_SSNR" else TD_TMPL_INCREASE elif float(curr) < float(prev): curr += f" {ARROW_DOWN}" td_tmpl_curr = TD_TMPL_REDUCE # reduce is good -> mark in green, execpt for SNR for which it is bad -> mark in red td_tmpl_curr = TD_TMPL_INCREASE if c == "MIN_SSNR" else TD_TMPL_REDUCE except ValueError: # if we land here, one of the cells is not a number, this indicates a crash # or some error in the scripts, so mark with red as well Loading Loading @@ -258,7 +260,12 @@ def merge_and_cleanup_mld_reports( for col_pair in other_col_pairs: col_prev = col_pair[0] col_curr = col_pair[1] try: diff_other += abs(float(x[col_curr]) - float(x[col_prev])) except ValueError: # can't make float from the column contents, probably NONE -> put to top diff_other += float("inf") if diff_other > 0: diff = -1000000 Loading ci/complexity_measurements/check_for_changes.py +20 −3 Original line number Diff line number Diff line Loading @@ -26,10 +26,27 @@ def check_linewise_logfile(filepath, cols): contents = [line for line in csv.reader(f, delimiter=" ")] curr = contents[-1] try: prev = contents[-2] except IndexError: # this is for handling first runs of new complexity jobs -> only one line present # do not report any changes then prev = curr change_ratios = [abs(float(curr[i]) / float(prev[i]) - 1) > THRESH for i in cols] changes_found = any(change_ratios) changes_found = False for c in cols: if curr[c] == prev[c]: abs_perc_change = 0 else: try: abs_perc_change = abs(float(curr[c]) / float(prev[c]) - 1) except ZeroDivisionError: # in some cases, such as missing instrumentation, values can be zero, so catch that here # from the first if we know that curr can not be 0 too -> report change abs_perc_change = THRESH + 1 if abs_perc_change > THRESH: changes_found = True break if changes_found: print("Previous log line:", prev) Loading ci/complexity_measurements/getWmops.sh +1 −1 Original line number Diff line number Diff line Loading @@ -35,7 +35,7 @@ if [ $# -ne 2 ]; then fi ivas_format=$1 output_format=$2 output_format="$2" date=`date +%Y%m%d` # used for log-file file ending shortDate=`date "+%b %d" | sed -e "s/\ /_/g"` # stored in the log-file Loading Loading
.gitlab-ci.yml +115 −39 Original line number Diff line number Diff line Loading @@ -2270,9 +2270,13 @@ coverage-test-on-main-scheduled: # still needed as long as no long MASA testvectors are there - .test-job-linux-needs-testv-dir tags: - test-complexity-measurement - ivas-linux-fast timeout: 3 hours 30 minutes stage: test before_script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup artifacts: name: "$CI_JOB_NAME--$CI_COMMIT_REF_NAME--sha-$CI_COMMIT_SHA" when: always Loading @@ -2280,89 +2284,164 @@ coverage-test-on-main-scheduled: paths: - $CI_JOB_NAME-public complexity-stereo-in-stereo-out: complexity-stereo-in-ext-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup - in_format=stereo - out_format=stereo - out_format=ext - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-ism-in-binaural-out: complexity-ism-in-binaural_room_ir-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 1 hour # when: delayed # start_in: 1 hour script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup - in_format=ISM - out_format=BINAURAL - out_format=BINAURAL_ROOM_IR - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-sba-hoa3-in-hoa3-out: complexity-ism-in-ext-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 2 hours 30 minutes # when: delayed # start_in: 2 hour script: - in_format=ISM - out_format=EXT - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-sba-hoa3-in-ext-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX # when: delayed # start_in: 3 hours script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup - in_format=HOA3 - out_format=HOA3 - out_format=EXT - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-mc-in-7_1_4-out: complexity-sba-hoa3-in-binaural_room_ir-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 4 hours # when: delayed # start_in: 4 hours script: - in_format=HOA3 - out_format=BINAURAL_ROOM_IR - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-mc-in-ext-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX # when: delayed # start_in: 5 hours script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup - in_format=MC - out_format=7_1_4 - out_format=EXT - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-masa-in-7_1_4-out: complexity-mc-in-binaural_room_ir-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 7 hours 30 minutes # when: delayed # start_in: 6 hours script: - in_format=MC - out_format=BINAURAL_ROOM_IR - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-masa-in-ext-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX # when: delayed # start_in: 7 hours script: - in_format=MASA - out_format=EXT - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-masa-in-binaural-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX # when: delayed # start_in: 8 hours script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup - in_format=MASA - out_format=7_1_4 - out_format=BINAURAL - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-omasa-in-ext-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX # when: delayed # start_in: 9 hours script: - in_format=OMASA - out_format=EXT - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val complexity-omasa-in-binaural-out: extends: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX # when: delayed # start_in: 10 hours script: - in_format=OMASA - out_format=BINAURAL - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts Loading @@ -2373,12 +2452,9 @@ complexity-StereoDmxEVS-stereo-in-mono-out: - .complexity-template rules: - if: $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 8 hours 30 minutes # when: delayed # start_in: 11 hours script: - *print-common-info - *update-ltv-repo - *complexity-measurements-setup - in_format=StereoDmxEVS - out_format=mono - ret_val=0 Loading
CMakeLists.txt +1 −1 Original line number Diff line number Diff line Loading @@ -174,7 +174,7 @@ target_include_directories(lib_util PUBLIC lib_util PRIVATE lib_com lib_enc lib_ target_include_directories(lib_util PRIVATE lib_lc3plus lib_isar) if(NOT WMOPS) add_executable(ivas_lc3plus_unit_test ${CMAKE_SOURCE_DIR}/scripts/split_rendering/lc3plus/ivas_lc3plus_unit_test.c) add_executable(ivas_lc3plus_unit_test scripts/split_rendering/lc3plus/ivas_lc3plus_unit_test.c) target_link_libraries(ivas_lc3plus_unit_test lib_rend lib_dec lib_util lib_com lib_debug lib_isar) endif() Loading
ci/basop-pages/create_report_pages.py +10 −3 Original line number Diff line number Diff line Loading @@ -198,10 +198,12 @@ def tr_from_row(row, id_current, id_previous): try: if float(curr) > float(prev): curr += f" {ARROW_UP}" td_tmpl_curr = TD_TMPL_INCREASE # increase is bad -> mark in red, execpt for SNR for which it is good -> mark in green td_tmpl_curr = TD_TMPL_REDUCE if c == "MIN_SSNR" else TD_TMPL_INCREASE elif float(curr) < float(prev): curr += f" {ARROW_DOWN}" td_tmpl_curr = TD_TMPL_REDUCE # reduce is good -> mark in green, execpt for SNR for which it is bad -> mark in red td_tmpl_curr = TD_TMPL_INCREASE if c == "MIN_SSNR" else TD_TMPL_REDUCE except ValueError: # if we land here, one of the cells is not a number, this indicates a crash # or some error in the scripts, so mark with red as well Loading Loading @@ -258,7 +260,12 @@ def merge_and_cleanup_mld_reports( for col_pair in other_col_pairs: col_prev = col_pair[0] col_curr = col_pair[1] try: diff_other += abs(float(x[col_curr]) - float(x[col_prev])) except ValueError: # can't make float from the column contents, probably NONE -> put to top diff_other += float("inf") if diff_other > 0: diff = -1000000 Loading
ci/complexity_measurements/check_for_changes.py +20 −3 Original line number Diff line number Diff line Loading @@ -26,10 +26,27 @@ def check_linewise_logfile(filepath, cols): contents = [line for line in csv.reader(f, delimiter=" ")] curr = contents[-1] try: prev = contents[-2] except IndexError: # this is for handling first runs of new complexity jobs -> only one line present # do not report any changes then prev = curr change_ratios = [abs(float(curr[i]) / float(prev[i]) - 1) > THRESH for i in cols] changes_found = any(change_ratios) changes_found = False for c in cols: if curr[c] == prev[c]: abs_perc_change = 0 else: try: abs_perc_change = abs(float(curr[c]) / float(prev[c]) - 1) except ZeroDivisionError: # in some cases, such as missing instrumentation, values can be zero, so catch that here # from the first if we know that curr can not be 0 too -> report change abs_perc_change = THRESH + 1 if abs_perc_change > THRESH: changes_found = True break if changes_found: print("Previous log line:", prev) Loading
ci/complexity_measurements/getWmops.sh +1 −1 Original line number Diff line number Diff line Loading @@ -35,7 +35,7 @@ if [ $# -ne 2 ]; then fi ivas_format=$1 output_format=$2 output_format="$2" date=`date +%Y%m%d` # used for log-file file ending shortDate=`date "+%b %d" | sed -e "s/\ /_/g"` # stored in the log-file Loading