From f0e20c4fe0ca4c6885a7fb830cf1f88f3dd6a215 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Mon, 24 Nov 2025 17:16:19 +0100 Subject: [PATCH 01/18] move complexity CI code to separate file --- includes/complexity-jobs.yml | 458 ++++++++++++++++++++++++++++++++ includes/default-variables.yml | 2 + main-basop.yml | 465 +-------------------------------- 3 files changed, 461 insertions(+), 464 deletions(-) create mode 100644 includes/complexity-jobs.yml diff --git a/includes/complexity-jobs.yml b/includes/complexity-jobs.yml new file mode 100644 index 0000000..41df62e --- /dev/null +++ b/includes/complexity-jobs.yml @@ -0,0 +1,458 @@ +# --------------------------------------------------------------- +# Complexity measurement jobs +# --------------------------------------------------------------- + +# create necessary environment +.complexity-measurements-setup: + &complexity-measurements-setup + ### 1. part: this is boilerplate code to make the gitlab pages presentation work + - mkdir -p wmops/logs + + - job_id=$(python3 ci/get_id_of_last_job_occurence.py $CI_COMMIT_REF_NAME $CI_JOB_NAME $CI_PROJECT_ID) + - echo $job_id + + # this is a testing/maintenance mechanism to force getting the log history from a specific job id + # see below in the concrete complexity jobs + - if [ "$JOB_ID_INJECT" != "" ]; then job_id=$JOB_ID_INJECT; fi + + - curl --silent --show-error --request GET "$CI_API_V4_URL/projects/$CI_PROJECT_ID/jobs/$job_id/artifacts" --output artifacts.zip + - unzip -qq artifacts.zip || true # this may fail on first run, when there are no artifacts there and the zip file is actually just "404"-html + - public_dir="$CI_JOB_NAME-public" + + # if is needed to catch case when no artifact is there (first run), similarly as above + # 1. check for public_dir being there as this might not be the case when artifact download failed + # 2. check for public dir not being empty - handle job failures in prev job that happen after the dir is created. In that case, the empty dir is in the artifacts + - if [ -d $public_dir ] && [ ! -z "$( ls -A $public_dir )" ]; then + - mv $public_dir/* wmops/ + # check here if we have the split-by-levels files present - if not, fake them up with the existing global one + # this is needed for the first run with split graphs on a branch where the global version did run previously + # NOTE: checking only for level_1 file here as this should already be sufficient + # NOTE2: also not chechking for RAM for same reason + - wmops_all_global="wmops/log_wmops_all.txt" + - ram_all_global="wmops/log_ram_all.txt" + - if [ -f "${wmops_all_global}" ] && [ ! -f "wmops/log_wmops_all_level_1.txt" ]; then + - declare -a suffixes=("level_1" "level_2" "level_3" "rate_sw") + - for suffix in "${suffixes[@]}"; do + - cp ${wmops_all_global} wmops/log_wmops_all_${suffix}.txt + - cp ${ram_all_global} wmops/log_ram_all_${suffix}.txt + - done + - fi + - fi + + - rm artifacts.zip + - rm -rf $public_dir + + ### 1.5.part: get the corresponding measurement from ivas-float-update + # only do this on main and not for the complexity meaurements run on ivas-float-update + - if [ "$CI_PROJECT_ID" == "$PROJECT_ID_BASOP" ]; then + - if [ "$CI_COMMIT_REF_NAME" == "main" ]; then + - job_id=$(python3 ci/get_id_of_last_job_occurence.py $FLOAT_REF_BRANCH $CI_JOB_NAME $CI_PROJECT_ID) + - echo $job_id + - curl --silent --show-error --request GET "$CI_API_V4_URL/projects/$CI_PROJECT_ID/jobs/$job_id/artifacts" --output artifacts_ref.zip + - unzip -qq -j artifacts_ref.zip "*latest_WMOPS.csv" || true + # add file to arguments only if the artifact could be retrieved to prevent error later. + - if [ -f latest_WMOPS.csv ]; then GET_WMOPS_ARGS="$GET_WMOPS_ARGS latest_WMOPS.csv"; fi + - fi + - fi + + # prepare artifacts -> move to public directory +.complexity-measurements-prepare-artifacts: + &complexity-measurements-prepare-artifacts + - public_dir="$CI_JOB_NAME-public" + - mkdir $public_dir + - mv -f wmops/log_*_all*.txt ./*.js ${public_dir}/ + # move logfiles for links + - mkdir $public_dir/logs + # first move logs + - log_files=$(cat $public_dir/graphs*.js | grep logFile | sed "s/.*\(wmops_newsletter_.*\.csv\).*/\1/g") + - for f in $log_files; do [ -f wmops/logs/$f ] && mv wmops/logs/$f $public_dir/logs/$f; done + # TODO: adapt to new float ref + - if [ "$CI_COMMIT_REF_NAME" == "ivas-float-update" ]; then mv wmops/logs/latest_WMOPS.csv $public_dir/logs/; fi + # copy index page blueprint + - cp ci/complexity_measurements/index_complexity.html ${public_dir}/index.html + # patch the format in the title + - sed -i "s/IVAS FORMAT/IVAS $in_format to $out_format/g" ${public_dir}/index.html + # do separately here to avoid overwrite complaints by mv + - mv -f ci/complexity_measurements/style.css ${public_dir}/ + +.complexity-measurements-report-summary: &complexity-measurements-report-summary + - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/basop/print-results-banner.sh + - if [ $ret_val -eq 0 ]; then + - echo -e "No crashes occured.\nNo changes in complexity or memory usage (>1%) detected." + - elif [ $ret_val -eq 123 ]; then + - echo -e "Changes in complexity or memory usage (>1%) detected!!!\nNo crashes occured." + - else + - echo -e "Something went wrong in running the codec. Likely some modes were crashing." + - fi + +.complexity-template: + extends: + - .test-job-linux + tags: + # TODO: align runner tags between projects + - ivas-linux-fast + timeout: 3 hours 30 minutes + stage: test + variables: + ret_val: 0 + GET_WMOPS_ARGS: "" + before_script: + - !reference [.job-linux, before_script] + - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh + - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/update-ltv-repo.sh + - | + if [ "$CI_PROJECT_ID" == "$PROJECT_ID_BASOP" ]; then + bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/basop/update-scripts-repo.sh + GET_WMOPS_ARGS="mem_only" + fi + + # delete previous jobs logfiles if present (-f flag ensures return calue of 0 even in first run where this folder is not present) + - rm -rf COMPLEXITY/logs + + - *complexity-measurements-setup + allow_failure: + exit_codes: + - 123 + artifacts: + name: "$CI_JOB_NAME--$CI_COMMIT_REF_NAME--sha-$CI_COMMIT_SHA" + when: always + expire_in: 2 week + paths: + - $CI_JOB_NAME-public + - COMPLEXITY/logs + +complexity-stereo-in-ext-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + variables: + JOB_ID_INJECT: "" + script: + - in_format=stereo + - out_format=ext + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-ism-in-binaural-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 1 hour + variables: + JOB_ID_INJECT: "" + script: + - in_format=ISM + - out_format=BINAURAL + - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-ism-in-binaural_room_ir-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 2 hours + variables: + JOB_ID_INJECT: "" + script: + - in_format=ISM + - out_format=BINAURAL_ROOM_IR + - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-ism-in-ext-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 3 hours + variables: + JOB_ID_INJECT: "" + script: + - in_format=ISM + - out_format=EXT + - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-sba-hoa3-in-ext-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 4 hours 30 minutes + script: + - in_format=HOA3 + - out_format=EXT + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-sba-hoa3-in-binaural-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 5 hours 30 minutes + variables: + JOB_ID_INJECT: "" + script: + - in_format=HOA3 + - out_format=BINAURAL + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-sba-hoa3-in-binaural_room_ir-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 6 hours 30 minutes + variables: + JOB_ID_INJECT: "" + script: + - in_format=HOA3 + - out_format=BINAURAL_ROOM_IR + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-mc-in-ext-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 7 hours 30 minutes + variables: + JOB_ID_INJECT: "" + script: + - in_format=MC + - out_format=EXT + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-mc-in-binaural-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 10 hours + variables: + JOB_ID_INJECT: "" + script: + - in_format=MC + - out_format=BINAURAL + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-mc-in-binaural_room_ir-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 12 hours 30 minutes + variables: + JOB_ID_INJECT: "" + script: + - in_format=MC + - out_format=BINAURAL_ROOM_IR + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-masa-in-ext-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 15 hours + variables: + JOB_ID_INJECT: "" + script: + - in_format=MASA + - out_format=EXT + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-masa-in-binaural-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 16 hours + variables: + JOB_ID_INJECT: "" + script: + - in_format=MASA + - out_format=BINAURAL + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-masa-in-hoa3-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 17 hours + variables: + JOB_ID_INJECT: "" + script: + - in_format=MASA + - out_format=HOA3 + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-omasa-in-ext-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 18 hours + variables: + JOB_ID_INJECT: "" + script: + - in_format=OMASA + - out_format=EXT + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-omasa-in-binaural-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 20 hours + variables: + JOB_ID_INJECT: "" + script: + - in_format=OMASA + - out_format=BINAURAL + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-omasa-in-hoa3-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 22 hours + variables: + JOB_ID_INJECT: "" + script: + - in_format=OMASA + - out_format=HOA3 + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-StereoDmxEVS-stereo-in-mono-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 24 hours + variables: + JOB_ID_INJECT: "" + script: + - in_format=StereoDmxEVS + - out_format=mono + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-osba-in-ext-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 25 hours + variables: + JOB_ID_INJECT: "" + script: + - in_format=OSBA + - out_format=EXT + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-osba-in-binaural-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 28 hours + variables: + JOB_ID_INJECT: "" + script: + - in_format=OSBA + - out_format=BINAURAL + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val + +complexity-osba-in-binaural_room_ir-out: + extends: + - .complexity-template + rules: + - if: $MEASURE_COMPLEXITY_LINUX + when: delayed + start_in: 31 hours + variables: + JOB_ID_INJECT: "" + script: + - in_format=OSBA + - out_format=BINAURAL_ROOM_IR + - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? + - *complexity-measurements-prepare-artifacts + - *complexity-measurements-report-summary + - exit $ret_val diff --git a/includes/default-variables.yml b/includes/default-variables.yml index 2774c57..e7f388b 100644 --- a/includes/default-variables.yml +++ b/includes/default-variables.yml @@ -15,3 +15,5 @@ variables: PYTEST_ADDOPTS: "" # overwrite this via .gitlab/variables.yml in the respective other repo to disable "(model from file)" testcases DISABLE_HRTF: "false" + PROJECT_ID_FLOAT: "49" + PROJECT_ID_BASOP: "77" diff --git a/main-basop.yml b/main-basop.yml index 7053cf3..d8b846a 100644 --- a/main-basop.yml +++ b/main-basop.yml @@ -1,6 +1,7 @@ include: - local: main.yml - local: includes/basop-default-variables.yml + - local: includes/complexity-jobs.yml stages: - .pre @@ -2716,470 +2717,6 @@ backup-long-term-job-logs: - exit 1 - fi - -# --------------------------------------------------------------- -# Complexity measurement jobs -# --------------------------------------------------------------- - -# create necessary environment -.complexity-measurements-setup: &complexity-measurements-setup - ### 1. part: mainly same as in float repo - this is boilerplate code to make the gitlab pages presentation work - - mkdir -p wmops/logs - - - job_id=$(python3 ci/get_id_of_last_job_occurence.py $CI_COMMIT_REF_NAME $CI_JOB_NAME $CI_PROJECT_ID) - - echo $job_id - # this is a testing/maintenance mechanism to force getting the log history from a specific job id - # see below in the concrete complexity jobs - - if [ "$JOB_ID_INJECT" != "" ]; then job_id=$JOB_ID_INJECT; fi - - curl --silent --show-error --request GET "$CI_API_V4_URL/projects/$CI_PROJECT_ID/jobs/$job_id/artifacts" --output artifacts.zip - - unzip -qq artifacts.zip || true # this may fail on first run, when there are no artifacts there and the zip file is actually just "404"-html - - public_dir="$CI_JOB_NAME-public" - - # if is needed to catch case when no artifact is there (first run), similarly as above - # 1. check for public_dir being there as this might not be the case when artifact download failed - # 2. check for public dir not being empty - handle job failures in prev job that happen after the dir is created. In that case, the empty dir is in the artifacts - - if [ -d $public_dir ] && [ ! -z "$( ls -A $public_dir )" ]; then - - mv $public_dir/* wmops/ - # check here if we have the split-by-levels files present - if not, fake them up with the existing global one - # this is needed for the first run with split graphs on a branch where the global version did run previously - # NOTE: checking only for level_1 file here as this should already be sufficient - # NOTE2: also not chechking for RAM for same reason - - wmops_all_global="wmops/log_wmops_all.txt" - - ram_all_global="wmops/log_ram_all.txt" - - if [ -f "${wmops_all_global}" ] && [ ! -f "wmops/log_wmops_all_level_1.txt" ]; then - - declare -a suffixes=("level_1" "level_2" "level_3" "rate_sw") - - for suffix in "${suffixes[@]}"; do - - cp ${wmops_all_global} wmops/log_wmops_all_${suffix}.txt - - cp ${ram_all_global} wmops/log_ram_all_${suffix}.txt - - done - - fi - - fi - - - rm artifacts.zip - - rm -rf $public_dir - - ### 1.5.part: get the corresponding measurement from ivas-float-update - # only do this on main and not for the complexity meaurements run on ivas-float-update - - if [ "$CI_COMMIT_REF_NAME" == "main" ]; then - - job_id=$(python3 ci/get_id_of_last_job_occurence.py $FLOAT_REF_BRANCH $CI_JOB_NAME $CI_PROJECT_ID) - - echo $job_id - - curl --silent --show-error --request GET "$CI_API_V4_URL/projects/$CI_PROJECT_ID/jobs/$job_id/artifacts" --output artifacts_ref.zip - - unzip -qq -j artifacts_ref.zip "*latest_WMOPS.csv" || true - # add file to arguments only if the artifact could be retrieved to prevent error later. - - if [ -f latest_WMOPS.csv ]; then GET_WMOPS_ARGS="$GET_WMOPS_ARGS latest_WMOPS.csv"; fi - - fi - -# prepare artifacts -> move to public directory -.complexity-measurements-prepare-artifacts: &complexity-measurements-prepare-artifacts - - public_dir="$CI_JOB_NAME-public" - - mkdir $public_dir - - mv -f wmops/log_*_all*.txt ./*.js ${public_dir}/ - # move logfiles for links - - mkdir $public_dir/logs - # first move logs - - log_files=$(cat $public_dir/graphs*.js | grep logFile | sed "s/.*\(wmops_newsletter_.*\.csv\).*/\1/g") - - for f in $log_files; do [ -f wmops/logs/$f ] && mv wmops/logs/$f $public_dir/logs/$f; done - - if [ "$CI_COMMIT_REF_NAME" == "$FLOAT_REF_BRANCH" ]; then mv wmops/logs/latest_WMOPS.csv $public_dir/logs/; fi - # copy index page blueprint - - cp ci/complexity_measurements/index_complexity.html ${public_dir}/index.html - # patch the format in the title - - sed -i "s/IVAS FORMAT/IVAS $in_format to $out_format/g" ${public_dir}/index.html - # do separately here to avoid overwrite complaints by mv - - mv -f ci/complexity_measurements/style.css ${public_dir}/ - -.complexity-measurements-report-summary: &complexity-measurements-report-summary - - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/basop/print-results-banner.sh - - if [ $ret_val -eq 0 ]; then - - echo -e "No crashes occured.\nNo changes in complexity or memory usage (>1%) detected." - - elif [ $ret_val -eq 123 ]; then - - echo -e "Changes in complexity or memory usage (>1%) detected!!!\nNo crashes occured." - - else - - echo -e "Something went wrong in running the codec. Likely some modes were crashing." - - fi - -.complexity-template: - extends: - - .test-job-linux - stage: test - variables: - ret_val: 0 - GET_WMOPS_ARGS: "mem_only" - timeout: 3 hours 30 minutes - before_script: - - !reference [ .test-job-linux, before_script ] - - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh - - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/basop/update-scripts-repo.sh - - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/update-ltv-repo.sh - - *complexity-measurements-setup - # delete previous jobs logfiles if present (-f flag ensures return calue of 0 even in first run where this folder is not present) - - rm -rf COMPLEXITY/logs - - if [ "$CI_COMMIT_REF_NAME" == "ivas-float-update" ]; then GET_WMOPS_ARGS=""; fi - allow_failure: - exit_codes: - - 123 - artifacts: - name: "$CI_JOB_NAME--$CI_COMMIT_REF_NAME--sha-$CI_COMMIT_SHA" - when: always - expire_in: 2 week - paths: - - $CI_JOB_NAME-public - - COMPLEXITY/logs - -complexity-stereo-in-stereo-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - variables: - JOB_ID_INJECT: "" - script: - - in_format=stereo - - out_format=stereo - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-ism-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 1 hour - variables: - JOB_ID_INJECT: "" - script: - - in_format=ISM - - out_format=BINAURAL - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-ism-in-binaural_room_ir-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 2 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=ISM - - out_format=BINAURAL_ROOM_IR - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-ism-in-ext-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 3 hours 30 minutes - variables: - JOB_ID_INJECT: "" - 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" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-sba-hoa3-in-hoa3-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 4 hours 30 minutes - variables: - JOB_ID_INJECT: "" - script: - - in_format=HOA3 - - out_format=HOA3 - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-sba-hoa3-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 5 hours 30 minutes - variables: - JOB_ID_INJECT: "" - script: - - in_format=HOA3 - - out_format=BINAURAL - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-sba-hoa3-in-binaural_room_ir-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 6 hours 30 minutes - variables: - JOB_ID_INJECT: "" - script: - - in_format=HOA3 - - out_format=BINAURAL_ROOM_IR - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-mc-in-7_1_4-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 7 hours 30 minutes - variables: - JOB_ID_INJECT: "" - script: - - in_format=MC - - out_format=7_1_4 - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-mc-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 10 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=MC - - out_format=BINAURAL - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-mc-in-binaural_room_ir-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 12 hours 30 minutes - variables: - JOB_ID_INJECT: "" - script: - - in_format=MC - - out_format=BINAURAL_ROOM_IR - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-masa-in-ext-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 15 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=MASA - - out_format=EXT - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-masa-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 16 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=MASA - - out_format=BINAURAL - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-masa-in-hoa3-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 17 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=MASA - - out_format=HOA3 - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -# complexity-omasa-in-ext-out: -# extends: -# - .complexity-template -# rules: -# - if: $MEASURE_COMPLEXITY_LINUX -# when: delayed -# start_in: 13 hours - # variables: - # JOB_ID_INJECT: "" -# script: -# - in_format=OMASA -# - out_format=EXT -# - ret_val=0 -# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? -# - *complexity-measurements-prepare-artifacts -# - *complexity-measurements-report-summary -# - exit $ret_val - -complexity-omasa-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 18 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=OMASA - - out_format=BINAURAL - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-omasa-in-hoa3-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 20 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=OMASA - - out_format=HOA3 - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-StereoDmxEVS-stereo-in-mono-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 22 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=StereoDmxEVS - - out_format=mono - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -# complexity-osba-in-ext-out: -# extends: -# - .complexity-template -# rules: -# - if: $MEASURE_COMPLEXITY_LINUX -# when: delayed -# start_in: 17 hours -# script: -# - in_format=OSBA -# - out_format=EXT -# - ret_val=0 -# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? -# - *complexity-measurements-prepare-artifacts -# - *complexity-measurements-report-summary -# - exit $ret_val - -complexity-osba-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 22 hours 30 minutes - variables: - JOB_ID_INJECT: "" - script: - - in_format=OSBA - - out_format=BINAURAL - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-osba-in-binaural_room_ir-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 25 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=OSBA - - out_format=BINAURAL_ROOM_IR - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - ivas-conformance-linux: extends: - .job-linux -- GitLab From 12da0a75ff6beffa8124b9d48074397288efaa4c Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 10:23:00 +0100 Subject: [PATCH 02/18] fix float ref complexity number collection --- includes/complexity-jobs.yml | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/includes/complexity-jobs.yml b/includes/complexity-jobs.yml index 41df62e..a605d57 100644 --- a/includes/complexity-jobs.yml +++ b/includes/complexity-jobs.yml @@ -43,16 +43,14 @@ - rm -rf $public_dir ### 1.5.part: get the corresponding measurement from ivas-float-update - # only do this on main and not for the complexity meaurements run on ivas-float-update + # only do this for ivas-basop - if [ "$CI_PROJECT_ID" == "$PROJECT_ID_BASOP" ]; then - - if [ "$CI_COMMIT_REF_NAME" == "main" ]; then - - job_id=$(python3 ci/get_id_of_last_job_occurence.py $FLOAT_REF_BRANCH $CI_JOB_NAME $CI_PROJECT_ID) - - echo $job_id - - curl --silent --show-error --request GET "$CI_API_V4_URL/projects/$CI_PROJECT_ID/jobs/$job_id/artifacts" --output artifacts_ref.zip - - unzip -qq -j artifacts_ref.zip "*latest_WMOPS.csv" || true + - job_id=$(python3 ci/get_id_of_last_job_occurence.py $FLOAT_REF_BRANCH $CI_JOB_NAME $CI_PROJECT_ID) + - echo $job_id + - curl --silent --show-error --request GET "$CI_API_V4_URL/projects/$CI_PROJECT_ID/jobs/$job_id/artifacts" --output artifacts_ref.zip + - unzip -qq -j artifacts_ref.zip "*latest_WMOPS.csv" || true # add file to arguments only if the artifact could be retrieved to prevent error later. - - if [ -f latest_WMOPS.csv ]; then GET_WMOPS_ARGS="$GET_WMOPS_ARGS latest_WMOPS.csv"; fi - - fi + - if [ -f latest_WMOPS.csv ]; then GET_WMOPS_ARGS="$GET_WMOPS_ARGS latest_WMOPS.csv"; fi - fi # prepare artifacts -> move to public directory -- GitLab From e0074a2ec917908baca3a5c691a4bc1761a93054 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 10:28:23 +0100 Subject: [PATCH 03/18] allow complexity measurement trigger via MANUAL_PL_TYPE --- includes/complexity-jobs.yml | 40 ++++++++++++++++++------------------ 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/includes/complexity-jobs.yml b/includes/complexity-jobs.yml index a605d57..92bb003 100644 --- a/includes/complexity-jobs.yml +++ b/includes/complexity-jobs.yml @@ -123,7 +123,7 @@ complexity-stereo-in-ext-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX variables: JOB_ID_INJECT: "" script: @@ -138,7 +138,7 @@ complexity-ism-in-binaural-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 1 hour variables: @@ -155,7 +155,7 @@ complexity-ism-in-binaural_room_ir-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 2 hours variables: @@ -172,7 +172,7 @@ complexity-ism-in-ext-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 3 hours variables: @@ -189,7 +189,7 @@ complexity-sba-hoa3-in-ext-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 4 hours 30 minutes script: @@ -204,7 +204,7 @@ complexity-sba-hoa3-in-binaural-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 5 hours 30 minutes variables: @@ -221,7 +221,7 @@ complexity-sba-hoa3-in-binaural_room_ir-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 6 hours 30 minutes variables: @@ -238,7 +238,7 @@ complexity-mc-in-ext-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 7 hours 30 minutes variables: @@ -255,7 +255,7 @@ complexity-mc-in-binaural-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 10 hours variables: @@ -272,7 +272,7 @@ complexity-mc-in-binaural_room_ir-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 12 hours 30 minutes variables: @@ -289,7 +289,7 @@ complexity-masa-in-ext-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 15 hours variables: @@ -306,7 +306,7 @@ complexity-masa-in-binaural-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 16 hours variables: @@ -323,7 +323,7 @@ complexity-masa-in-hoa3-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 17 hours variables: @@ -340,7 +340,7 @@ complexity-omasa-in-ext-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 18 hours variables: @@ -357,7 +357,7 @@ complexity-omasa-in-binaural-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 20 hours variables: @@ -374,7 +374,7 @@ complexity-omasa-in-hoa3-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 22 hours variables: @@ -391,7 +391,7 @@ complexity-StereoDmxEVS-stereo-in-mono-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 24 hours variables: @@ -408,7 +408,7 @@ complexity-osba-in-ext-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 25 hours variables: @@ -425,7 +425,7 @@ complexity-osba-in-binaural-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 28 hours variables: @@ -442,7 +442,7 @@ complexity-osba-in-binaural_room_ir-out: extends: - .complexity-template rules: - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: delayed start_in: 31 hours variables: -- GitLab From 3b18a0621ebf2ed17cbb5704d40b7fa0e2495381 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 10:35:03 +0100 Subject: [PATCH 04/18] use shared complexity job definitions for float --- main-float.yml | 376 +------------------------------------------------ 1 file changed, 1 insertion(+), 375 deletions(-) diff --git a/main-float.yml b/main-float.yml index f17b861..0260cb5 100644 --- a/main-float.yml +++ b/main-float.yml @@ -2,6 +2,7 @@ include: - local: main.yml - local: includes/default-variables-float.yml + - local: includes/complexity-jobs.yml stages: - .pre @@ -2348,381 +2349,6 @@ coverage-test-on-main-scheduled-ltv: - $COVERAGE_OUTPUT_FILE - $COVERAGE_OUTPUT_DIR -# --------------------------------------------------------------- -# Complexity measurement jobs -# --------------------------------------------------------------- - -.complexity-measurements-setup: - &complexity-measurements-setup # create necessary environment - - mkdir -p wmops/logs - - - job_id=$(python3 ci/get_id_of_last_job_occurence.py $CI_COMMIT_REF_NAME $CI_JOB_NAME $CI_PROJECT_ID) - - echo $job_id - - curl --silent --show-error --request GET "https://forge.3gpp.org/rep/api/v4/projects/$CI_PROJECT_ID/jobs/$job_id/artifacts" --output artifacts.zip - - unzip -qq artifacts.zip || true # this may fail on first run, when there are no artifacts there and the zip file is actually just "404"-html - - public_dir="$CI_JOB_NAME-public" - - # if is needed to catch case when no artifact is there (first run), similarly as above - # 1. check for public_dir being there as this might not be the case when artifact download failed - # 2. check for public dir not being empty - handle job failures in prev job that happen after the dir is created. In that case, the empty dir is in the artifacts - - if [ -d $public_dir ] && [ ! -z "$( ls -A $public_dir )" ]; then - - mv $public_dir/* wmops/ - # check here if we have the split-by-levels files present - if not, fake them up with the existing global one - # this is needed for the first run with split graphs on a branch where the global version did run previously - # NOTE: checking only for level_1 file here as this should already be sufficient - # NOTE2: also not chechking for RAM for same reason - - wmops_all_global="wmops/log_wmops_all.txt" - - ram_all_global="wmops/log_ram_all.txt" - - if [ -f "${wmops_all_global}" ] && [ ! -f "wmops/log_wmops_all_level_1.txt" ]; then - - declare -a suffixes=("level_1" "level_2" "level_3" "rate_sw") - - for suffix in "${suffixes[@]}"; do - - cp ${wmops_all_global} wmops/log_wmops_all_${suffix}.txt - - cp ${ram_all_global} wmops/log_ram_all_${suffix}.txt - - done - - fi - - fi - - - rm artifacts.zip - - rm -rf $public_dir - -.complexity-measurements-prepare-artifacts: - &complexity-measurements-prepare-artifacts # prepare artifacts -> move to public directory - - public_dir="$CI_JOB_NAME-public" - - mkdir $public_dir - - mv -f wmops/log_*_all*.txt ./*.js ${public_dir}/ - # move logfiles for links - - mkdir $public_dir/logs - # first move logs - - log_files=$(cat $public_dir/graphs*.js | grep logFile | sed "s/.*\(wmops_newsletter_.*\.csv\).*/\1/g") - - for f in $log_files; do [ -f wmops/logs/$f ] && mv wmops/logs/$f $public_dir/logs/$f; done - # copy index page blueprint - - cp ci/complexity_measurements/index_complexity.html ${public_dir}/index.html - # patch the format in the title - - sed -i "s/IVAS FORMAT/IVAS $in_format to $out_format/g" ${public_dir}/index.html - # do separately here to avoid overwrite complaints by mv - - mv -f ci/complexity_measurements/style.css ${public_dir}/ - -.complexity-template: - extends: - # still needed as long as no long MASA testvectors are there - - .test-job-linux-needs-testv-dir - tags: - - ivas-linux-fast - timeout: 3 hours 30 minutes - stage: test - before_script: - - !reference [.job-linux, before_script] - - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh - - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/update-ltv-repo.sh - - *complexity-measurements-setup - allow_failure: - exit_codes: - - 123 - artifacts: - name: "$CI_JOB_NAME--$CI_COMMIT_REF_NAME--sha-$CI_COMMIT_SHA" - when: always - expire_in: 1 week - paths: - - $CI_JOB_NAME-public - -complexity-stereo-in-ext-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - script: - - in_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: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 1 hour - script: - - in_format=ISM - - out_format=BINAURAL - - 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-ism-in-binaural_room_ir-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 2 hours - script: - - in_format=ISM - - 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-ism-in-ext-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 3 hours - 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: 4 hours - script: - - in_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-sba-hoa3-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 5 hours - script: - - in_format=HOA3 - - 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-sba-hoa3-in-binaural_room_ir-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 6 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: 7 hours - script: - - in_format=MC - - 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-binaural-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 8 hours - script: - - in_format=MC - - 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-mc-in-binaural_room_ir-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 9 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: 10 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: 11 hours - script: - - in_format=MASA - - 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-masa-in-hoa3-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 12 hours - script: - - in_format=MASA - - out_format=HOA3 - - 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: 13 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: 14 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 - - exit $ret_val - -complexity-omasa-in-hoa3-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 15 hours - script: - - in_format=OMASA - - out_format=HOA3 - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - - *complexity-measurements-prepare-artifacts - - exit $ret_val - -complexity-StereoDmxEVS-stereo-in-mono-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 16 hours - script: - - in_format=StereoDmxEVS - - out_format=mono - - ret_val=0 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - - *complexity-measurements-prepare-artifacts - - exit $ret_val - -complexity-osba-in-ext-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 17 hours - script: - - in_format=OSBA - - 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-osba-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 18 hours - script: - - in_format=OSBA - - 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-osba-in-binaural_room_ir-out: - extends: - - .complexity-template - rules: - - if: $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 19 hours - script: - - in_format=OSBA - - 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 - # --------------------------------------------------------------- # Other jobs # --------------------------------------------------------------- -- GitLab From b10bca8733eb464b1e3b40519c05717cea041e03 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 10:38:47 +0100 Subject: [PATCH 05/18] add coverage pipeline type for float --- includes/rules.yml | 3 +++ main-float.yml | 3 +++ 2 files changed, 6 insertions(+) diff --git a/includes/rules.yml b/includes/rules.yml index 0a58899..6e65278 100644 --- a/includes/rules.yml +++ b/includes/rules.yml @@ -19,6 +19,9 @@ when: never - if: $MANUAL_PIPELINE_TYPE == 'test-branch-vs-input-passthrough' when: never + - if: $CI_PIPELINE_SOURCE == 'web' && $MANUAL_PIPELINE_TYPE == 'complexity' + variables: + IVAS_PIPELINE_NAME: 'Complexity Measurement on $CI_COMMIT_BRANCH' - when: on_success .rules-merge-request-to-main: diff --git a/main-float.yml b/main-float.yml index 0260cb5..e06cab0 100644 --- a/main-float.yml +++ b/main-float.yml @@ -57,6 +57,9 @@ workflow: - if: $MANUAL_PIPELINE_TYPE == 'coverage' variables: IVAS_PIPELINE_NAME: "Coverage measurement" + - if: $CI_PIPELINE_SOURCE == 'web' && $MANUAL_PIPELINE_TYPE == 'complexity' + variables: + IVAS_PIPELINE_NAME: 'Complexity Measurement on $CI_COMMIT_BRANCH' # --------------------------------------------------------------- # Generic script anchors -- GitLab From a21f8b7ba766bf9a54a9857bdbc81d3db7023642 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 10:47:37 +0100 Subject: [PATCH 06/18] only stereo complexity job for easier testing --- includes/complexity-jobs.yml | 640 +++++++++++++++++------------------ 1 file changed, 320 insertions(+), 320 deletions(-) diff --git a/includes/complexity-jobs.yml b/includes/complexity-jobs.yml index 92bb003..bfb71c2 100644 --- a/includes/complexity-jobs.yml +++ b/includes/complexity-jobs.yml @@ -134,323 +134,323 @@ complexity-stereo-in-ext-out: - *complexity-measurements-report-summary - exit $ret_val -complexity-ism-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 1 hour - variables: - JOB_ID_INJECT: "" - script: - - in_format=ISM - - out_format=BINAURAL - - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-ism-in-binaural_room_ir-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 2 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=ISM - - out_format=BINAURAL_ROOM_IR - - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-ism-in-ext-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 3 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=ISM - - out_format=EXT - - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-sba-hoa3-in-ext-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 4 hours 30 minutes - script: - - in_format=HOA3 - - out_format=EXT - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-sba-hoa3-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 5 hours 30 minutes - variables: - JOB_ID_INJECT: "" - script: - - in_format=HOA3 - - out_format=BINAURAL - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-sba-hoa3-in-binaural_room_ir-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 6 hours 30 minutes - variables: - JOB_ID_INJECT: "" - script: - - in_format=HOA3 - - out_format=BINAURAL_ROOM_IR - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-mc-in-ext-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 7 hours 30 minutes - variables: - JOB_ID_INJECT: "" - script: - - in_format=MC - - out_format=EXT - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-mc-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 10 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=MC - - out_format=BINAURAL - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-mc-in-binaural_room_ir-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 12 hours 30 minutes - variables: - JOB_ID_INJECT: "" - script: - - in_format=MC - - out_format=BINAURAL_ROOM_IR - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-masa-in-ext-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 15 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=MASA - - out_format=EXT - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-masa-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 16 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=MASA - - out_format=BINAURAL - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-masa-in-hoa3-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 17 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=MASA - - out_format=HOA3 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-omasa-in-ext-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 18 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=OMASA - - out_format=EXT - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-omasa-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 20 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=OMASA - - out_format=BINAURAL - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-omasa-in-hoa3-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 22 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=OMASA - - out_format=HOA3 - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-StereoDmxEVS-stereo-in-mono-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 24 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=StereoDmxEVS - - out_format=mono - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-osba-in-ext-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 25 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=OSBA - - out_format=EXT - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-osba-in-binaural-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 28 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=OSBA - - out_format=BINAURAL - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val - -complexity-osba-in-binaural_room_ir-out: - extends: - - .complexity-template - rules: - - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX - when: delayed - start_in: 31 hours - variables: - JOB_ID_INJECT: "" - script: - - in_format=OSBA - - out_format=BINAURAL_ROOM_IR - - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? - - *complexity-measurements-prepare-artifacts - - *complexity-measurements-report-summary - - exit $ret_val +# complexity-ism-in-binaural-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 1 hour +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=ISM +# - out_format=BINAURAL +# - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-ism-in-binaural_room_ir-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 2 hours +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=ISM +# - out_format=BINAURAL_ROOM_IR +# - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-ism-in-ext-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 3 hours +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=ISM +# - out_format=EXT +# - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-sba-hoa3-in-ext-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 4 hours 30 minutes +# script: +# - in_format=HOA3 +# - out_format=EXT +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-sba-hoa3-in-binaural-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 5 hours 30 minutes +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=HOA3 +# - out_format=BINAURAL +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-sba-hoa3-in-binaural_room_ir-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 6 hours 30 minutes +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=HOA3 +# - out_format=BINAURAL_ROOM_IR +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-mc-in-ext-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 7 hours 30 minutes +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=MC +# - out_format=EXT +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-mc-in-binaural-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 10 hours +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=MC +# - out_format=BINAURAL +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-mc-in-binaural_room_ir-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 12 hours 30 minutes +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=MC +# - out_format=BINAURAL_ROOM_IR +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-masa-in-ext-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 15 hours +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=MASA +# - out_format=EXT +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-masa-in-binaural-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 16 hours +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=MASA +# - out_format=BINAURAL +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-masa-in-hoa3-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 17 hours +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=MASA +# - out_format=HOA3 +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-omasa-in-ext-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 18 hours +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=OMASA +# - out_format=EXT +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-omasa-in-binaural-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 20 hours +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=OMASA +# - out_format=BINAURAL +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-omasa-in-hoa3-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 22 hours +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=OMASA +# - out_format=HOA3 +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-StereoDmxEVS-stereo-in-mono-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 24 hours +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=StereoDmxEVS +# - out_format=mono +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-osba-in-ext-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 25 hours +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=OSBA +# - out_format=EXT +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-osba-in-binaural-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 28 hours +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=OSBA +# - out_format=BINAURAL +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val +# +# complexity-osba-in-binaural_room_ir-out: +# extends: +# - .complexity-template +# rules: +# - if: $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX +# when: delayed +# start_in: 31 hours +# variables: +# JOB_ID_INJECT: "" +# script: +# - in_format=OSBA +# - out_format=BINAURAL_ROOM_IR +# - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" $GET_WMOPS_ARGS || ret_val=$? +# - *complexity-measurements-prepare-artifacts +# - *complexity-measurements-report-summary +# - exit $ret_val -- GitLab From 31c3f19a707fafe56395ac78fcb6d0aa4a562386 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 10:55:36 +0100 Subject: [PATCH 07/18] [revert me] change branch for CI scripts --- includes/default-variables.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/includes/default-variables.yml b/includes/default-variables.yml index d72bce4..022e616 100644 --- a/includes/default-variables.yml +++ b/includes/default-variables.yml @@ -12,7 +12,7 @@ variables: SCALE_FACTOR: "3.162" PYTEST_ADDOPTS: "" # this contains the name of the branch in ivas-codec repo that is used to copy the ci scripts from - BASOP_CI_SCRIPTS_BRANCH: "main" + BASOP_CI_SCRIPTS_BRANCH: "kiene/ci-test-complexity-jobs-unification" # overwrite this via .gitlab-ci.yml in the respective other repo to disable "(model from file)" testcases DISABLE_HRTF: "false" PROJECT_ID_FLOAT: "49" -- GitLab From b289771e103272a2649a4ce96773f3cc7eeff90a Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 11:02:28 +0100 Subject: [PATCH 08/18] fix project id for getting float numbers --- includes/complexity-jobs.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/includes/complexity-jobs.yml b/includes/complexity-jobs.yml index bfb71c2..3f8b984 100644 --- a/includes/complexity-jobs.yml +++ b/includes/complexity-jobs.yml @@ -45,7 +45,7 @@ ### 1.5.part: get the corresponding measurement from ivas-float-update # only do this for ivas-basop - if [ "$CI_PROJECT_ID" == "$PROJECT_ID_BASOP" ]; then - - job_id=$(python3 ci/get_id_of_last_job_occurence.py $FLOAT_REF_BRANCH $CI_JOB_NAME $CI_PROJECT_ID) + - job_id=$(python3 ci/get_id_of_last_job_occurence.py $FLOAT_REF_BRANCH $CI_JOB_NAME $PROJECT_ID_FLOAT) - echo $job_id - curl --silent --show-error --request GET "$CI_API_V4_URL/projects/$CI_PROJECT_ID/jobs/$job_id/artifacts" --output artifacts_ref.zip - unzip -qq -j artifacts_ref.zip "*latest_WMOPS.csv" || true @@ -107,6 +107,7 @@ # delete previous jobs logfiles if present (-f flag ensures return calue of 0 even in first run where this folder is not present) - rm -rf COMPLEXITY/logs + - set -euxo pipefail - *complexity-measurements-setup allow_failure: exit_codes: -- GitLab From 5f905cb4fe805a318aad6911fe3c181b4c114ba9 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 11:05:49 +0100 Subject: [PATCH 09/18] fix build job trigger for BASOP complexity pls --- main-basop.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/main-basop.yml b/main-basop.yml index f2ee06f..97cd53a 100644 --- a/main-basop.yml +++ b/main-basop.yml @@ -952,7 +952,7 @@ pytest-to-ref-pre: # ensure that codec builds on linux build-codec-linux-make: rules: - - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'ivas-conformance-linux' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $UPDATE_PAGES + - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'ivas-conformance-linux' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $UPDATE_PAGES || $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: never - if: $CI_PIPELINE_SOURCE == 'web' - if: $CI_PIPELINE_SOURCE == 'push' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH @@ -995,7 +995,7 @@ build-codec-linux-instrumented-make: when: never - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $UPDATE_PAGES when: never - - if: $MEASURE_COMPLEXITY_LINUX + - if: $MEASURE_COMPLEXITY_LINUX || $MANUAL_PIPELINE_TYPE == 'complexity' - if: $CI_PIPELINE_SOURCE == 'push' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH - if: $CI_PIPELINE_SOURCE == 'merge_request_event' - if: $CI_PIPELINE_SOURCE == 'push' @@ -1057,7 +1057,7 @@ build-codec-linux-debugging-make: build-codec-windows-msbuild: rules: - - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $MANUAL_PIPELINE_TYPE == 'ivas-conformance-linux' || $UPDATE_PAGES + - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $MANUAL_PIPELINE_TYPE == 'ivas-conformance-linux' || $UPDATE_PAGES || $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: never - if: $CI_PIPELINE_SOURCE == 'web' - if: $CI_PIPELINE_SOURCE == 'push' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH -- GitLab From 456b67bb4125b1f940ffe1749bd48f24f6958760 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 11:47:59 +0100 Subject: [PATCH 10/18] fix branch for getting the float numbers from --- includes/complexity-jobs.yml | 3 ++- includes/default-variables-basop.yml | 1 - main-basop.yml | 8 ++------ 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/includes/complexity-jobs.yml b/includes/complexity-jobs.yml index 3f8b984..b487b78 100644 --- a/includes/complexity-jobs.yml +++ b/includes/complexity-jobs.yml @@ -45,7 +45,8 @@ ### 1.5.part: get the corresponding measurement from ivas-float-update # only do this for ivas-basop - if [ "$CI_PROJECT_ID" == "$PROJECT_ID_BASOP" ]; then - - job_id=$(python3 ci/get_id_of_last_job_occurence.py $FLOAT_REF_BRANCH $CI_JOB_NAME $PROJECT_ID_FLOAT) + - # find id of same name job in float repo on branch main + - job_id=$(python3 ci/get_id_of_last_job_occurence.py main $CI_JOB_NAME $PROJECT_ID_FLOAT) - echo $job_id - curl --silent --show-error --request GET "$CI_API_V4_URL/projects/$CI_PROJECT_ID/jobs/$job_id/artifacts" --output artifacts_ref.zip - unzip -qq -j artifacts_ref.zip "*latest_WMOPS.csv" || true diff --git a/includes/default-variables-basop.yml b/includes/default-variables-basop.yml index 235c96c..e9aee3e 100644 --- a/includes/default-variables-basop.yml +++ b/includes/default-variables-basop.yml @@ -1,7 +1,6 @@ variables: EVS_BE_TEST_DIR_BASOP: "/usr/local/be_2_evs_basop" # TODO: cleanup and use global var defined in ivas-codec-ci - FLOAT_REF_BRANCH: "ivas-float-update" FLOAT_REF_BRANCH_MERGE_SOURCE: "" SCRIPTS_DIR: "/usr/local/scripts" LONG_TEST_SUITE: "tests/codec_be_on_mr_nonselection tests/renderer --param_file scripts/config/self_test_ltv.prm --use_ltv" diff --git a/main-basop.yml b/main-basop.yml index 97cd53a..6d2a67d 100644 --- a/main-basop.yml +++ b/main-basop.yml @@ -1643,13 +1643,9 @@ lc3-wrapper-unit-test: - cmake -B cmake-build -G "Unix Makefiles" -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true - cmake --build cmake-build -- -j - - echo "Assuming here that you either merge to main or to $FLOAT_REF_BRANCH." + - echo "Assuming here that you merge to main." - echo "If you have some other merge target, this might fail and manual fiddling is needed." - - if [ "$CI_MERGE_REQUEST_TARGET_BRANCH_NAME" == "$FLOAT_REF_BRANCH" ]; then - - scripts/split_rendering/lc3plus_float/ivas_lc3plus_unit_test - - else - - scripts/split_rendering/lc3plus_basop/ivas_lc3plus_unit_test - - fi + - scripts/split_rendering/lc3plus_basop/ivas_lc3plus_unit_test # from float # test renderer executable -- GitLab From ac2f25b0230f6a1debcd1530aacb3b08734fc83f Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 12:00:14 +0100 Subject: [PATCH 11/18] fix rules in build jobs weird unicode symbol instead of whitespace --- main-basop.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/main-basop.yml b/main-basop.yml index 6d2a67d..319d2c9 100644 --- a/main-basop.yml +++ b/main-basop.yml @@ -952,7 +952,7 @@ pytest-to-ref-pre: # ensure that codec builds on linux build-codec-linux-make: rules: - - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'ivas-conformance-linux' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $UPDATE_PAGES || $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'ivas-conformance-linux' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $UPDATE_PAGES || $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: never - if: $CI_PIPELINE_SOURCE == 'web' - if: $CI_PIPELINE_SOURCE == 'push' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH @@ -995,7 +995,7 @@ build-codec-linux-instrumented-make: when: never - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $UPDATE_PAGES when: never - - if: $MEASURE_COMPLEXITY_LINUX || $MANUAL_PIPELINE_TYPE == 'complexity' + - if: $MEASURE_COMPLEXITY_LINUX || $MANUAL_PIPELINE_TYPE == 'complexity' - if: $CI_PIPELINE_SOURCE == 'push' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH - if: $CI_PIPELINE_SOURCE == 'merge_request_event' - if: $CI_PIPELINE_SOURCE == 'push' @@ -1057,7 +1057,7 @@ build-codec-linux-debugging-make: build-codec-windows-msbuild: rules: - - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $MANUAL_PIPELINE_TYPE == 'ivas-conformance-linux' || $UPDATE_PAGES || $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX + - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $MANUAL_PIPELINE_TYPE == 'ivas-conformance-linux' || $UPDATE_PAGES || $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX when: never - if: $CI_PIPELINE_SOURCE == 'web' - if: $CI_PIPELINE_SOURCE == 'push' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH -- GitLab From cc663a1bf9a8aa4a61a27f488d8f1513e2ab30dd Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 12:02:52 +0100 Subject: [PATCH 12/18] try yaml comment instead of bash comment --- includes/complexity-jobs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/includes/complexity-jobs.yml b/includes/complexity-jobs.yml index b487b78..cfa553b 100644 --- a/includes/complexity-jobs.yml +++ b/includes/complexity-jobs.yml @@ -45,7 +45,7 @@ ### 1.5.part: get the corresponding measurement from ivas-float-update # only do this for ivas-basop - if [ "$CI_PROJECT_ID" == "$PROJECT_ID_BASOP" ]; then - - # find id of same name job in float repo on branch main + # find id of same name job in float repo on branch main - job_id=$(python3 ci/get_id_of_last_job_occurence.py main $CI_JOB_NAME $PROJECT_ID_FLOAT) - echo $job_id - curl --silent --show-error --request GET "$CI_API_V4_URL/projects/$CI_PROJECT_ID/jobs/$job_id/artifacts" --output artifacts_ref.zip -- GitLab From 3d986bf321dc819b2da28dbaec8fa9674f0b68b3 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 12:20:40 +0100 Subject: [PATCH 13/18] fix curl URL --- includes/complexity-jobs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/includes/complexity-jobs.yml b/includes/complexity-jobs.yml index cfa553b..eed8acf 100644 --- a/includes/complexity-jobs.yml +++ b/includes/complexity-jobs.yml @@ -48,7 +48,7 @@ # find id of same name job in float repo on branch main - job_id=$(python3 ci/get_id_of_last_job_occurence.py main $CI_JOB_NAME $PROJECT_ID_FLOAT) - echo $job_id - - curl --silent --show-error --request GET "$CI_API_V4_URL/projects/$CI_PROJECT_ID/jobs/$job_id/artifacts" --output artifacts_ref.zip + - curl --silent --show-error --request GET "$CI_API_V4_URL/projects/$PROJECT_ID_FLOAT/jobs/$job_id/artifacts" --output artifacts_ref.zip - unzip -qq -j artifacts_ref.zip "*latest_WMOPS.csv" || true # add file to arguments only if the artifact could be retrieved to prevent error later. - if [ -f latest_WMOPS.csv ]; then GET_WMOPS_ARGS="$GET_WMOPS_ARGS latest_WMOPS.csv"; fi -- GitLab From 6266d702960279779b041b2720d591444b92fe06 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 12:36:02 +0100 Subject: [PATCH 14/18] fix latest WMOPS archiving for float ref --- includes/complexity-jobs.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/includes/complexity-jobs.yml b/includes/complexity-jobs.yml index eed8acf..b6e8175 100644 --- a/includes/complexity-jobs.yml +++ b/includes/complexity-jobs.yml @@ -42,7 +42,7 @@ - rm artifacts.zip - rm -rf $public_dir - ### 1.5.part: get the corresponding measurement from ivas-float-update + ### 1.5.part: get the corresponding measurement from ivas-codec main in BASOP # only do this for ivas-basop - if [ "$CI_PROJECT_ID" == "$PROJECT_ID_BASOP" ]; then # find id of same name job in float repo on branch main @@ -65,8 +65,7 @@ # first move logs - log_files=$(cat $public_dir/graphs*.js | grep logFile | sed "s/.*\(wmops_newsletter_.*\.csv\).*/\1/g") - for f in $log_files; do [ -f wmops/logs/$f ] && mv wmops/logs/$f $public_dir/logs/$f; done - # TODO: adapt to new float ref - - if [ "$CI_COMMIT_REF_NAME" == "ivas-float-update" ]; then mv wmops/logs/latest_WMOPS.csv $public_dir/logs/; fi + - if [ "$CI_PROJECT_ID" == "$PROJECT_ID_FLOAT" ]; then mv wmops/logs/latest_WMOPS.csv $public_dir/logs/; fi # copy index page blueprint - cp ci/complexity_measurements/index_complexity.html ${public_dir}/index.html # patch the format in the title -- GitLab From 74a3e2bd1dde8dfe40c6029e020f3f6b9298979a Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 12:39:08 +0100 Subject: [PATCH 15/18] add coverage pipeline type for float --- includes/default-variables-float.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/includes/default-variables-float.yml b/includes/default-variables-float.yml index 296f068..9baec3b 100644 --- a/includes/default-variables-float.yml +++ b/includes/default-variables-float.yml @@ -19,6 +19,7 @@ variables: - 'check-clipping' - 'test-branch-vs-input-passthrough' - 'coverage' + - 'complexity' PYTEST_ARGS: "" LONG_TEST_SUITE: "tests/codec_be_on_mr_nonselection tests/renderer --param_file scripts/config/self_test_ltv.prm --use_ltv" -- GitLab From 047284671410880106bc1c626086167d454d77e2 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 13:27:37 +0100 Subject: [PATCH 16/18] [revert-me] change branch to get ref numbers from --- includes/complexity-jobs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/includes/complexity-jobs.yml b/includes/complexity-jobs.yml index b6e8175..bf51d2a 100644 --- a/includes/complexity-jobs.yml +++ b/includes/complexity-jobs.yml @@ -46,7 +46,7 @@ # only do this for ivas-basop - if [ "$CI_PROJECT_ID" == "$PROJECT_ID_BASOP" ]; then # find id of same name job in float repo on branch main - - job_id=$(python3 ci/get_id_of_last_job_occurence.py main $CI_JOB_NAME $PROJECT_ID_FLOAT) + - job_id=$(python3 ci/get_id_of_last_job_occurence.py kiene/ci-test-complexity-jobs-unification $CI_JOB_NAME $PROJECT_ID_FLOAT) - echo $job_id - curl --silent --show-error --request GET "$CI_API_V4_URL/projects/$PROJECT_ID_FLOAT/jobs/$job_id/artifacts" --output artifacts_ref.zip - unzip -qq -j artifacts_ref.zip "*latest_WMOPS.csv" || true -- GitLab From f365731311b0ea401470435dfe9d04e9105defe6 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 13:46:42 +0100 Subject: [PATCH 17/18] Revert "[revert-me] change branch to get ref numbers from" This reverts commit 047284671410880106bc1c626086167d454d77e2. --- includes/complexity-jobs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/includes/complexity-jobs.yml b/includes/complexity-jobs.yml index bf51d2a..b6e8175 100644 --- a/includes/complexity-jobs.yml +++ b/includes/complexity-jobs.yml @@ -46,7 +46,7 @@ # only do this for ivas-basop - if [ "$CI_PROJECT_ID" == "$PROJECT_ID_BASOP" ]; then # find id of same name job in float repo on branch main - - job_id=$(python3 ci/get_id_of_last_job_occurence.py kiene/ci-test-complexity-jobs-unification $CI_JOB_NAME $PROJECT_ID_FLOAT) + - job_id=$(python3 ci/get_id_of_last_job_occurence.py main $CI_JOB_NAME $PROJECT_ID_FLOAT) - echo $job_id - curl --silent --show-error --request GET "$CI_API_V4_URL/projects/$PROJECT_ID_FLOAT/jobs/$job_id/artifacts" --output artifacts_ref.zip - unzip -qq -j artifacts_ref.zip "*latest_WMOPS.csv" || true -- GitLab From c16f8e31bfc14a54e1f54ba776f2290a3a0314a1 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Wed, 26 Nov 2025 15:54:20 +0100 Subject: [PATCH 18/18] Revert "[revert me] change branch for CI scripts" This reverts commit 31c3f19a707fafe56395ac78fcb6d0aa4a562386. --- includes/default-variables.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/includes/default-variables.yml b/includes/default-variables.yml index 022e616..d72bce4 100644 --- a/includes/default-variables.yml +++ b/includes/default-variables.yml @@ -12,7 +12,7 @@ variables: SCALE_FACTOR: "3.162" PYTEST_ADDOPTS: "" # this contains the name of the branch in ivas-codec repo that is used to copy the ci scripts from - BASOP_CI_SCRIPTS_BRANCH: "kiene/ci-test-complexity-jobs-unification" + BASOP_CI_SCRIPTS_BRANCH: "main" # overwrite this via .gitlab-ci.yml in the respective other repo to disable "(model from file)" testcases DISABLE_HRTF: "false" PROJECT_ID_FLOAT: "49" -- GitLab