-
Notifications
You must be signed in to change notification settings - Fork 312
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
Perf release gate #9068
Conversation
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 49 metrics, 10 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.52.0-SNAPSHOT~df915f0a03, baseline=1.52.0-SNAPSHOT~d1794c17af
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.043 s) : 0, 1043390
Total [baseline] (10.692 s) : 0, 10692369
Agent [candidate] (1.04 s) : 0, 1039928
Total [candidate] (10.702 s) : 0, 10702188
section appsec
Agent [baseline] (1.214 s) : 0, 1213686
Total [baseline] (10.824 s) : 0, 10823993
Agent [candidate] (1.216 s) : 0, 1216395
Total [candidate] (10.77 s) : 0, 10770023
section iast
Agent [baseline] (1.186 s) : 0, 1185650
Total [baseline] (10.897 s) : 0, 10896987
Agent [candidate] (1.171 s) : 0, 1171480
Total [candidate] (10.982 s) : 0, 10981897
section profiling
Agent [baseline] (1.184 s) : 0, 1183973
Total [baseline] (10.93 s) : 0, 10929792
Agent [candidate] (1.184 s) : 0, 1183632
Total [candidate] (10.937 s) : 0, 10936649
gantt
title petclinic - break down per module: candidate=1.52.0-SNAPSHOT~df915f0a03, baseline=1.52.0-SNAPSHOT~d1794c17af
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.438 ms) : 0, 1438
crashtracking [candidate] (1.428 ms) : 0, 1428
BytebuddyAgent [baseline] (733.131 ms) : 0, 733131
BytebuddyAgent [candidate] (730.932 ms) : 0, 730932
GlobalTracer [baseline] (242.267 ms) : 0, 242267
GlobalTracer [candidate] (241.265 ms) : 0, 241265
AppSec [baseline] (30.577 ms) : 0, 30577
AppSec [candidate] (30.506 ms) : 0, 30506
Debugger [baseline] (6.031 ms) : 0, 6031
Debugger [candidate] (6.016 ms) : 0, 6016
Remote Config [baseline] (662.859 µs) : 0, 663
Remote Config [candidate] (649.928 µs) : 0, 650
Telemetry [baseline] (8.247 ms) : 0, 8247
Telemetry [candidate] (8.192 ms) : 0, 8192
section appsec
crashtracking [baseline] (1.439 ms) : 0, 1439
crashtracking [candidate] (1.434 ms) : 0, 1434
BytebuddyAgent [baseline] (748.779 ms) : 0, 748779
BytebuddyAgent [candidate] (750.853 ms) : 0, 750853
GlobalTracer [baseline] (233.218 ms) : 0, 233218
GlobalTracer [candidate] (234.472 ms) : 0, 234472
AppSec [baseline] (166.829 ms) : 0, 166829
AppSec [candidate] (168.234 ms) : 0, 168234
Debugger [baseline] (9.45 ms) : 0, 9450
Debugger [candidate] (7.164 ms) : 0, 7164
Remote Config [baseline] (612.387 µs) : 0, 612
Remote Config [candidate] (607.646 µs) : 0, 608
Telemetry [baseline] (8.895 ms) : 0, 8895
Telemetry [candidate] (8.794 ms) : 0, 8794
IAST [baseline] (23.3 ms) : 0, 23300
IAST [candidate] (23.7 ms) : 0, 23700
section iast
crashtracking [baseline] (1.452 ms) : 0, 1452
crashtracking [candidate] (1.427 ms) : 0, 1427
BytebuddyAgent [baseline] (856.305 ms) : 0, 856305
BytebuddyAgent [candidate] (845.804 ms) : 0, 845804
GlobalTracer [baseline] (234.801 ms) : 0, 234801
GlobalTracer [candidate] (230.774 ms) : 0, 230774
AppSec [baseline] (28.988 ms) : 0, 28988
AppSec [candidate] (27.562 ms) : 0, 27562
Debugger [baseline] (6.633 ms) : 0, 6633
Debugger [candidate] (6.737 ms) : 0, 6737
Remote Config [baseline] (594.273 µs) : 0, 594
Remote Config [candidate] (597.083 µs) : 0, 597
Telemetry [baseline] (8.025 ms) : 0, 8025
Telemetry [candidate] (7.921 ms) : 0, 7921
IAST [baseline] (27.734 ms) : 0, 27734
IAST [candidate] (29.827 ms) : 0, 29827
section profiling
crashtracking [baseline] (1.428 ms) : 0, 1428
crashtracking [candidate] (1.409 ms) : 0, 1409
BytebuddyAgent [baseline] (759.06 ms) : 0, 759060
BytebuddyAgent [candidate] (759.498 ms) : 0, 759498
GlobalTracer [baseline] (220.833 ms) : 0, 220833
GlobalTracer [candidate] (220.32 ms) : 0, 220320
AppSec [baseline] (30.4 ms) : 0, 30400
AppSec [candidate] (30.339 ms) : 0, 30339
Debugger [baseline] (6.293 ms) : 0, 6293
Debugger [candidate] (6.322 ms) : 0, 6322
Remote Config [baseline] (700.313 µs) : 0, 700
Remote Config [candidate] (675.378 µs) : 0, 675
Telemetry [baseline] (10.974 ms) : 0, 10974
Telemetry [candidate] (12.394 ms) : 0, 12394
ProfilingAgent [baseline] (106.018 ms) : 0, 106018
ProfilingAgent [candidate] (104.396 ms) : 0, 104396
Profiling [baseline] (106.04 ms) : 0, 106040
Profiling [candidate] (104.418 ms) : 0, 104418
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.52.0-SNAPSHOT~df915f0a03, baseline=1.52.0-SNAPSHOT~d1794c17af
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.042 s) : 0, 1041547
Total [baseline] (8.636 s) : 0, 8635628
Agent [candidate] (1.037 s) : 0, 1037324
Total [candidate] (8.602 s) : 0, 8601976
section iast
Agent [baseline] (1.171 s) : 0, 1171232
Total [baseline] (9.282 s) : 0, 9282471
Agent [candidate] (1.19 s) : 0, 1190343
Total [candidate] (9.35 s) : 0, 9349969
gantt
title insecure-bank - break down per module: candidate=1.52.0-SNAPSHOT~df915f0a03, baseline=1.52.0-SNAPSHOT~d1794c17af
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.43 ms) : 0, 1430
crashtracking [candidate] (1.432 ms) : 0, 1432
BytebuddyAgent [baseline] (731.047 ms) : 0, 731047
BytebuddyAgent [candidate] (728.97 ms) : 0, 728970
GlobalTracer [baseline] (242.523 ms) : 0, 242523
GlobalTracer [candidate] (240.887 ms) : 0, 240887
AppSec [baseline] (30.641 ms) : 0, 30641
AppSec [candidate] (30.305 ms) : 0, 30305
Debugger [baseline] (6.037 ms) : 0, 6037
Debugger [candidate] (5.989 ms) : 0, 5989
Remote Config [baseline] (657.752 µs) : 0, 658
Remote Config [candidate] (654.164 µs) : 0, 654
Telemetry [baseline] (8.3 ms) : 0, 8300
Telemetry [candidate] (8.183 ms) : 0, 8183
section iast
crashtracking [baseline] (1.425 ms) : 0, 1425
crashtracking [candidate] (1.453 ms) : 0, 1453
BytebuddyAgent [baseline] (845.701 ms) : 0, 845701
BytebuddyAgent [candidate] (861.146 ms) : 0, 861146
GlobalTracer [baseline] (230.673 ms) : 0, 230673
GlobalTracer [candidate] (233.319 ms) : 0, 233319
AppSec [baseline] (28.144 ms) : 0, 28144
AppSec [candidate] (27.675 ms) : 0, 27675
Debugger [baseline] (8.328 ms) : 0, 8328
Debugger [candidate] (6.75 ms) : 0, 6750
Remote Config [baseline] (589.455 µs) : 0, 589
Remote Config [candidate] (615.116 µs) : 0, 615
Telemetry [baseline] (7.962 ms) : 0, 7962
Telemetry [candidate] (8.071 ms) : 0, 8071
IAST [baseline] (27.497 ms) : 0, 27497
IAST [candidate] (30.198 ms) : 0, 30198
LoadParameters
See matching parameters
SummaryFound 1 performance improvements and 2 performance regressions! Performance is the same for 9 metrics, 12 unstable metrics.
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.52.0-SNAPSHOT~df915f0a03, baseline=1.52.0-SNAPSHOT~d1794c17af
dateFormat X
axisFormat %s
section baseline
no_agent (4.452 ms) : 4391, 4512
. : milestone, 4452,
iast (9.109 ms) : 8960, 9257
. : milestone, 9109,
iast_FULL (14.038 ms) : 13761, 14315
. : milestone, 14038,
iast_GLOBAL (10.033 ms) : 9840, 10227
. : milestone, 10033,
profiling (8.733 ms) : 8583, 8884
. : milestone, 8733,
tracing (7.634 ms) : 7518, 7750
. : milestone, 7634,
section candidate
no_agent (4.462 ms) : 4412, 4512
. : milestone, 4462,
iast (9.579 ms) : 9419, 9740
. : milestone, 9579,
iast_FULL (13.78 ms) : 13505, 14055
. : milestone, 13780,
iast_GLOBAL (10.197 ms) : 10015, 10379
. : milestone, 10197,
profiling (9.002 ms) : 8862, 9143
. : milestone, 9002,
tracing (8.095 ms) : 7976, 8215
. : milestone, 8095,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.52.0-SNAPSHOT~df915f0a03, baseline=1.52.0-SNAPSHOT~d1794c17af
dateFormat X
axisFormat %s
section baseline
no_agent (37.981 ms) : 37667, 38296
. : milestone, 37981,
appsec (50.07 ms) : 49607, 50534
. : milestone, 50070,
code_origins (44.599 ms) : 44209, 44989
. : milestone, 44599,
iast (44.459 ms) : 44079, 44839
. : milestone, 44459,
profiling (47.137 ms) : 46689, 47586
. : milestone, 47137,
tracing (44.719 ms) : 44338, 45100
. : milestone, 44719,
section candidate
no_agent (37.54 ms) : 37237, 37844
. : milestone, 37540,
appsec (46.325 ms) : 45920, 46730
. : milestone, 46325,
code_origins (44.838 ms) : 44464, 45213
. : milestone, 44838,
iast (44.708 ms) : 44315, 45101
. : milestone, 44708,
profiling (47.536 ms) : 47083, 47990
. : milestone, 47536,
tracing (44.137 ms) : 43765, 44508
. : milestone, 44137,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 1 unstable metrics. Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.52.0-SNAPSHOT~df915f0a03, baseline=1.52.0-SNAPSHOT~d1794c17af
dateFormat X
axisFormat %s
section baseline
no_agent (1.476 ms) : 1464, 1487
. : milestone, 1476,
appsec (3.652 ms) : 3434, 3871
. : milestone, 3652,
iast (2.202 ms) : 2139, 2264
. : milestone, 2202,
iast_GLOBAL (2.236 ms) : 2174, 2299
. : milestone, 2236,
profiling (2.035 ms) : 1985, 2085
. : milestone, 2035,
tracing (2.012 ms) : 1963, 2061
. : milestone, 2012,
section candidate
no_agent (1.476 ms) : 1465, 1488
. : milestone, 1476,
appsec (3.573 ms) : 3361, 3786
. : milestone, 3573,
iast (2.209 ms) : 2146, 2272
. : milestone, 2209,
iast_GLOBAL (2.244 ms) : 2181, 2308
. : milestone, 2244,
profiling (2.044 ms) : 1994, 2095
. : milestone, 2044,
tracing (2.02 ms) : 1971, 2068
. : milestone, 2020,
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.52.0-SNAPSHOT~df915f0a03, baseline=1.52.0-SNAPSHOT~d1794c17af
dateFormat X
axisFormat %s
section baseline
no_agent (14.758 s) : 14758000, 14758000
. : milestone, 14758000,
appsec (14.983 s) : 14983000, 14983000
. : milestone, 14983000,
iast (18.089 s) : 18089000, 18089000
. : milestone, 18089000,
iast_GLOBAL (18.002 s) : 18002000, 18002000
. : milestone, 18002000,
profiling (16.055 s) : 16055000, 16055000
. : milestone, 16055000,
tracing (14.959 s) : 14959000, 14959000
. : milestone, 14959000,
section candidate
no_agent (15.672 s) : 15672000, 15672000
. : milestone, 15672000,
appsec (14.891 s) : 14891000, 14891000
. : milestone, 14891000,
iast (18.632 s) : 18632000, 18632000
. : milestone, 18632000,
iast_GLOBAL (18.276 s) : 18276000, 18276000
. : milestone, 18276000,
profiling (15.21 s) : 15210000, 15210000
. : milestone, 15210000,
tracing (15.015 s) : 15015000, 15015000
. : milestone, 15015000,
|
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.
.gitlab/macrobenchmarks.yml
Outdated
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.
Done
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.
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]