1 Raw data generated by iklam on Tue Sep 30 10:14:22 AM PDT 2025
2
3 HOWTO: https://github.com/openjdk/leyden/blob/ce150637130086ad2b47916d66148007f5331a28/README.md#5-benchmarking
4
5 + bash -c 'cat /proc/cpuinfo | egrep "(vendor_id)|(model name)" | head -2'
6 vendor_id : GenuineIntel
7 model name : Intel(R) Core(TM) i7-14700
8 + bash -c 'cat /proc/cpuinfo | egrep "(processor)" | tail -1'
9 processor : 27
10 + bash -c 'cat /proc/meminfo | head -1'
11 MemTotal: 63420144 kB
12
13 + cat /etc/lsb-release
14 DISTRIB_ID=Ubuntu
15 DISTRIB_RELEASE=24.04
16 DISTRIB_CODENAME=noble
17 DISTRIB_DESCRIPTION="Ubuntu 24.04.1 LTS"
18
19 + bash -c '$BLDJDK_HOME/bin/java --version'
20 java 24 2025-03-18
21 Java(TM) SE Runtime Environment (build 24+36-3646)
22 Java HotSpot(TM) 64-Bit Server VM (build 24+36-3646, mixed mode, sharing)
23
24 + bash -c '$MAINLINE_HOME/bin/java --version'
25 java 25 2025-09-16 LTS
26 Java(TM) SE Runtime Environment (build 25+37-LTS-3491)
27 Java HotSpot(TM) 64-Bit Server VM (build 25+37-LTS-3491, mixed mode, sharing)
28
29 + bash -c '$PREMAIN_HOME/bin/java --version'
30 java 26-internal 2026-03-17
31 Java(TM) SE Runtime Environment (build 26-internal-adhoc.iklam.le4)
32 Java HotSpot(TM) 64-Bit Server VM (build 26-internal-adhoc.iklam.le4, mixed mode, sharing)
33 PREMAIN_HOME: built from https://github.com/openjdk/leyden/commit/ce150637130086ad2b47916d66148007f5331a28
34
35 ------------------------------------------------------------
36 + bash -c 'cd helidon-quickstart-se; make bench'
37 rm -f *.cds *.cds.code *.classlist *.jsa *~ *.log *.log.* hs_err_* *.aot *.aotconf
38 rm -f mainline_vs_premain.csv
39 run,mainline default,mainline custom static cds,mainline aot cache,premain aot cache
40 1,234,126,84,63
41 2,227,125,79,62
42 3,240,123,87,67
43 4,249,121,75,65
44 5,235,121,77,67
45 6,244,121,92,62
46 7,235,122,77,71
47 8,235,125,94,63
48 9,228,119,83,65
49 10,236,126,82,74
50 Geomean,236.22,122.88,82.78,65.80 (3.59x improvement)
51 Stdev,6.33,2.34,6.10,3.78
52 Markdown snippets in mainline_vs_premain.md
53 + bash -c 'cat helidon-quickstart-se/mainline_vs_premain.md'
54 ```mermaid
55 ---
56 config:
57 theme: "forest"
58 xyChart:
59 chartOrientation: horizontal
60 height: 300
61 ---
62 xychart-beta
63 x-axis "variant" ["mainline default", "mainline custom static cds", "mainline aot cache", "premain aot cache"]
64 y-axis "Elapsed time (ms, smaller is better)" 0 --> 236.22
65 bar [236.22, 122.88, 82.78, 65.80]
66 ```
67
68 -----------------Normalized---------------------------------------------
69 ```mermaid
70 ---
71 config:
72 theme: "forest"
73 xyChart:
74 chartOrientation: horizontal
75 height: 300
76 ---
77 xychart-beta
78 x-axis "variant" ["mainline default", "mainline custom static cds", "mainline aot cache", "premain aot cache"]
79 y-axis "Elapsed time (normalized, smaller is better)" 0 --> 1000
80 bar [1000, 520, 350, 279]
81 ```
82
83 ------------------------------------------------------------
84 + bash -c 'cd javac_bench; make bench'
85 rm -f *.class *.jar tmp.txt
86 rm -f mainline_vs_premain.csv
87 run,mainline default,mainline custom static cds,mainline aot cache,premain aot cache
88 1,461,376,264,212
89 2,477,361,275,211
90 3,475,373,269,206
91 4,458,386,264,209
92 5,471,362,276,227
93 6,468,358,260,208
94 7,464,374,285,211
95 8,464,362,262,213
96 9,468,371,261,210
97 10,485,359,266,213
98 Geomean,469.04,368.10,268.09,211.93 (2.21x improvement)
99 Stdev,7.73,8.72,7.67,5.42
100 Markdown snippets in mainline_vs_premain.md
101 + bash -c 'cat javac_bench/mainline_vs_premain.md'
102 ```mermaid
103 ---
104 config:
105 theme: "forest"
106 xyChart:
107 chartOrientation: horizontal
108 height: 300
109 ---
110 xychart-beta
111 x-axis "variant" ["mainline default", "mainline custom static cds", "mainline aot cache", "premain aot cache"]
112 y-axis "Elapsed time (ms, smaller is better)" 0 --> 469.04
113 bar [469.04, 368.10, 268.09, 211.93]
114 ```
115
116 -----------------Normalized---------------------------------------------
117 ```mermaid
118 ---
119 config:
120 theme: "forest"
121 xyChart:
122 chartOrientation: horizontal
123 height: 300
124 ---
125 xychart-beta
126 x-axis "variant" ["mainline default", "mainline custom static cds", "mainline aot cache", "premain aot cache"]
127 y-axis "Elapsed time (normalized, smaller is better)" 0 --> 1000
128 bar [1000, 785, 572, 452]
129 ```
130
131 ------------------------------------------------------------
132 + bash -c 'cd micronaut-first-app; make bench'
133 rm -f *.cds *.cds.code *.classlist *.jsa *~ *.log *.log.* hs_err_* *.aot *.aotconf
134 rm -f mainline_vs_premain.csv
135 run,mainline default,mainline custom static cds,mainline aot cache,premain aot cache
136 1,317,158,116,116
137 2,322,161,140,104
138 3,309,153,119,110
139 4,325,141,116,97
140 5,315,151,122,99
141 6,323,160,132,111
142 7,315,148,119,110
143 8,308,150,129,118
144 9,317,153,116,104
145 10,316,153,119,124
146 Geomean,316.66,152.69,122.57,109.00 (2.91x improvement)
147 Stdev,5.27,5.65,7.76,8.09
148 Markdown snippets in mainline_vs_premain.md
149 + bash -c 'cat micronaut-first-app/mainline_vs_premain.md'
150 ```mermaid
151 ---
152 config:
153 theme: "forest"
154 xyChart:
155 chartOrientation: horizontal
156 height: 300
157 ---
158 xychart-beta
159 x-axis "variant" ["mainline default", "mainline custom static cds", "mainline aot cache", "premain aot cache"]
160 y-axis "Elapsed time (ms, smaller is better)" 0 --> 316.66
161 bar [316.66, 152.69, 122.57, 109.00]
162 ```
163
164 -----------------Normalized---------------------------------------------
165 ```mermaid
166 ---
167 config:
168 theme: "forest"
169 xyChart:
170 chartOrientation: horizontal
171 height: 300
172 ---
173 xychart-beta
174 x-axis "variant" ["mainline default", "mainline custom static cds", "mainline aot cache", "premain aot cache"]
175 y-axis "Elapsed time (normalized, smaller is better)" 0 --> 1000
176 bar [1000, 482, 387, 344]
177 ```
178
179 ------------------------------------------------------------
180 + bash -c 'cd quarkus-getting-started; make bench'
181 rm -f *.cds *.cds.code *.classlist *.jsa *~ *.log *.log.* hs_err_* *.aot *.aotconf
182 rm -f mainline_vs_premain.csv
183 run,mainline default,mainline custom static cds,mainline aot cache,premain aot cache
184 1,347,169,143,114
185 2,343,180,148,117
186 3,328,170,158,128
187 4,341,167,140,107
188 5,350,161,136,115
189 6,351,176,138,117
190 7,347,172,137,103
191 8,340,174,135,112
192 9,352,178,158,129
193 10,334,168,140,118
194 Geomean,343.22,171.41,143.08,115.75 (2.97x improvement)
195 Stdev,7.38,5.41,8.16,7.68
196 Markdown snippets in mainline_vs_premain.md
197 + bash -c 'cat quarkus-getting-started/mainline_vs_premain.md'
198 ```mermaid
199 ---
200 config:
201 theme: "forest"
202 xyChart:
203 chartOrientation: horizontal
204 height: 300
205 ---
206 xychart-beta
207 x-axis "variant" ["mainline default", "mainline custom static cds", "mainline aot cache", "premain aot cache"]
208 y-axis "Elapsed time (ms, smaller is better)" 0 --> 343.22
209 bar [343.22, 171.41, 143.08, 115.75]
210 ```
211
212 -----------------Normalized---------------------------------------------
213 ```mermaid
214 ---
215 config:
216 theme: "forest"
217 xyChart:
218 chartOrientation: horizontal
219 height: 300
220 ---
221 xychart-beta
222 x-axis "variant" ["mainline default", "mainline custom static cds", "mainline aot cache", "premain aot cache"]
223 y-axis "Elapsed time (normalized, smaller is better)" 0 --> 1000
224 bar [1000, 499, 417, 337]
225 ```
226
227 ------------------------------------------------------------
228 + bash -c 'cd spring-boot-getting-started; make bench'
229 rm -f *.cds *.cds.code *.classlist *.jsa *~ *.log *.log.* hs_err_* tmp.txt *.aot *.aotconf
230 rm -f mainline_vs_premain.csv
231 run,mainline default,mainline custom static cds,mainline aot cache,premain aot cache
232 1,493,244,163,114
233 2,508,246,166,148
234 3,493,244,164,115
235 4,493,246,163,117
236 5,498,242,162,120
237 6,494,247,167,123
238 7,504,241,165,112
239 8,496,247,173,119
240 9,504,251,166,127
241 10,492,242,163,113
242 Geomean,497.47,244.98,165.17,120.41 (4.13x improvement)
243 Stdev,5.48,2.86,3.03,10.10
244 Markdown snippets in mainline_vs_premain.md
245 + bash -c 'cat spring-boot-getting-started/mainline_vs_premain.md'
246 ```mermaid
247 ---
248 config:
249 theme: "forest"
250 xyChart:
251 chartOrientation: horizontal
252 height: 300
253 ---
254 xychart-beta
255 x-axis "variant" ["mainline default", "mainline custom static cds", "mainline aot cache", "premain aot cache"]
256 y-axis "Elapsed time (ms, smaller is better)" 0 --> 497.47
257 bar [497.47, 244.98, 165.17, 120.41]
258 ```
259
260 -----------------Normalized---------------------------------------------
261 ```mermaid
262 ---
263 config:
264 theme: "forest"
265 xyChart:
266 chartOrientation: horizontal
267 height: 300
268 ---
269 xychart-beta
270 x-axis "variant" ["mainline default", "mainline custom static cds", "mainline aot cache", "premain aot cache"]
271 y-axis "Elapsed time (normalized, smaller is better)" 0 --> 1000
272 bar [1000, 492, 332, 242]
273 ```
274
275 ------------------------------------------------------------
276 + bash -c 'cd spring-petclinic; make bench'
277 rm -f spring-petclinic.* *.aot *.aotconf
278 rm -f mainline_vs_premain.csv
279 run,mainline default,mainline custom static cds,mainline aot cache,premain aot cache
280 1,2102,1264,1165,678
281 2,2174,1237,1126,680
282 3,2139,1256,1140,679
283 4,2158,1428,1288,673
284 5,2320,1550,1358,684
285 6,2259,1470,1371,685
286 7,2415,1460,1336,671
287 8,2309,1452,1342,674
288 9,2346,1427,1348,677
289 10,2312,1418,1337,668
290 Geomean,2251.24,1392.48,1277.62,676.88 (3.33x improvement)
291 Stdev,98.54,100.60,92.63,5.19
292 Markdown snippets in mainline_vs_premain.md
293 + bash -c 'cat spring-petclinic/mainline_vs_premain.md'
294 ```mermaid
295 ---
296 config:
297 theme: "forest"
298 xyChart:
299 chartOrientation: horizontal
300 height: 300
301 ---
302 xychart-beta
303 x-axis "variant" ["mainline default", "mainline custom static cds", "mainline aot cache", "premain aot cache"]
304 y-axis "Elapsed time (ms, smaller is better)" 0 --> 2251.24
305 bar [2251.24, 1392.48, 1277.62, 676.88]
306 ```
307
308 -----------------Normalized---------------------------------------------
309 ```mermaid
310 ---
311 config:
312 theme: "forest"
313 xyChart:
314 chartOrientation: horizontal
315 height: 300
316 ---
317 xychart-beta
318 x-axis "variant" ["mainline default", "mainline custom static cds", "mainline aot cache", "premain aot cache"]
319 y-axis "Elapsed time (normalized, smaller is better)" 0 --> 1000
320 bar [1000, 619, 568, 301]
321 ```
322