Skip to content

Commit 53df6a3

Browse files
authored
Fix performance baseline workflow (#971)
This PR fixes our workflow to run performance tests for JikesRVM's and OpenJDK's stock GCs. It combines the two workflows into one. The workflow is now triggered once per month, rather than once per week.
1 parent b567cc4 commit 53df6a3

File tree

3 files changed

+99
-90
lines changed

3 files changed

+99
-90
lines changed

.github/workflows/perf-baseline.yml

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
name: Performance Baseline
2+
3+
on:
4+
# Manual dispatch
5+
workflow_dispatch:
6+
# Or on the first day of a month.
7+
schedule:
8+
- cron: '0 0 1 * *'
9+
# READ BEFORE ENABLING THE TRIGGER BELOW
10+
# This trigger is only used when testing the scripts in a branch, and should be commented out in other cases.
11+
# If this trigger is used, please change the following env: RESULT_REPO_BRANCH -> 'test' (MUST), DEPLOY -> 'false' (optional)
12+
# pull_request:
13+
# branches:
14+
# - master
15+
16+
env:
17+
# The branch to save run data and plot graph from. Use 'self-hosted' for master, use 'test' or anything else for testing in a branch.
18+
RESULT_REPO_BRANCH: 'self-hosted'
19+
20+
jobs:
21+
jikesrvm-baseline:
22+
runs-on: [self-hosted, Linux, freq-scaling-off]
23+
# Allow 1 day to run
24+
timeout-minutes: 1440
25+
steps:
26+
- name: Checkout JikesRVM Binding
27+
uses: actions/checkout@v2
28+
with:
29+
repository: mmtk/mmtk-jikesrvm
30+
path: mmtk-jikesrvm
31+
submodules: true
32+
- name: Checkout JikesRVM
33+
working-directory: mmtk-jikesrvm
34+
run: |
35+
./.github/scripts/ci-checkout.sh
36+
# checkout perf-kit
37+
- name: Checkout Perf Kit
38+
uses: actions/checkout@v2
39+
with:
40+
token: ${{ secrets.CI_ACCESS_TOKEN }}
41+
repository: mmtk/ci-perf-kit
42+
ref: "0.6.10"
43+
path: ci-perf-kit
44+
submodules: true
45+
# setup
46+
- name: Setup
47+
run: |
48+
./ci-perf-kit/scripts/history-run-setup.sh
49+
sed -i 's/^mmtk[[:space:]]=/#ci:mmtk=/g' mmtk-jikesrvm/mmtk/Cargo.toml
50+
sed -i 's/^#[[:space:]]mmtk/mmtk/g' mmtk-jikesrvm/mmtk/Cargo.toml
51+
# run
52+
- name: Performance Run
53+
timeout-minutes: 1440
54+
run: |
55+
export RESULT_REPO=mmtk/ci-perf-result
56+
export RESULT_REPO_BRANCH=${{ env.RESULT_REPO_BRANCH }}
57+
export RESULT_REPO_ACCESS_TOKEN=${{ secrets.CI_ACCESS_TOKEN }}
58+
export FROM_DATE=2020-07-10
59+
JAVA_HOME=/opt/jdk1.6.0_45/ PATH=/opt/apache-ant-1.9.16/bin/:/opt/jdk1.6.0_45/bin/:$PATH ./ci-perf-kit/scripts/jikesrvm-stock.sh ./mmtk-jikesrvm/repos/jikesrvm
60+
61+
openjdk-baseline:
62+
runs-on: [self-hosted, Linux, freq-scaling-off]
63+
# Allow 2 days to run (it currently takes slightly more than 1 day to finish)
64+
timeout-minutes: 2880
65+
steps:
66+
- name: Checkout OpenJDK Binding
67+
uses: actions/checkout@v2
68+
with:
69+
repository: mmtk/mmtk-openjdk
70+
path: mmtk-openjdk
71+
submodules: true
72+
- name: Checkout OpenJDK
73+
working-directory: mmtk-openjdk
74+
run: |
75+
./.github/scripts/ci-checkout.sh
76+
# checkout perf-kit
77+
- name: Checkout Perf Kit
78+
uses: actions/checkout@v2
79+
with:
80+
token: ${{ secrets.CI_ACCESS_TOKEN }}
81+
repository: mmtk/ci-perf-kit
82+
ref: "0.6.10"
83+
path: ci-perf-kit
84+
submodules: true
85+
# setup
86+
- name: Setup
87+
run: |
88+
./ci-perf-kit/scripts/history-run-setup.sh
89+
sed -i 's/^mmtk[[:space:]]=/#ci:mmtk=/g' mmtk-openjdk/mmtk/Cargo.toml
90+
sed -i 's/^#[[:space:]]mmtk/mmtk/g' mmtk-openjdk/mmtk/Cargo.toml
91+
# run
92+
- name: Performance Run
93+
timeout-minutes: 2880
94+
run: |
95+
export RESULT_REPO=mmtk/ci-perf-result
96+
export RESULT_REPO_BRANCH=${{ env.RESULT_REPO_BRANCH }}
97+
export RESULT_REPO_ACCESS_TOKEN=${{ secrets.CI_ACCESS_TOKEN }}
98+
export FROM_DATE=2020-07-10
99+
./ci-perf-kit/scripts/openjdk-stock.sh ./mmtk-openjdk/repos/openjdk

.github/workflows/perf-jikesrvm-baseline.yml

Lines changed: 0 additions & 45 deletions
This file was deleted.

.github/workflows/perf-openjdk-baseline.yml

Lines changed: 0 additions & 45 deletions
This file was deleted.

0 commit comments

Comments
 (0)