Skip to content

Fix benchmark failures and improve results quality #8962

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 56 commits into from
Jun 18, 2025

Conversation

ddyurchenko
Copy link
Contributor

@ddyurchenko ddyurchenko commented Jun 11, 2025

What Does This Do

After updating JVM from 17.0.11 to 17.0.15 in benchmarking Docker image, we experienced slowdown of performance in both macro- and microbenchmarks. As result, some of benchmark runs started failing on timeouts or creep CI performance.

This PR fixes the issue with insecure bank and petclinic apps, and also addresses data quality issue with warmup time, since before we included it into results comparison and skewed results.

Motivation

Fix benchmark runs, make sure that we have results stable and reported again.

Additional Notes

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@pr-commenter
Copy link

pr-commenter bot commented Jun 11, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master ddyurchenko/fix-load-tests
git_commit_date 1750176286 1750250898
git_commit_sha 72f45a8 e3de508
release_version 1.50.0-SNAPSHOT~72f45a8563 1.50.0-SNAPSHOT~e3de5081c7
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1750252848 1750252848
ci_job_id 987925555 987925555
ci_pipeline_id 68102283 68102283
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-gwdwwxyf-project-304-concurrent-0-dd736qn5 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-gwdwwxyf-project-304-concurrent-0-dd736qn5 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 44 metrics, 9 unstable metrics.

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.50.0-SNAPSHOT~e3de5081c7, baseline=1.50.0-SNAPSHOT~72f45a8563

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.035 s) : 0, 1034811
Total [baseline] (8.523 s) : 0, 8522989
Agent [candidate] (1.027 s) : 0, 1026584
Total [candidate] (8.519 s) : 0, 8518785
section iast
Agent [baseline] (1.164 s) : 0, 1164483
Total [baseline] (9.235 s) : 0, 9234670
Agent [candidate] (1.155 s) : 0, 1154833
Total [candidate] (9.233 s) : 0, 9233273
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.035 s -
Agent iast 1.164 s 129.672 ms (12.5%)
Total tracing 8.523 s -
Total iast 9.235 s 711.68 ms (8.4%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.027 s -
Agent iast 1.155 s 128.25 ms (12.5%)
Total tracing 8.519 s -
Total iast 9.233 s 714.488 ms (8.4%)
gantt
    title insecure-bank - break down per module: candidate=1.50.0-SNAPSHOT~e3de5081c7, baseline=1.50.0-SNAPSHOT~72f45a8563

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (689.135 ms) : 0, 689135
BytebuddyAgent [candidate] (683.578 ms) : 0, 683578
GlobalTracer [baseline] (242.508 ms) : 0, 242508
GlobalTracer [candidate] (240.983 ms) : 0, 240983
AppSec [baseline] (59.896 ms) : 0, 59896
AppSec [candidate] (58.971 ms) : 0, 58971
Debugger [baseline] (6.137 ms) : 0, 6137
Debugger [candidate] (6.164 ms) : 0, 6164
Remote Config [baseline] (731.997 µs) : 0, 732
Remote Config [candidate] (744.127 µs) : 0, 744
Telemetry [baseline] (12.744 ms) : 0, 12744
Telemetry [candidate] (12.802 ms) : 0, 12802
section iast
BytebuddyAgent [baseline] (811.085 ms) : 0, 811085
BytebuddyAgent [candidate] (804.189 ms) : 0, 804189
GlobalTracer [baseline] (233.157 ms) : 0, 233157
GlobalTracer [candidate] (231.017 ms) : 0, 231017
AppSec [baseline] (54.917 ms) : 0, 54917
AppSec [candidate] (53.996 ms) : 0, 53996
Debugger [baseline] (5.99 ms) : 0, 5990
Debugger [candidate] (5.959 ms) : 0, 5959
Remote Config [baseline] (590.799 µs) : 0, 591
Remote Config [candidate] (588.825 µs) : 0, 589
Telemetry [baseline] (7.921 ms) : 0, 7921
Telemetry [candidate] (7.974 ms) : 0, 7974
IAST [baseline] (27.223 ms) : 0, 27223
IAST [candidate] (27.664 ms) : 0, 27664
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.50.0-SNAPSHOT~e3de5081c7, baseline=1.50.0-SNAPSHOT~72f45a8563

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.036 s) : 0, 1036094
Total [baseline] (10.721 s) : 0, 10721449
Agent [candidate] (1.03 s) : 0, 1030285
Total [candidate] (10.614 s) : 0, 10614410
section appsec
Agent [baseline] (1.185 s) : 0, 1184885
Total [baseline] (10.786 s) : 0, 10785759
Agent [candidate] (1.179 s) : 0, 1179370
Total [candidate] (10.787 s) : 0, 10787458
section iast
Agent [baseline] (1.153 s) : 0, 1152693
Total [baseline] (11.022 s) : 0, 11022412
Agent [candidate] (1.155 s) : 0, 1154860
Total [candidate] (10.872 s) : 0, 10871626
section profiling
Agent [baseline] (1.279 s) : 0, 1278925
Total [baseline] (10.95 s) : 0, 10950341
Agent [candidate] (1.273 s) : 0, 1273092
Total [candidate] (10.943 s) : 0, 10942677
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.036 s -
Agent appsec 1.185 s 148.791 ms (14.4%)
Agent iast 1.153 s 116.599 ms (11.3%)
Agent profiling 1.279 s 242.831 ms (23.4%)
Total tracing 10.721 s -
Total appsec 10.786 s 64.311 ms (0.6%)
Total iast 11.022 s 300.964 ms (2.8%)
Total profiling 10.95 s 228.892 ms (2.1%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.03 s -
Agent appsec 1.179 s 149.085 ms (14.5%)
Agent iast 1.155 s 124.576 ms (12.1%)
Agent profiling 1.273 s 242.807 ms (23.6%)
Total tracing 10.614 s -
Total appsec 10.787 s 173.048 ms (1.6%)
Total iast 10.872 s 257.216 ms (2.4%)
Total profiling 10.943 s 328.267 ms (3.1%)
gantt
    title petclinic - break down per module: candidate=1.50.0-SNAPSHOT~e3de5081c7, baseline=1.50.0-SNAPSHOT~72f45a8563

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (689.874 ms) : 0, 689874
BytebuddyAgent [candidate] (685.219 ms) : 0, 685219
GlobalTracer [baseline] (242.746 ms) : 0, 242746
GlobalTracer [candidate] (241.816 ms) : 0, 241816
AppSec [baseline] (62.193 ms) : 0, 62193
AppSec [candidate] (60.712 ms) : 0, 60712
Debugger [baseline] (6.138 ms) : 0, 6138
Debugger [candidate] (6.922 ms) : 0, 6922
Remote Config [baseline] (741.16 µs) : 0, 741
Remote Config [candidate] (736.445 µs) : 0, 736
Telemetry [baseline] (10.593 ms) : 0, 10593
Telemetry [candidate] (11.379 ms) : 0, 11379
section appsec
BytebuddyAgent [baseline] (709.252 ms) : 0, 709252
BytebuddyAgent [candidate] (706.81 ms) : 0, 706810
GlobalTracer [baseline] (236.753 ms) : 0, 236753
GlobalTracer [candidate] (234.917 ms) : 0, 234917
AppSec [baseline] (179.594 ms) : 0, 179594
AppSec [candidate] (178.838 ms) : 0, 178838
Debugger [baseline] (5.885 ms) : 0, 5885
Debugger [candidate] (5.841 ms) : 0, 5841
Remote Config [baseline] (619.212 µs) : 0, 619
Remote Config [candidate] (602.423 µs) : 0, 602
Telemetry [baseline] (7.302 ms) : 0, 7302
Telemetry [candidate] (7.202 ms) : 0, 7202
IAST [baseline] (21.997 ms) : 0, 21997
IAST [candidate] (21.703 ms) : 0, 21703
section iast
BytebuddyAgent [baseline] (802.113 ms) : 0, 802113
BytebuddyAgent [candidate] (804.133 ms) : 0, 804133
GlobalTracer [baseline] (230.697 ms) : 0, 230697
GlobalTracer [candidate] (231.056 ms) : 0, 231056
AppSec [baseline] (56.685 ms) : 0, 56685
AppSec [candidate] (55.642 ms) : 0, 55642
Debugger [baseline] (6.013 ms) : 0, 6013
Debugger [candidate] (5.949 ms) : 0, 5949
Remote Config [baseline] (593.947 µs) : 0, 594
Remote Config [candidate] (605.526 µs) : 0, 606
Telemetry [baseline] (7.9 ms) : 0, 7900
Telemetry [candidate] (7.842 ms) : 0, 7842
IAST [baseline] (25.222 ms) : 0, 25222
IAST [candidate] (26.142 ms) : 0, 26142
section profiling
BytebuddyAgent [baseline] (679.578 ms) : 0, 679578
BytebuddyAgent [candidate] (676.185 ms) : 0, 676185
GlobalTracer [baseline] (361.871 ms) : 0, 361871
GlobalTracer [candidate] (360.225 ms) : 0, 360225
AppSec [baseline] (64.314 ms) : 0, 64314
AppSec [candidate] (64.474 ms) : 0, 64474
Debugger [baseline] (6.197 ms) : 0, 6197
Debugger [candidate] (6.162 ms) : 0, 6162
Remote Config [baseline] (667.56 µs) : 0, 668
Remote Config [candidate] (660.839 µs) : 0, 661
Telemetry [baseline] (8.223 ms) : 0, 8223
Telemetry [candidate] (8.155 ms) : 0, 8155
ProfilingAgent [baseline] (107.019 ms) : 0, 107019
ProfilingAgent [candidate] (106.372 ms) : 0, 106372
Profiling [baseline] (107.044 ms) : 0, 107044
Profiling [candidate] (106.396 ms) : 0, 106396
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master ddyurchenko/fix-load-tests
git_commit_date 1750176286 1750250898
git_commit_sha 72f45a8 e3de508
release_version 1.50.0-SNAPSHOT~72f45a8563 1.50.0-SNAPSHOT~e3de5081c7
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1750252542 1750252542
ci_job_id 987925556 987925556
ci_pipeline_id 68102283 68102283
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-jp348zax-project-304-concurrent-0-e45ht2ru 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-jp348zax-project-304-concurrent-0-e45ht2ru 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 1 performance improvements and 1 performance regressions! Performance is the same for 10 metrics, 12 unstable metrics.

scenario Δ mean http_req_duration Δ mean throughput candidate mean http_req_duration candidate mean throughput baseline mean http_req_duration baseline mean throughput
scenario:load:insecure-bank:iast_FULL:high_load worse
[+432.688µs; +1036.769µs] or [+3.142%; +7.528%]
unstable
[-55.442op/s; +21.504op/s] or [-16.391%; +6.358%]
14.507ms 321.281op/s 13.772ms 338.250op/s
scenario:load:petclinic:appsec:high_load better
[-2.180ms; -1.300ms] or [-4.568%; -2.724%]
unstable
[-3.887op/s; +11.287op/s] or [-3.963%; +11.507%]
45.978ms 101.787op/s 47.718ms 98.088op/s
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.50.0-SNAPSHOT~e3de5081c7, baseline=1.50.0-SNAPSHOT~72f45a8563
    dateFormat X
    axisFormat %s
section baseline
no_agent (36.997 ms) : 36698, 37295
.   : milestone, 36997,
appsec (47.718 ms) : 47299, 48137
.   : milestone, 47718,
code_origins (44.506 ms) : 44134, 44878
.   : milestone, 44506,
iast (43.875 ms) : 43505, 44245
.   : milestone, 43875,
profiling (49.337 ms) : 48857, 49818
.   : milestone, 49337,
tracing (44.731 ms) : 44368, 45094
.   : milestone, 44731,
section candidate
no_agent (36.876 ms) : 36573, 37178
.   : milestone, 36876,
appsec (45.978 ms) : 45579, 46377
.   : milestone, 45978,
code_origins (44.696 ms) : 44336, 45055
.   : milestone, 44696,
iast (44.73 ms) : 44328, 45131
.   : milestone, 44730,
profiling (48.378 ms) : 47931, 48825
.   : milestone, 48378,
tracing (44.762 ms) : 44392, 45132
.   : milestone, 44762,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 36.997 ms [36.698 ms, 37.295 ms] -
appsec 47.718 ms [47.299 ms, 48.137 ms] 10.721 ms (29.0%)
code_origins 44.506 ms [44.134 ms, 44.878 ms] 7.509 ms (20.3%)
iast 43.875 ms [43.505 ms, 44.245 ms] 6.878 ms (18.6%)
profiling 49.337 ms [48.857 ms, 49.818 ms] 12.341 ms (33.4%)
tracing 44.731 ms [44.368 ms, 45.094 ms] 7.734 ms (20.9%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 36.876 ms [36.573 ms, 37.178 ms] -
appsec 45.978 ms [45.579 ms, 46.377 ms] 9.103 ms (24.7%)
code_origins 44.696 ms [44.336 ms, 45.055 ms] 7.82 ms (21.2%)
iast 44.73 ms [44.328 ms, 45.131 ms] 7.854 ms (21.3%)
profiling 48.378 ms [47.931 ms, 48.825 ms] 11.502 ms (31.2%)
tracing 44.762 ms [44.392 ms, 45.132 ms] 7.886 ms (21.4%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.50.0-SNAPSHOT~e3de5081c7, baseline=1.50.0-SNAPSHOT~72f45a8563
    dateFormat X
    axisFormat %s
section baseline
no_agent (4.411 ms) : 4357, 4466
.   : milestone, 4411,
iast (9.283 ms) : 9133, 9432
.   : milestone, 9283,
iast_FULL (13.772 ms) : 13500, 14044
.   : milestone, 13772,
iast_GLOBAL (10.219 ms) : 10036, 10402
.   : milestone, 10219,
profiling (9.022 ms) : 8882, 9163
.   : milestone, 9022,
tracing (7.626 ms) : 7503, 7748
.   : milestone, 7626,
section candidate
no_agent (4.42 ms) : 4368, 4473
.   : milestone, 4420,
iast (9.076 ms) : 8928, 9224
.   : milestone, 9076,
iast_FULL (14.507 ms) : 14218, 14796
.   : milestone, 14507,
iast_GLOBAL (10.047 ms) : 9861, 10234
.   : milestone, 10047,
profiling (8.928 ms) : 8789, 9067
.   : milestone, 8928,
tracing (7.755 ms) : 7640, 7870
.   : milestone, 7755,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.411 ms [4.357 ms, 4.466 ms] -
iast 9.283 ms [9.133 ms, 9.432 ms] 4.871 ms (110.4%)
iast_FULL 13.772 ms [13.5 ms, 14.044 ms] 9.361 ms (212.2%)
iast_GLOBAL 10.219 ms [10.036 ms, 10.402 ms] 5.808 ms (131.7%)
profiling 9.022 ms [8.882 ms, 9.163 ms] 4.611 ms (104.5%)
tracing 7.626 ms [7.503 ms, 7.748 ms] 3.214 ms (72.9%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.42 ms [4.368 ms, 4.473 ms] -
iast 9.076 ms [8.928 ms, 9.224 ms] 4.656 ms (105.3%)
iast_FULL 14.507 ms [14.218 ms, 14.796 ms] 10.087 ms (228.2%)
iast_GLOBAL 10.047 ms [9.861 ms, 10.234 ms] 5.627 ms (127.3%)
profiling 8.928 ms [8.789 ms, 9.067 ms] 4.508 ms (102.0%)
tracing 7.755 ms [7.64 ms, 7.87 ms] 3.335 ms (75.4%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master ddyurchenko/fix-load-tests
git_commit_date 1750176286 1750250898
git_commit_sha 72f45a8 e3de508
release_version 1.50.0-SNAPSHOT~72f45a8563 1.50.0-SNAPSHOT~e3de5081c7
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1750253001 1750253001
ci_job_id 987925557 987925557
ci_pipeline_id 68102283 68102283
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-gwdwwxyf-project-304-concurrent-1-51c0qvjr 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-gwdwwxyf-project-304-concurrent-1-51c0qvjr 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics.

Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.50.0-SNAPSHOT~e3de5081c7, baseline=1.50.0-SNAPSHOT~72f45a8563
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.473 ms) : 1461, 1484
.   : milestone, 1473,
appsec (2.415 ms) : 2366, 2464
.   : milestone, 2415,
iast (2.185 ms) : 2124, 2247
.   : milestone, 2185,
iast_GLOBAL (2.228 ms) : 2166, 2290
.   : milestone, 2228,
profiling (2.036 ms) : 1987, 2085
.   : milestone, 2036,
tracing (2.004 ms) : 1956, 2051
.   : milestone, 2004,
section candidate
no_agent (1.479 ms) : 1467, 1490
.   : milestone, 1479,
appsec (2.406 ms) : 2357, 2455
.   : milestone, 2406,
iast (2.194 ms) : 2132, 2256
.   : milestone, 2194,
iast_GLOBAL (2.231 ms) : 2169, 2293
.   : milestone, 2231,
profiling (2.03 ms) : 1981, 2079
.   : milestone, 2030,
tracing (2.007 ms) : 1959, 2055
.   : milestone, 2007,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.473 ms [1.461 ms, 1.484 ms] -
appsec 2.415 ms [2.366 ms, 2.464 ms] 942.478 µs (64.0%)
iast 2.185 ms [2.124 ms, 2.247 ms] 712.803 µs (48.4%)
iast_GLOBAL 2.228 ms [2.166 ms, 2.29 ms] 755.263 µs (51.3%)
profiling 2.036 ms [1.987 ms, 2.085 ms] 563.365 µs (38.3%)
tracing 2.004 ms [1.956 ms, 2.051 ms] 531.155 µs (36.1%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.479 ms [1.467 ms, 1.49 ms] -
appsec 2.406 ms [2.357 ms, 2.455 ms] 927.564 µs (62.7%)
iast 2.194 ms [2.132 ms, 2.256 ms] 715.125 µs (48.4%)
iast_GLOBAL 2.231 ms [2.169 ms, 2.293 ms] 752.259 µs (50.9%)
profiling 2.03 ms [1.981 ms, 2.079 ms] 551.252 µs (37.3%)
tracing 2.007 ms [1.959 ms, 2.055 ms] 528.591 µs (35.8%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.50.0-SNAPSHOT~e3de5081c7, baseline=1.50.0-SNAPSHOT~72f45a8563
    dateFormat X
    axisFormat %s
section baseline
no_agent (15.091 s) : 15091000, 15091000
.   : milestone, 15091000,
appsec (14.877 s) : 14877000, 14877000
.   : milestone, 14877000,
iast (19.129 s) : 19129000, 19129000
.   : milestone, 19129000,
iast_GLOBAL (18.039 s) : 18039000, 18039000
.   : milestone, 18039000,
profiling (15.176 s) : 15176000, 15176000
.   : milestone, 15176000,
tracing (14.976 s) : 14976000, 14976000
.   : milestone, 14976000,
section candidate
no_agent (14.968 s) : 14968000, 14968000
.   : milestone, 14968000,
appsec (14.79 s) : 14790000, 14790000
.   : milestone, 14790000,
iast (18.963 s) : 18963000, 18963000
.   : milestone, 18963000,
iast_GLOBAL (17.861 s) : 17861000, 17861000
.   : milestone, 17861000,
profiling (15.106 s) : 15106000, 15106000
.   : milestone, 15106000,
tracing (14.935 s) : 14935000, 14935000
.   : milestone, 14935000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.091 s [15.091 s, 15.091 s] -
appsec 14.877 s [14.877 s, 14.877 s] -214.0 ms (-1.4%)
iast 19.129 s [19.129 s, 19.129 s] 4.038 s (26.8%)
iast_GLOBAL 18.039 s [18.039 s, 18.039 s] 2.948 s (19.5%)
profiling 15.176 s [15.176 s, 15.176 s] 85.0 ms (0.6%)
tracing 14.976 s [14.976 s, 14.976 s] -115.0 ms (-0.8%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.968 s [14.968 s, 14.968 s] -
appsec 14.79 s [14.79 s, 14.79 s] -178.0 ms (-1.2%)
iast 18.963 s [18.963 s, 18.963 s] 3.995 s (26.7%)
iast_GLOBAL 17.861 s [17.861 s, 17.861 s] 2.893 s (19.3%)
profiling 15.106 s [15.106 s, 15.106 s] 138.0 ms (0.9%)
tracing 14.935 s [14.935 s, 14.935 s] -33.0 ms (-0.2%)

@ddyurchenko ddyurchenko changed the title fix: Add CPU affinity to load benchmarks Fix benchmark failures and improve results quality Jun 13, 2025
@ddyurchenko ddyurchenko marked this pull request as ready for review June 13, 2025 15:11
@ddyurchenko ddyurchenko requested review from a team as code owners June 13, 2025 15:11
@ddyurchenko ddyurchenko requested review from AlexeyKuznetsov-DD and pawelchcki and removed request for a team June 13, 2025 15:11
Copy link
Contributor

Hi! 👋 Thanks for your pull request! 🎉

To help us review it, please make sure to:

  • Add at least one type, and one component or instrumentation label to the pull request

If you need help, please check our contributing guidelines.

@ddyurchenko ddyurchenko added the tag: no release notes Changes to exclude from release notes label Jun 13, 2025
@manuel-alvarez-alvarez
Copy link
Member

LGTM thanks for the update!

Comment on lines 4 to 5
"service": "bash -c \"${CPU_AFFINITY_K6}${UTILS_DIR}/run-k6-load-test.sh http://localhost:8080 ${OUTPUT_DIR}/${VARIANT} 'pkill java'\"",
"run": "bash -c \"${CPU_AFFINITY_APP}java ${JAVA_OPTS} -Xms2G -Xmx2G -jar ${PETCLINIC} &> ${OUTPUT_DIR}/${VARIANT}/petclinic.log\"",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nitpick: Wouldn't it be better to have a space there after the variable. i.e. to avoid assumptions this new env variable will have a trailing space. This shouldn't be an issue for bash -c

@ddyurchenko ddyurchenko force-pushed the ddyurchenko/fix-load-tests branch 3 times, most recently from 121d51e to b7d0061 Compare June 16, 2025 14:07
Comment on lines 6 to 7
export CPU_AFFINITY_K6="taskset -c 25-26 "
export CPU_AFFINITY_APP="taskset -c 27-47 "
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you sure that the CPU topology on the machine is always the same?

Copy link
Contributor Author

@ddyurchenko ddyurchenko Jun 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, this is guaranteed. We explicitly allocate for metal runners cores 0-23 (CPU socket 1) to system tasks and cores 24-47 (CPU socket 2) for benchmarks.

@ddyurchenko ddyurchenko force-pushed the ddyurchenko/fix-load-tests branch from e7a237b to e3de508 Compare June 18, 2025 12:48
@manuel-alvarez-alvarez manuel-alvarez-alvarez merged commit 901a12d into master Jun 18, 2025
484 checks passed
@manuel-alvarez-alvarez manuel-alvarez-alvarez deleted the ddyurchenko/fix-load-tests branch June 18, 2025 14:29
@github-actions github-actions bot added this to the 1.50.0 milestone Jun 18, 2025
sarahchen6 pushed a commit that referenced this pull request Jun 18, 2025
Fix benchmark failures and improve results quality
@PerfectSlayer PerfectSlayer added the comp: tooling Build & Tooling label Jun 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp: tooling Build & Tooling tag: no release notes Changes to exclude from release notes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants