Skip to content

Commit d97a371

Browse files
committed
Merge tag 'v0.18.0' into jdk-21+24-mmtk-merge
2 parents bfdb591 + bbdc161 commit d97a371

22 files changed

+452
-43
lines changed

.github/configs/base.yml

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
includes:
2+
- "$RUNNING_NG_PACKAGE_DATA/base/runbms.yml"
3+
4+
suites:
5+
dacapochopin-04132797-ci:
6+
type: DaCapo
7+
release: evaluation
8+
path: "DACAPO_PATH/dacapo-evaluation-git-04132797.jar"
9+
minheap: mmtk-openjdk-11-MarkCompact
10+
minheap_values:
11+
mmtk-openjdk-11-MarkCompact:
12+
avrora: 8
13+
batik: 426
14+
biojava: 197
15+
cassandra: 117
16+
eclipse: 439
17+
fop: 24
18+
graphchi: 195
19+
h2: 1122
20+
h2o: 136
21+
jme: 236
22+
jython: 48
23+
kafka: 243
24+
luindex: 25
25+
lusearch: 36
26+
pmd: 291
27+
spring: 110
28+
sunflow: 37
29+
tradebeans: .inf
30+
tradesoap: .inf
31+
tomcat: 55
32+
xalan: 19
33+
zxing: 427
34+
nominal-heap-sizes:
35+
avrora: 7
36+
batik: 192
37+
biojava: 97
38+
cassandra: 74
39+
eclipse: 346
40+
fop: 17
41+
graphchi: 179
42+
h2: 506
43+
h2o: 102
44+
jme: 29
45+
jython: 29
46+
kafka: 207
47+
luindex: 44
48+
lusearch: 19
49+
pmd: 114
50+
spring: 47
51+
sunflow: 25
52+
tradebeans: 101
53+
tradesoap: 89
54+
tomcat: 17
55+
xalan: 9
56+
zxing: 66
57+
timing_iteration: 1
58+
timeout: 7200
59+
60+
overrides:
61+
invocations: 1
62+
remote_host: null
63+
64+
modifiers:
65+
mmtk_gc:
66+
type: "EnvVar"
67+
var: "MMTK_PLAN"
68+
val: "{0}"
69+
70+
runtimes:
71+
jdk11-master:
72+
type: OpenJDK
73+
release: 11
74+
home: "/home/runner/work/mmtk-openjdk/mmtk-openjdk/bundles/jdk"
75+
76+
configs:
77+
- "jdk11-master|ms|s|mmtk_gc-SemiSpace|tph"
78+
- "jdk11-master|ms|s|mmtk_gc-GenCopy|tph"
79+
- "jdk11-master|ms|s|mmtk_gc-Immix|tph"
80+
- "jdk11-master|ms|s|mmtk_gc-GenImmix|tph"
81+
- "jdk11-master|ms|s|mmtk_gc-StickyImmix|tph"
82+
- "jdk11-master|ms|s|mmtk_gc-MarkSweep|tph"
83+
- "jdk11-master|ms|s|mmtk_gc-MarkCompact|tph"
84+
85+
benchmarks:
86+
dacapochopin-04132797-ci:

.github/scripts/build-normal.sh

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/bin/bash
2+
3+
set -xe
4+
5+
. $(dirname "$0")/new-common.sh
6+
7+
# Use fastdebug if DEBUG_LEVEL is unset
8+
DEBUG_LEVEL=${DEBUG_LEVEL:="fastdebug"}
9+
10+
# Build product bundle
11+
cd $OPENJDK_PATH
12+
sh configure --disable-warnings-as-errors --with-debug-level=$DEBUG_LEVEL
13+
make CONF=linux-x86_64-normal-server-$DEBUG_LEVEL THIRD_PARTY_HEAP=$BINDING_PATH/openjdk product-bundles
14+
15+
if [[ $DEBUG_LEVEL == "fastdebug" ]]; then
16+
pushd build/linux-x86_64-normal-server-fastdebug/bundles
17+
F=`ls *_bin-debug.tar.gz`
18+
mv $F ${F/_bin-debug/_bin}
19+
popd
20+
fi

.github/scripts/ci-test-assertions.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,12 @@ export MMTK_PLAN=GenImmix
2727
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms500M -Xmx500M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar fop
2828
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms500M -Xmx500M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar luindex
2929

30+
# --- StickyImmix ---
31+
export MMTK_PLAN=StickyImmix
32+
33+
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms500M -Xmx500M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar fop
34+
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms500M -Xmx500M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar luindex
35+
3036
# -- GenCopy --
3137
export MMTK_PLAN=GenCopy
3238

.github/scripts/ci-test-global-alloc-bit.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,12 @@ build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHea
3232
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms500M -Xmx500M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar fop
3333
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms500M -Xmx500M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar luindex
3434

35+
# --- StickyImmix ---
36+
export MMTK_PLAN=StickyImmix
37+
38+
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms500M -Xmx500M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar antlr
39+
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms500M -Xmx500M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar fop
40+
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms500M -Xmx500M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar luindex
3541

3642
# --- GenCopy ---
3743
export MMTK_PLAN=GenCopy

.github/scripts/ci-test-only-normal.sh

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,22 @@ build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHea
6868
# Test heap resizing
6969
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms20M -Xmx100M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar fop
7070

71+
# --- StickyImmix ---
72+
export MMTK_PLAN=StickyImmix
73+
74+
# Test - the benchmarks that are commented out do not work yet
75+
# Note: the command line options are necessary for now to ensure the benchmarks work. We may later change the options if we do not have these many constraints.
76+
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms75M -Xmx75M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar antlr
77+
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms75M -Xmx75M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar fop
78+
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms75M -Xmx75M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar luindex
79+
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms75M -Xmx75M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar lusearch
80+
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms75M -Xmx75M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar pmd
81+
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms75M -Xmx75M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar xalan
82+
83+
# These benchmarks take 40s+ for slowdebug build, we may consider removing them from the CI
84+
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms200M -Xmx200M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar hsqldb
85+
build/linux-x86_64-normal-server-$DEBUG_LEVEL/jdk/bin/java -XX:+UseThirdPartyHeap -server -XX:MetaspaceSize=100M -Xms200M -Xmx200M -jar $DACAPO_PATH/dacapo-2006-10-MR2.jar eclipse
86+
7187
# --- GenCopy ---
7288
export MMTK_PLAN=GenCopy
7389

.github/scripts/new-common.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
BINDING_PATH=$(realpath $(dirname "$0"))/../..
2+
OPENJDK_PATH=$BINDING_PATH/../openjdk
3+
DACAPO_PATH=$BINDING_PATH/../dacapo
4+
RUSTUP_TOOLCHAIN=`cat $BINDING_PATH/mmtk/rust-toolchain`

.github/scripts/pgo-build.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ RUSTFLAGS="-Cprofile-generate=/tmp/$USER/pgo-data" make CONF=linux-x86_64-normal
77
rm -rf /tmp/$USER/pgo-data/*
88

99
# Profile using fop
10-
MMTK_PLAN=GenImmix MMTK_STRESS_FACTOR=4194304 MMTK_PRECISE_STRESS=false ./build/linux-x86_64-normal-server-release/images/jdk/bin/java -XX:MetaspaceSize=500M -XX:+DisableExplicitGC -XX:-TieredCompilation -Xcomp -XX:+UseThirdPartyHeap -Xms60M -Xmx60M -jar /usr/share/benchmarks/dacapo/dacapo-evaluation-git-6e411f33.jar -n 5 fop
10+
MMTK_PLAN=GenImmix MMTK_STRESS_FACTOR=16777216 MMTK_PRECISE_STRESS=false ./build/linux-x86_64-normal-server-release/images/jdk/bin/java -XX:MetaspaceSize=500M -XX:+DisableExplicitGC -XX:-TieredCompilation -Xcomp -XX:+UseThirdPartyHeap -Xms60M -Xmx60M -jar /usr/share/benchmarks/dacapo/dacapo-evaluation-git-6e411f33.jar -n 5 fop
1111

1212
# Merge profiling data
1313
/opt/rust/toolchains/1.66.1-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin/llvm-profdata merge -o /tmp/$USER/pgo-data/merged.profdata /tmp/$USER/pgo-data

.github/scripts/setup.sh

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/bin/bash
2+
3+
set -xe
4+
5+
. $(dirname "$0")/new-common.sh
6+
7+
# Install nightly rust
8+
rustup toolchain install $RUSTUP_TOOLCHAIN
9+
rustup target add i686-unknown-linux-gnu --toolchain $RUSTUP_TOOLCHAIN
10+
rustup component add clippy --toolchain $RUSTUP_TOOLCHAIN
11+
rustup component add rustfmt --toolchain $RUSTUP_TOOLCHAIN
12+
rustup override set $RUSTUP_TOOLCHAIN
13+
14+
# Install running
15+
pip3 install running-ng
16+
17+
# Install dependencies
18+
sudo apt-get update -y
19+
sudo apt-get install dos2unix
20+
sudo apt-get install build-essential libx11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev libcups2-dev libasound2-dev libxrandr-dev

.github/scripts/style-check.sh

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
#!/bin/bash
2+
3+
set -xe
4+
5+
. $(dirname "$0")/new-common.sh
6+
7+
export RUSTFLAGS="-D warnings"
8+
9+
pushd $BINDING_PATH/mmtk
10+
cargo clippy || exit $?
11+
cargo clippy --release || exit $?
12+
13+
cargo fmt -- --check || exit $?
14+
popd
15+
16+
find $BINDING_PATH/openjdk \
17+
$BINDING_PATH/mmtk \
18+
-name '*.hpp' \
19+
-o -name '*.cpp' \
20+
-o -name '*.rs' \
21+
-o -name '*.toml' \
22+
-o -name '*.gmk' \
23+
-exec $(dirname "$0")/ci-check-lineends.sh '{}' \;
24+

.github/workflows/ci-assert.yml

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

0 commit comments

Comments
 (0)