aboutsummaryrefslogtreecommitdiff
path: root/tcwg-benchmark-sfo17.yaml
blob: f129e49408a65446e2e91b0e308e5cf917a3e86e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
- job:
    name: tcwg-benchmark-sfo17
    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_list
            default: 'gnu-aarch64 gnu-armv7 gnu-armv8 llvm-aarch64 llvm-armv7'
            description: 'List of toolchains: gnu-aarch64 gnu-armv7 gnu-armv8 llvm-aarch64 llvm-armv7'
        - string:
            name: extension_list
            default: 'O2g O3g'
            description: 'List of extensions: O2g O3g O2 O3'
        - string:
            name: cflags
            default: ''
            description: 'Compiler flags'
        - string:
            name: benchmarks
            default: 'fast'
            description: 'List of benchmarks: fast nofortran all'
        - text:
            name: benchmark_params
            default: |
              testmode=benchmark
              run_profile=parallel3x1
              target_list=tx1
              reboot=true
              scripts_branch=refs/changes/63/21463/8
              bmk_branch=master
            description: 'Benchmark parameters, see tcwg-benchmark job'
    disabled: false
    node: tcwg-bmk-coordinator
    concurrent: true
    display-name: 'TCWG SFO17 Benchmark'
    axes:
        - axis:
            type: slave
            name: label
            values:
                - tcwg-coordinator
        - axis:
            type: dynamic
            name: toolchain
            values:
                - toolchain_list
        - axis:
            type: dynamic
            name: extension
            values:
                - extension_list
    execution-strategy:
        sequential: false
    wrappers:
        - timeout:
            timeout: 600
        - timestamps
        - ssh-agent-credentials:
            users:
                - 'tcwg-benchmark'
    builders:
      - shell: |
          #!/bin/bash

          set -ex

          base_url="https://dev-01.tcwglab/~maxim.kuvyrkov/sfo17"

          case "$toolchain" in
            "gnu-aarch64") tarball=gcc-linaro-7.1.1-2017.08-x86_64_aarch64-linux-gnu.tar.xz ;;
            "gnu-armv7") tarball=gcc-linaro-7.1.1-2017.08-x86_64_arm-linux-gnueabihf.tar.xz ;;
            "gnu-armv8") tarball=gcc-linaro-7.1.1-2017.08-x86_64_armv8l-linux-gnueabihf.tar.xz ;;
            "llvm-aarch64") tarball=clang+llvm-5.0.0-aarch64-linux-gnu.tar.xz ;;
            "llvm-armv7") tarball=clang+llvm-5.0.0-armv7a-linux-gnueabihf.tar.xz ;;
            *) exit 1 ;;
          esac

          case "$toolchain" in
            "gnu"*)
              sysroot="tarball"
              builder="tcwg-x86_64-build"
              ;;
            "llvm-aarch64")
              sysroot="$base_url/sysroot-glibc-linaro-2.25-2017.08-aarch64-linux-gnu.tar.xz"
              builder="tcwg-apm_64-build"
              ;;
            "llvm-armv7")
              sysroot="$base_url/sysroot-glibc-linaro-2.25-2017.08-arm-linux-gnueabihf.tar.xz"
              builder="tcwg-apm_32-build"
              ;;
            *) exit 1 ;;
          esac

          case "$toolchain:$benchmarks" in
            *:"nofortran"|"llvm"*:"all") bench_list="400.perlbench 401.bzip2 403.gcc 429.mcf 445.gobmk 456.hmmer 458.sjeng 462.libquantum 464.h264ref 471.omnetpp 473.astar 483.xalancbmk 433.milc 444.namd 447.dealII 450.soplex 453.povray 470.lbm 482.sphinx3" ;;
            *:"fast") bench_list="456.hmmer 483.xalancbmk 453.povray" ;;
            *) bench_list="$benchmarks"
          esac

          cat > params <<EOF
          toolchain_url=$base_url/$tarball
          bench_list=$bench_list
          sysroot=$sysroot
          builder=$builder
          extension=$extension
          cflags=$cflags
          displaytag=sfo17-$benchmarks-$toolchain-$extension$cflags
          EOF
          echo "$benchmark_params" >> params
      - trigger-builds:
          - project: 'tcwg-benchmark'
            property-file: params
            block: true