From ef2a3162b6a5445459cb5156365c2fe632a34e7f Mon Sep 17 00:00:00 2001 From: Maxim Kuvyrkov Date: Mon, 18 Sep 2017 15:56:00 +0000 Subject: tcwg-benchmark, tcwg-benchmark-compare: Graduate to production ... tcwg-benchmark-christophe and tcwg-benchmark-compare-christophe jobs. Update tcwg-benchmark-results and tcwg-benchmark-and-results jobs. Change-Id: Ie0d26a16c545a8dee7e314c81da1215e483aceac --- tcwg-benchmark-and-results.yaml | 2 +- tcwg-benchmark-compare.yaml | 91 ++++++++++++++++++++++ tcwg-benchmark-release.yaml | 2 +- tcwg-benchmark-results.yaml | 4 +- tcwg-benchmark.yaml | 166 ++++++++++++++++++++++++++++++++++++++++ 5 files changed, 261 insertions(+), 4 deletions(-) create mode 100644 tcwg-benchmark-compare.yaml create mode 100644 tcwg-benchmark.yaml diff --git a/tcwg-benchmark-and-results.yaml b/tcwg-benchmark-and-results.yaml index e304ca2532..2b84074965 100644 --- a/tcwg-benchmark-and-results.yaml +++ b/tcwg-benchmark-and-results.yaml @@ -51,7 +51,7 @@ results_id=$results_id EOF - trigger-builds: - - project: 'tcwg-benchmark-christophe' + - project: 'tcwg-benchmark' property-file: benchmark_params block: true - trigger-builds: diff --git a/tcwg-benchmark-compare.yaml b/tcwg-benchmark-compare.yaml new file mode 100644 index 0000000000..07f9143b93 --- /dev/null +++ b/tcwg-benchmark-compare.yaml @@ -0,0 +1,91 @@ +- job: + name: tcwg-benchmark-compare + project-type: freestyle + defaults: global + properties: + - authorization: + linaro: + - job-read + - job-extended-read + - job-build + - job-cancel + - build-discarder: + days-to-keep: 30 + num-to-keep: 100 + parameters: + - string: + name: resultsref + default: /tcwg-benchmark- + description: 'Rsync-friendly for reference results. Use the results_id value of the reference build.' + - string: + name: resultseval + default: /tcwg-benchmark- + description: 'Rsync-friendly for results to compare to reference. Use the results_id value of the build.' + - bool: + name: peak + default: false + description: 'Use peak performance instead of median' + - string: + name: scripts_branch + default: master + description: 'Jenkins-scripts branch to use' + - string: + name: bmk_branch + default: master + description: 'Bmk-scripts branch to use' + disabled: false + node: tcwg-bmk-dev-01 + concurrent: true + display-name: 'TCWG BBB Benchmark Compare' + scm: + - git: + url: https://git-us.linaro.org/toolchain/jenkins-scripts.git + refspec: +refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/* + branches: + - ${scripts_branch} + skip-tag: true + shallow-clone: true + wipe-workspace: false + clean: + before: true + - git: + url: https://git-us.linaro.org/toolchain/bmk-scripts.git + refspec: +refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/* + branches: + - ${bmk_branch} + basedir: bmk-scripts + skip-tag: true + shallow-clone: true + wipe-workspace: false + clean: + before: true + wrappers: + - timeout: + timeout: 600 + - timestamps + - ssh-agent-credentials: + users: + - 'tcwg-benchmark' + builders: + - shell: | + #!/bin/bash + set -e -u -o pipefail + refboard=$(dirname ${resultsref}) + evalboard=$(dirname ${resultseval}) + refnumber=$(basename ${resultsref} | sed 's/tcwg-benchmark-//') + evalnumber=$(basename ${resultseval} | sed 's/tcwg-benchmark-//') + peakstr="" + $peak && peakstr=-peak + echo "#${BUILD_NUMBER}-${refboard}-${refnumber}-${evalboard}-${evalnumber}${peakstr}" > ${WORKSPACE}/version.txt + - build-name-setter: + name: 'version.txt' + file: true + - shell: | + #!/bin/bash + + set -ex + exec ./tcwg-benchmark-results-compare.sh + publishers: + - archive: + artifacts: 'artifacts/*' + latest-only: false diff --git a/tcwg-benchmark-release.yaml b/tcwg-benchmark-release.yaml index 20dddf9c66..ffa2f70f76 100644 --- a/tcwg-benchmark-release.yaml +++ b/tcwg-benchmark-release.yaml @@ -87,6 +87,6 @@ EOF echo "$benchmark_params" >> params - trigger-builds: - - project: 'tcwg-benchmark-christophe' + - project: 'tcwg-benchmark' property-file: params block: true diff --git a/tcwg-benchmark-results.yaml b/tcwg-benchmark-results.yaml index e10fd607b3..c4999b67da 100644 --- a/tcwg-benchmark-results.yaml +++ b/tcwg-benchmark-results.yaml @@ -15,11 +15,11 @@ parameters: - string: name: results_id - default: /tcwg-benchmark-christophe-123 + default: /tcwg-benchmark- description: 'ID for benchmarking results; results should be in dev-01.tcwglab:/home/tcwg-benchmark/results-$results_id/' - string: name: results_ref - default: /tcwg-benchmark-christophe-123 + default: /tcwg-benchmark- description: 'ID for benchmarking reference results; should be in dev-01.tcwglab:/home/tcwg-benchmark/results-$results_ref/' - string: name: scripts_branch diff --git a/tcwg-benchmark.yaml b/tcwg-benchmark.yaml new file mode 100644 index 0000000000..7ebe0887f2 --- /dev/null +++ b/tcwg-benchmark.yaml @@ -0,0 +1,166 @@ +- job: + name: tcwg-benchmark + project-type: matrix + defaults: global + properties: + - authorization: + linaro: + - job-read + - job-extended-read + - job-build + - job-cancel + - build-discarder: + days-to-keep: 30 + num-to-keep: 100 + parameters: + - string: + name: toolchain_url + default: '' + description: 'Toolchain URL' + - string: + name: sysroot + default: 'tarball' + description: 'Rsync-friendly path to the sysroot to run against; use libs from toolchain_url tarball/rsync if "tarball"; use system libs if empty' + - string: + name: bench_list + default: 'bzip2' + description: 'List of benchmarks to run (from spec2k6). Use "all" to run all of them.' + - string: + name: cflags + default: '' + description: 'CFLAGS to use' + - choice: + name: extension + choices: + - default + - O2 + - O3 + - O2g + - O3g + - Ofast + - Os + default: 'O2g' + description: 'Compilation profile' + - choice: + name: testmode + choices: + - build + - verify + - benchmark + default: 'verify' + description: 'Whether to just build or run full benchmarks' + - string: + name: iterations + default: '1' + description: 'Number of benchmark iterations' + - string: + name: results_id + default: /tcwg-benchmark- + description: 'ID for benchmarking results; results will appear in dev-01.tcwglab:/home/tcwg-benchmark/results-$results_id/' + - bool: + name: forceinstall + default: 'false' + description: 'Force clean re-install of benchmark sources' + - choice: + name: run_profile + choices: + - parallel3x3 + - parallel3x1 + - serial1 + default: 'parallel3x1' + description: 'Benchmark profile to use: parallel3x3 runs on 3 boards and 3 CPUs in parallel; parallel3x1 runs on 3 boards on 1 CPU in parallel; serial1 runs on a single board on 1 CPU.' + - string: + name: target_list + default: 'tx1' + description: 'List of targets -- tk1 tx1' + - bool: + name: reboot + default: 'false' + description: 'Reboot the board before building and running the benchmarks.' + - string: + name: displaytag + default: '' + description: 'Tag to display in the Jenkins console, so that the build name is more meaningful' + - bool: + name: ignore_errors + default: 'false' + description: 'Ignore build errors as much as possible' + - string: + name: builder + default: 'tcwg-x86_64-build' + description: 'Builder -- jenkins label or node' + - string: + name: scripts_branch + default: master + description: 'Jenkins-scripts branch to use' + - string: + name: bmk_branch + default: master + description: 'Bmk-scripts branch to use' + disabled: false + node: tcwg-bmk-coordinator + child-workspace: $label + concurrent: true + display-name: 'TCWG BBB Benchmark' + scm: + - git: + url: https://git-us.linaro.org/toolchain/jenkins-scripts.git + refspec: +refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/* + branches: + - ${scripts_branch} + skip-tag: true + shallow-clone: true + wipe-workspace: false + clean: + before: true + - git: + url: https://git-us.linaro.org/toolchain/bmk-scripts.git + refspec: +refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/* + branches: + - ${bmk_branch} + basedir: bmk-scripts + skip-tag: true + shallow-clone: true + wipe-workspace: false + clean: + before: true + axes: + - axis: + type: slave + name: label + values: + - tcwg-bmk-tk1-06 + - tcwg-bmk-tk1-07 + - tcwg-bmk-tk1-08 + - tcwg-bmk-tx1-06 + - tcwg-bmk-tx1-07 + - tcwg-bmk-tx1-08 + - axis: + type: dynamic + name: target + values: + - target_list + execution-strategy: + combination-filter: | + (target=="tk1" && label==~/tcwg-bmk-tk1-.*/) || (target=="tx1" && label==~/tcwg-bmk-tx1-.*/) + sequential: false + wrappers: + - timeout: + timeout: 900 + - timestamps + - ssh-agent-credentials: + users: + - 'tcwg-benchmark' + - build-name: + name: '#${BUILD_NUMBER}-${displaytag}' + builders: + - shell: | + #!/bin/bash + + set -ex + exec ./tcwg-benchmark.sh + publishers: + - email-ext: + always: true + send-to: + - requester -- cgit v1.2.3