-
Notifications
You must be signed in to change notification settings - Fork 309
Perf release gate #9068
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
base: master
Are you sure you want to change the base?
Perf release gate #9068
Conversation
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 45 metrics, 8 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.52.0-SNAPSHOT~67435a9ab7, baseline=1.52.0-SNAPSHOT~53f5d20482
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (997.575 ms) : 0, 997575
Total [baseline] (8.568 s) : 0, 8568381
Agent [candidate] (994.156 ms) : 0, 994156
Total [candidate] (8.578 s) : 0, 8577694
section iast
Agent [baseline] (1.132 s) : 0, 1132138
Total [baseline] (9.297 s) : 0, 9297156
Agent [candidate] (1.131 s) : 0, 1131278
Total [candidate] (9.253 s) : 0, 9253305
gantt
title insecure-bank - break down per module: candidate=1.52.0-SNAPSHOT~67435a9ab7, baseline=1.52.0-SNAPSHOT~53f5d20482
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (689.507 ms) : 0, 689507
BytebuddyAgent [candidate] (686.363 ms) : 0, 686363
GlobalTracer [baseline] (242.079 ms) : 0, 242079
GlobalTracer [candidate] (241.901 ms) : 0, 241901
AppSec [baseline] (30.29 ms) : 0, 30290
AppSec [candidate] (30.228 ms) : 0, 30228
Debugger [baseline] (5.985 ms) : 0, 5985
Debugger [candidate] (6.014 ms) : 0, 6014
Remote Config [baseline] (672.181 µs) : 0, 672
Remote Config [candidate] (675.39 µs) : 0, 675
Telemetry [baseline] (8.2 ms) : 0, 8200
Telemetry [candidate] (8.203 ms) : 0, 8203
section iast
BytebuddyAgent [baseline] (807.719 ms) : 0, 807719
BytebuddyAgent [candidate] (806.161 ms) : 0, 806161
GlobalTracer [baseline] (231.923 ms) : 0, 231923
GlobalTracer [candidate] (231.9 ms) : 0, 231900
IAST [baseline] (26.273 ms) : 0, 26273
IAST [candidate] (24.819 ms) : 0, 24819
AppSec [baseline] (31.106 ms) : 0, 31106
AppSec [candidate] (31.558 ms) : 0, 31558
Debugger [baseline] (5.716 ms) : 0, 5716
Debugger [candidate] (7.511 ms) : 0, 7511
Remote Config [baseline] (577.34 µs) : 0, 577
Remote Config [candidate] (586.869 µs) : 0, 587
Telemetry [baseline] (7.948 ms) : 0, 7948
Telemetry [candidate] (7.884 ms) : 0, 7884
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.52.0-SNAPSHOT~67435a9ab7, baseline=1.52.0-SNAPSHOT~53f5d20482
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (996.852 ms) : 0, 996852
Total [baseline] (10.739 s) : 0, 10739208
Agent [candidate] (1.002 s) : 0, 1002075
Total [candidate] (10.691 s) : 0, 10691005
section appsec
Agent [baseline] (1.176 s) : 0, 1175715
Total [baseline] (10.773 s) : 0, 10772711
Agent [candidate] (1.175 s) : 0, 1175437
Total [candidate] (10.734 s) : 0, 10734101
section iast
Agent [baseline] (1.135 s) : 0, 1135320
Total [baseline] (10.919 s) : 0, 10918534
Agent [candidate] (1.13 s) : 0, 1130247
Total [candidate] (10.816 s) : 0, 10815984
section profiling
Agent [baseline] (1.242 s) : 0, 1242053
Total [baseline] (10.942 s) : 0, 10942408
Agent [candidate] (1.242 s) : 0, 1242432
Total [candidate] (10.88 s) : 0, 10880495
gantt
title petclinic - break down per module: candidate=1.52.0-SNAPSHOT~67435a9ab7, baseline=1.52.0-SNAPSHOT~53f5d20482
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (687.633 ms) : 0, 687633
BytebuddyAgent [candidate] (692.378 ms) : 0, 692378
GlobalTracer [baseline] (243.066 ms) : 0, 243066
GlobalTracer [candidate] (243.127 ms) : 0, 243127
AppSec [baseline] (30.427 ms) : 0, 30427
AppSec [candidate] (30.511 ms) : 0, 30511
Debugger [baseline] (6.017 ms) : 0, 6017
Debugger [candidate] (6.039 ms) : 0, 6039
Remote Config [baseline] (682.392 µs) : 0, 682
Remote Config [candidate] (682.258 µs) : 0, 682
Telemetry [baseline] (8.241 ms) : 0, 8241
Telemetry [candidate] (8.256 ms) : 0, 8256
section appsec
BytebuddyAgent [baseline] (710.864 ms) : 0, 710864
BytebuddyAgent [candidate] (710.817 ms) : 0, 710817
GlobalTracer [baseline] (235.002 ms) : 0, 235002
GlobalTracer [candidate] (235.012 ms) : 0, 235012
IAST [baseline] (23.641 ms) : 0, 23641
IAST [candidate] (23.523 ms) : 0, 23523
AppSec [baseline] (170.839 ms) : 0, 170839
AppSec [candidate] (170.642 ms) : 0, 170642
Debugger [baseline] (5.729 ms) : 0, 5729
Debugger [candidate] (5.76 ms) : 0, 5760
Remote Config [baseline] (606.701 µs) : 0, 607
Remote Config [candidate] (603.344 µs) : 0, 603
Telemetry [baseline] (8.073 ms) : 0, 8073
Telemetry [candidate] (8.132 ms) : 0, 8132
section iast
BytebuddyAgent [baseline] (807.962 ms) : 0, 807962
BytebuddyAgent [candidate] (805.74 ms) : 0, 805740
GlobalTracer [baseline] (233.413 ms) : 0, 233413
GlobalTracer [candidate] (231.698 ms) : 0, 231698
IAST [baseline] (26.905 ms) : 0, 26905
IAST [candidate] (27.481 ms) : 0, 27481
AppSec [baseline] (30.048 ms) : 0, 30048
AppSec [candidate] (29.364 ms) : 0, 29364
Debugger [baseline] (7.501 ms) : 0, 7501
Debugger [candidate] (6.662 ms) : 0, 6662
Remote Config [baseline] (588.275 µs) : 0, 588
Remote Config [candidate] (575.729 µs) : 0, 576
Telemetry [baseline] (7.98 ms) : 0, 7980
Telemetry [candidate] (7.928 ms) : 0, 7928
section profiling
BytebuddyAgent [baseline] (676.376 ms) : 0, 676376
BytebuddyAgent [candidate] (676.4 ms) : 0, 676400
GlobalTracer [baseline] (360.683 ms) : 0, 360683
GlobalTracer [candidate] (361.271 ms) : 0, 361271
AppSec [baseline] (30.92 ms) : 0, 30920
AppSec [candidate] (31.526 ms) : 0, 31526
Debugger [baseline] (11.303 ms) : 0, 11303
Debugger [candidate] (11.271 ms) : 0, 11271
Remote Config [baseline] (676.274 µs) : 0, 676
Remote Config [candidate] (671.298 µs) : 0, 671
Telemetry [baseline] (10.246 ms) : 0, 10246
Telemetry [candidate] (8.896 ms) : 0, 8896
ProfilingAgent [baseline] (103.295 ms) : 0, 103295
ProfilingAgent [candidate] (103.858 ms) : 0, 103858
Profiling [baseline] (103.319 ms) : 0, 103319
Profiling [candidate] (103.883 ms) : 0, 103883
LoadParameters
See matching parameters
SummaryFound 3 performance improvements and 0 performance regressions! Performance is the same for 9 metrics, 12 unstable metrics.
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.52.0-SNAPSHOT~67435a9ab7, baseline=1.52.0-SNAPSHOT~53f5d20482
dateFormat X
axisFormat %s
section baseline
no_agent (38.646 ms) : 38343, 38949
. : milestone, 38646,
appsec (46.886 ms) : 46480, 47291
. : milestone, 46886,
code_origins (45.829 ms) : 45434, 46223
. : milestone, 45829,
iast (45.604 ms) : 45205, 46003
. : milestone, 45604,
profiling (48.435 ms) : 47970, 48899
. : milestone, 48435,
tracing (43.317 ms) : 42950, 43685
. : milestone, 43317,
section candidate
no_agent (35.78 ms) : 35493, 36067
. : milestone, 35780,
appsec (46.616 ms) : 46202, 47031
. : milestone, 46616,
code_origins (45.676 ms) : 45293, 46058
. : milestone, 45676,
iast (44.219 ms) : 43822, 44616
. : milestone, 44219,
profiling (48.833 ms) : 48386, 49281
. : milestone, 48833,
tracing (43.785 ms) : 43429, 44141
. : milestone, 43785,
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.52.0-SNAPSHOT~67435a9ab7, baseline=1.52.0-SNAPSHOT~53f5d20482
dateFormat X
axisFormat %s
section baseline
no_agent (4.361 ms) : 4312, 4411
. : milestone, 4361,
iast (9.173 ms) : 9023, 9322
. : milestone, 9173,
iast_FULL (13.936 ms) : 13659, 14212
. : milestone, 13936,
iast_GLOBAL (10.668 ms) : 10477, 10860
. : milestone, 10668,
profiling (8.869 ms) : 8722, 9015
. : milestone, 8869,
tracing (7.558 ms) : 7453, 7663
. : milestone, 7558,
section candidate
no_agent (4.485 ms) : 4427, 4542
. : milestone, 4485,
iast (9.378 ms) : 9228, 9529
. : milestone, 9378,
iast_FULL (13.44 ms) : 13174, 13706
. : milestone, 13440,
iast_GLOBAL (10.426 ms) : 10227, 10624
. : milestone, 10426,
profiling (8.427 ms) : 8291, 8562
. : milestone, 8427,
tracing (7.378 ms) : 7276, 7481
. : milestone, 7378,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics. Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.52.0-SNAPSHOT~67435a9ab7, baseline=1.52.0-SNAPSHOT~53f5d20482
dateFormat X
axisFormat %s
section baseline
no_agent (15.02 s) : 15020000, 15020000
. : milestone, 15020000,
appsec (14.706 s) : 14706000, 14706000
. : milestone, 14706000,
iast (18.601 s) : 18601000, 18601000
. : milestone, 18601000,
iast_GLOBAL (17.946 s) : 17946000, 17946000
. : milestone, 17946000,
profiling (15.714 s) : 15714000, 15714000
. : milestone, 15714000,
tracing (14.838 s) : 14838000, 14838000
. : milestone, 14838000,
section candidate
no_agent (15.559 s) : 15559000, 15559000
. : milestone, 15559000,
appsec (14.852 s) : 14852000, 14852000
. : milestone, 14852000,
iast (18.374 s) : 18374000, 18374000
. : milestone, 18374000,
iast_GLOBAL (17.885 s) : 17885000, 17885000
. : milestone, 17885000,
profiling (15.547 s) : 15547000, 15547000
. : milestone, 15547000,
tracing (14.889 s) : 14889000, 14889000
. : milestone, 14889000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.52.0-SNAPSHOT~67435a9ab7, baseline=1.52.0-SNAPSHOT~53f5d20482
dateFormat X
axisFormat %s
section baseline
no_agent (1.476 ms) : 1465, 1488
. : milestone, 1476,
appsec (2.422 ms) : 2372, 2472
. : milestone, 2422,
iast (2.198 ms) : 2136, 2260
. : milestone, 2198,
iast_GLOBAL (2.234 ms) : 2171, 2297
. : milestone, 2234,
profiling (2.062 ms) : 2010, 2113
. : milestone, 2062,
tracing (2.018 ms) : 1970, 2066
. : milestone, 2018,
section candidate
no_agent (1.472 ms) : 1461, 1484
. : milestone, 1472,
appsec (2.416 ms) : 2366, 2466
. : milestone, 2416,
iast (2.198 ms) : 2136, 2260
. : milestone, 2198,
iast_GLOBAL (2.24 ms) : 2178, 2303
. : milestone, 2240,
profiling (2.059 ms) : 2008, 2111
. : milestone, 2059,
tracing (2.028 ms) : 1979, 2077
. : milestone, 2028,
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good from my side! 🎉
Need also @igoragoli review for the final approval.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @bric3! 🙌
There are just some points regarding startup:petclinic.*
thresholds that need to be addressed before merging.
7e61d82
to
feb60ef
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, thanks Brice!
I think it's a good idea to include the source for the SLOs in the thresholds file, nice.
when: always | ||
- when: manual | ||
allow_failure: true | ||
- when: on_success # TODO: PLEASE revert before merging the PR |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
todo:
- To revert before merging
Still see some yellow in results, so while job won't block releases, it will send warning messages in Java guild channel.
|
Changes for reporting done! 🙂 I'm updating the |
Thanks @igoragoli ! I reran the job https://gitlab.ddbuild.io/DataDog/apm-reliability/dd-trace-java/-/jobs/1031460223, based on its results, will provide suggestions to @bric3 . |
# https://datadoghq.atlassian.net/wiki/x/LgI1LgE#Specification | ||
# Measurements | ||
# https://benchmarking.us1.prod.dog/trends?projectId=4&branch=master&trendsTab=per_scenario | ||
scenarios: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Based on the results of https://gitlab.ddbuild.io/DataDog/apm-reliability/dd-trace-java/-/jobs/1031460223, I suggest to update the SLOs to the following values:
# Standard macrobenchmarks
# https://benchmarking.us1.prod.dog/trends?projectId=4&branch=master&trendsTab=per_scenario&scenario=normal_operation%2Fonly-tracing&trendsType=scenario
- name: normal_operation/only-tracing
thresholds:
- agg_http_req_duration_p50 < 2.36 ms
- agg_http_req_duration_p99 < 7.89 ms
# https://benchmarking.us1.prod.dog/trends?projectId=4&branch=master&trendsTab=per_scenario&scenario=normal_operation%2Fotel-latest&trendsType=scenario
- name: normal_operation/otel-latest
thresholds:
- agg_http_req_duration_p50 < 2.5 ms
- agg_http_req_duration_p99 < 10 ms
# https://benchmarking.us1.prod.dog/trends?projectId=4&branch=master&trendsTab=per_scenario&scenario=high_load%2Fonly-tracing&trendsType=scenario
- name: high_load/only-tracing
thresholds:
- throughput > 1100.0 op/s
# https://benchmarking.us1.prod.dog/trends?projectId=4&branch=master&trendsTab=per_scenario&scenario=high_load%2Fotel-latest&trendsType=scenario
- name: high_load/otel-latest
thresholds:
- throughput > 1100.0 op/s
# Startup macrobenchmarks
# https://benchmarking.us1.prod.dog/trends?projectId=4&branch=master&trendsTab=per_scenario&scenario=startup%3Apetclinic%3Atracing%3AGlobalTracer&trendsType=scenario
# https://benchmarking.us1.prod.dog/trends?projectId=4&branch=master&trendsTab=per_scenario&scenario=startup%3Apetclinic%3Aappsec%3AGlobalTracer&trendsType=scenario
# https://benchmarking.us1.prod.dog/trends?projectId=4&branch=master&trendsTab=per_scenario&scenario=startup%3Apetclinic%3Aiast%3AGlobalTracer&trendsType=scenario
- name: "startup:petclinic:(tracing|appsec|iast):GlobalTracer"
thresholds:
- execution_time < 280 ms
# https://benchmarking.us1.prod.dog/trends?projectId=4&branch=master&trendsTab=per_scenario&scenario=startup%3Apetclinic%3Aprofiling%3AGlobalTracer&trendsType=scenario
- name: "startup:petclinic:profiling:GlobalTracer"
thresholds:
- execution_time < 420 ms
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Need to update some of SLO thresholds before merge.
What Does This Do
Check then notify if the release do not meet expected thresholds.
Motivation
Ensure performance thresholds.
Additional Notes
Contributor Checklist
type:
and (comp:
orinst:
) labels in addition to any usefull labelsclose
,fix
or any linking keywords when referencing an issue.Use
solves
instead, and assign the PR milestone to the issueJira ticket: [PROJ-IDENT]