Skip to content

Commit 1cca4db

Browse files
committed
[GR-60058] [GR-62798] Make x52 hardware primary for benchmarking.
PullRequest: graal/20146
2 parents b0b8730 + 4d29fa8 commit 1cca4db

File tree

8 files changed

+119
-92
lines changed

8 files changed

+119
-92
lines changed

ci/ci_common/bench-common.libsonnet

+8-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
bench_base:: common.build_base + {
77
# job name automatically generated: <job_prefix>-<suite>-<platform>-<jdk_name>-<os>-<arch>-<job_suffix>
88
# null values are omitted from the list.
9-
generated_name:: utils.hyphenize([self.job_prefix, self.suite, self.platform, self.jdk_name, self.os, self.arch, self.job_suffix]),
9+
generated_name:: utils.hyphenize([self.job_prefix, self.suite, self.platform, self.jdk_name, if std.objectHasAll(self, 'machine_name') then self.machine_name else null, self.os, self.arch, self.job_suffix]),
1010
job_prefix:: null,
1111
job_suffix:: null,
1212
name:
@@ -69,6 +69,13 @@
6969
default_numa_node:: 0,
7070
num_threads:: 16
7171
},
72+
x52:: common.linux_amd64 + self._bench_machine + {
73+
machine_name:: "x52",
74+
capabilities+: ["tmpfs25g"],
75+
numa_nodes:: [0, 1],
76+
default_numa_node:: 1,
77+
num_threads:: 72
78+
},
7279
x82:: common.linux_amd64 + self._bench_machine + {
7380
machine_name:: "x82",
7481
capabilities+: ["tmpfs25g"],

ci/ci_common/common-utils.libsonnet

+9
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,15 @@
1010
hyphenize(a_list)::
1111
std.join("-", std.filterMap(function(el) el != null, function(el) std.toString(el), a_list)),
1212

13+
# generate a string that describes the specific hardware being executed on with format: <jdk_name>-<machine_name>-<os>-<arch>
14+
jdk_and_hardware(build)::
15+
self.hyphenize([
16+
if std.objectHasAll(build, 'jdk_name') then build.jdk_name else null,
17+
if std.objectHasAll(build, 'machine_name') then build.machine_name else null,
18+
if std.objectHasAll(build, 'os') then build.os else null,
19+
if std.objectHasAll(build, 'arch') then build.arch else null,
20+
]),
21+
1322
# Pattern for a guard.includes clause that captures all top-level CI files.
1423
top_level_ci:: ["*.json", "*.jsonnet", "*.libsonnet", "ci/**"],
1524

compiler/ci/ci_common/benchmark-builders.jsonnet

+20-17
Original file line numberDiff line numberDiff line change
@@ -11,36 +11,39 @@
1111

1212
local main_builds = std.flattenArrays([
1313
[
14-
c.daily + c.opt_post_merge + hw.e3 + jdk + cc.libgraal + bench.dacapo + PR_bench_libgraal,
15-
c.daily + c.opt_post_merge + hw.e3 + jdk + cc.libgraal + bench.scala_dacapo + PR_bench_libgraal,
16-
c.daily + c.opt_post_merge + hw.e3 + jdk + cc.libgraal + bench.renaissance + PR_bench_libgraal,
17-
c.daily + c.opt_post_merge + hw.e3 + jdk + cc.libgraal + bench.barista + PR_bench_libgraal,
18-
c.daily + c.opt_post_merge + hw.e3 + jdk + cc.libgraal + bench.specjvm2008 + PR_bench_libgraal,
19-
c.on_demand + hw.e3 + jdk + cc.libgraal + bench.dacapo_size_variants,
20-
c.on_demand + hw.e3 + jdk + cc.libgraal + bench.scala_dacapo_size_variants,
21-
c.monthly + hw.e3 + jdk + cc.libgraal + bench.specjbb2015,
22-
c.daily + c.opt_post_merge + hw.e3 + jdk + cc.libgraal + bench.awfy + PR_bench_libgraal,
23-
c.daily + hw.e3 + jdk + cc.libgraal + bench.microservice_benchmarks,
24-
c.weekly + hw.e3 + jdk + cc.libgraal + bench.micros_graal_whitebox,
25-
c.weekly + hw.e3 + jdk + cc.libgraal + bench.micros_graal_dist,
14+
c.daily + c.opt_post_merge + hw.x52 + jdk + cc.libgraal + bench.dacapo + PR_bench_libgraal,
15+
c.daily + c.opt_post_merge + hw.x52 + jdk + cc.libgraal + bench.scala_dacapo + PR_bench_libgraal,
16+
c.daily + c.opt_post_merge + hw.x52 + jdk + cc.libgraal + bench.renaissance + PR_bench_libgraal,
17+
c.daily + c.opt_post_merge + hw.x52 + jdk + cc.libgraal + bench.barista + PR_bench_libgraal,
18+
c.daily + c.opt_post_merge + hw.x52 + jdk + cc.libgraal + bench.specjvm2008 + PR_bench_libgraal,
19+
c.on_demand + hw.x52 + jdk + cc.libgraal + bench.dacapo_size_variants,
20+
c.on_demand + hw.x52 + jdk + cc.libgraal + bench.scala_dacapo_size_variants,
21+
c.monthly + hw.x52 + jdk + cc.libgraal + bench.specjbb2015,
22+
c.daily + c.opt_post_merge + hw.x52 + jdk + cc.libgraal + bench.awfy + PR_bench_libgraal,
23+
c.daily + hw.x52 + jdk + cc.libgraal + bench.microservice_benchmarks,
24+
c.weekly + hw.x52 + jdk + cc.libgraal + bench.micros_graal_whitebox,
25+
c.weekly + hw.x52 + jdk + cc.libgraal + bench.micros_graal_dist,
2626
]
2727
for jdk in cc.product_jdks
2828
]),
2929

3030
local profiling_builds = std.flattenArrays([
3131
[
32-
c.monthly + hw.e3 + jdk + cc.libgraal + suite + cc.enable_profiling + { job_prefix:: "bench-compiler-profiling" },
33-
c.monthly + hw.e3 + jdk + cc.libgraal + suite + cc.footprint_tracking + { job_prefix:: "bench-compiler-footprint" }
32+
c.monthly + hw.x52 + jdk + cc.libgraal + suite + cc.enable_profiling + { job_prefix:: "bench-compiler-profiling" },
33+
c.monthly + hw.x52 + jdk + cc.libgraal + suite + cc.footprint_tracking + { job_prefix:: "bench-compiler-footprint" }
3434
]
3535
for jdk in cc.product_jdks
3636
for suite in bench.groups.main_suites
3737
]),
3838

39-
local weekly_amd64_forks_builds = std.flattenArrays([
39+
local weekly_amd64_forks_builds = std.flattenArrays(std.flattenArrays([
40+
[
41+
bc.generate_fork_builds(c.weekly + hw.x52 + jdk + cc.libgraal + suite, subdir='compiler'),
4042
bc.generate_fork_builds(c.weekly + hw.e3 + jdk + cc.libgraal + suite, subdir='compiler')
43+
]
4144
for jdk in cc.product_jdks
4245
for suite in bench.groups.weekly_forks_suites
43-
]),
46+
])),
4447

4548
local weekly_aarch64_forks_builds = std.flattenArrays([
4649
bc.generate_fork_builds(c.weekly + hw.a12c + jdk + cc.libgraal + suite, subdir='compiler')
@@ -65,7 +68,7 @@
6568
],
6669

6770
local zgc_builds = [
68-
c.weekly + hw.e3 + jdk + cc.libgraal + cc.zgc_mode + suite,
71+
c.weekly + hw.x52 + jdk + cc.libgraal + cc.zgc_mode + suite,
6972
for jdk in cc.product_jdks
7073
for suite in bench.groups.main_suites + [bench.specjbb2015]
7174
],

compiler/ci/ci_includes/baseline-benchmarks.jsonnet

+17-14
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
local hotspot_builds = std.flattenArrays([
1010
[
11-
c.weekly + hw.e3 + jdk + cc.c2 + suite,
11+
c.weekly + hw.x52 + jdk + cc.c2 + suite,
1212
c.weekly + hw.a12c + jdk + cc.c2 + suite
1313
]
1414
for jdk in cc.product_jdks
@@ -17,20 +17,23 @@
1717

1818
local hotspot_profiling_builds = std.flattenArrays([
1919
[
20-
c.monthly + hw.e3 + jdk + cc.c2 + suite + cc.enable_profiling + { job_prefix:: "bench-compiler-profiling" },
20+
c.monthly + hw.x52 + jdk + cc.c2 + suite + cc.enable_profiling + { job_prefix:: "bench-compiler-profiling" },
2121
c.monthly + hw.a12c + jdk + cc.c2 + suite + cc.enable_profiling + { job_prefix:: "bench-compiler-profiling" },
22-
c.monthly + hw.e3 + jdk + cc.c2 + suite + cc.footprint_tracking + { job_prefix:: "bench-compiler-footprint" },
22+
c.monthly + hw.x52 + jdk + cc.c2 + suite + cc.footprint_tracking + { job_prefix:: "bench-compiler-footprint" },
2323
c.monthly + hw.a12c + jdk + cc.c2 + suite + cc.footprint_tracking + { job_prefix:: "bench-compiler-footprint" }
2424
]
2525
for jdk in cc.product_jdks
2626
for suite in bench.groups.main_suites
2727
]),
2828

29-
local weekly_forks_amd64_builds = std.flattenArrays([
30-
bc.generate_fork_builds(c.weekly + hw.e3 + jdk + cc.c2 + suite)
29+
local weekly_forks_amd64_builds = std.flattenArrays(std.flattenArrays([
30+
[
31+
bc.generate_fork_builds(c.weekly + hw.x52 + jdk + cc.c2 + suite),
32+
bc.generate_fork_builds(c.weekly + hw.e3 + jdk + cc.c2 + suite)
33+
]
3134
for jdk in cc.product_jdks
3235
for suite in bench.groups.weekly_forks_suites
33-
]),
36+
])),
3437

3538
local weekly_forks_aarch64_builds = std.flattenArrays([
3639
bc.generate_fork_builds(c.weekly + hw.a12c + jdk + cc.c2 + suite)
@@ -39,31 +42,31 @@
3942
]),
4043

4144
local economy_builds = [
42-
c.weekly + hw.e3 + jdk + cc.libgraal + cc.economy_mode + suite
45+
c.weekly + hw.x52 + jdk + cc.libgraal + cc.economy_mode + suite
4346
for jdk in cc.product_jdks
4447
for suite in bench.groups.main_suites
4548
],
4649
local no_tiered_builds = std.flattenArrays([
4750
[
48-
c.monthly + hw.e3 + jdk + cc.c1 + suite,
49-
c.monthly + hw.e3 + jdk + cc.c2 + cc.no_tiered_comp + suite,
50-
c.monthly + hw.e3 + jdk + cc.libgraal + cc.economy_mode + cc.no_tiered_comp + suite
51+
c.monthly + hw.x52 + jdk + cc.c1 + suite,
52+
c.monthly + hw.x52 + jdk + cc.c2 + cc.no_tiered_comp + suite,
53+
c.monthly + hw.x52 + jdk + cc.libgraal + cc.economy_mode + cc.no_tiered_comp + suite
5154
]
5255
for jdk in cc.product_jdks
5356
for suite in bench.groups.main_suites
5457
]),
5558

5659
local gc_variants_builds = std.flattenArrays([
5760
[
58-
c.monthly + hw.e3 + jdk + cc.c2 + cc.zgc_mode + suite,
61+
c.monthly + hw.x52 + jdk + cc.c2 + cc.zgc_mode + suite,
5962
]
6063
for jdk in cc.product_jdks
6164
for suite in bench.groups.main_suites
6265
]) + std.flattenArrays([
6366
[
64-
c.monthly + hw.e3 + jdk + cc.c2 + cc.serialgc_mode + bench.microservice_benchmarks,
65-
c.monthly + hw.e3 + jdk + cc.c2 + cc.pargc_mode + bench.microservice_benchmarks,
66-
c.monthly + hw.e3 + jdk + cc.c2 + cc.zgc_mode + bench.microservice_benchmarks,
67+
c.monthly + hw.x52 + jdk + cc.c2 + cc.serialgc_mode + bench.microservice_benchmarks,
68+
c.monthly + hw.x52 + jdk + cc.c2 + cc.pargc_mode + bench.microservice_benchmarks,
69+
c.monthly + hw.x52 + jdk + cc.c2 + cc.zgc_mode + bench.microservice_benchmarks,
6770
]
6871
for jdk in cc.product_jdks
6972
]),

espresso/ci/ci_common/common.jsonnet

+7-7
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,8 @@ local benchmark_suites = ['dacapo', 'renaissance', 'scala-dacapo'];
3434
linux_amd64: self.common + self.linux + graal_common.linux_amd64,
3535
linux_aarch64: self.common + self.linux + graal_common.linux_aarch64,
3636

37-
e3: {
38-
capabilities+: ['no_frequency_scaling', 'tmpfs25g', 'e3'],
37+
x52: {
38+
capabilities+: ['no_frequency_scaling', 'tmpfs25g', 'x52'],
3939
},
4040

4141
darwin_amd64: self.common + graal_common.darwin_amd64 + {
@@ -110,15 +110,15 @@ local benchmark_suites = ['dacapo', 'renaissance', 'scala-dacapo'];
110110
jdk21_gate_darwin_amd64 : self.gate + self.darwin_amd64_21,
111111
jdk21_gate_darwin_aarch64 : self.gate + self.darwin_aarch64_21,
112112
jdk21_gate_windows_amd64 : self.gate + self.windows_21,
113-
jdk21_bench_linux : self.bench + self.linux_amd64_21 + self.e3,
113+
jdk21_bench_linux : self.bench + self.linux_amd64_21 + self.x52,
114114
jdk21_bench_darwin : self.bench + self.darwin_amd64_21,
115115
jdk21_bench_windows : self.bench + self.windows_21,
116116
jdk21_daily_linux_amd64 : self.daily + self.linux_amd64_21,
117117
jdk21_daily_linux_aarch64 : self.daily + self.linux_aarch64_21,
118118
jdk21_daily_darwin_amd64 : self.daily + self.darwin_amd64_21,
119119
jdk21_daily_darwin_aarch64 : self.daily + self.darwin_aarch64_21,
120120
jdk21_daily_windows_amd64 : self.daily + self.windows_21,
121-
jdk21_daily_bench_linux : self.dailyBench + self.linux_amd64_21 + self.e3,
121+
jdk21_daily_bench_linux : self.dailyBench + self.linux_amd64_21 + self.x52,
122122
jdk21_daily_bench_darwin : self.dailyBench + self.darwin_amd64_21,
123123
jdk21_daily_bench_windows : self.dailyBench + self.windows_21,
124124
jdk21_weekly_linux_amd64 : self.weekly + self.linux_amd64_21,
@@ -131,14 +131,14 @@ local benchmark_suites = ['dacapo', 'renaissance', 'scala-dacapo'];
131131
jdk21_monthly_darwin_amd64 : self.monthly + self.darwin_amd64_21,
132132
jdk21_monthly_darwin_aarch64 : self.monthly + self.darwin_aarch64_21,
133133
jdk21_monthly_windows_amd64 : self.monthly + self.windows_21,
134-
jdk21_weekly_bench_linux : self.weeklyBench + self.linux_amd64_21 + self.e3,
134+
jdk21_weekly_bench_linux : self.weeklyBench + self.linux_amd64_21 + self.x52,
135135
jdk21_weekly_bench_darwin : self.weeklyBench + self.darwin_amd64_21,
136136
jdk21_weekly_bench_windows : self.weeklyBench + self.windows_21,
137-
jdk21_monthly_bench_linux : self.monthlyBench + self.linux_amd64_21 + self.e3,
137+
jdk21_monthly_bench_linux : self.monthlyBench + self.linux_amd64_21 + self.x52,
138138
jdk21_on_demand_linux : self.onDemand + self.linux_amd64_21,
139139
jdk21_on_demand_darwin : self.onDemand + self.darwin_amd64_21,
140140
jdk21_on_demand_windows : self.onDemand + self.windows_21,
141-
jdk21_on_demand_bench_linux : self.onDemandBench + self.linux_amd64_21 + self.e3,
141+
jdk21_on_demand_bench_linux : self.onDemandBench + self.linux_amd64_21 + self.x52,
142142
jdk21_on_demand_bench_darwin : self.onDemandBench + self.darwin_amd64_21,
143143
jdk21_on_demand_bench_windows : self.onDemandBench + self.windows_21,
144144

truffle/ci/ci.jsonnet

+1-1
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@
200200

201201
# BENCHMARKS
202202

203-
bench_hw.e3 + common.labsjdkLatestCE + bench_common + {
203+
bench_hw.x52 + common.labsjdkLatestCE + bench_common + {
204204
name: "bench-truffle-jmh-linux-amd64",
205205
notify_groups:: ["truffle_bench"],
206206
run: [

0 commit comments

Comments
 (0)