-
Notifications
You must be signed in to change notification settings - Fork 320
Add feature-flag to enable optimized class parsing #9894
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
Conversation
|
🎯 Code Coverage 🔗 Commit SHA: 4861334 | Docs | Datadog PR Page | Was this helpful? Give us feedback! |
bacb21b to
0923328
Compare
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 52 metrics, 13 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.56.0-SNAPSHOT~4861334a82, baseline=1.56.0-SNAPSHOT~52fa9c9dc0
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.047 s) : 0, 1046821
Total [baseline] (10.901 s) : 0, 10901330
Agent [candidate] (1.049 s) : 0, 1049101
Total [candidate] (10.803 s) : 0, 10802939
section appsec
Agent [baseline] (1.222 s) : 0, 1222186
Total [baseline] (10.864 s) : 0, 10864293
Agent [candidate] (1.222 s) : 0, 1222178
Total [candidate] (10.892 s) : 0, 10891666
section iast
Agent [baseline] (1.179 s) : 0, 1178975
Total [baseline] (11.225 s) : 0, 11224559
Agent [candidate] (1.181 s) : 0, 1180547
Total [candidate] (11.162 s) : 0, 11162350
section profiling
Agent [baseline] (1.192 s) : 0, 1192266
Total [baseline] (10.912 s) : 0, 10912473
Agent [candidate] (1.194 s) : 0, 1193908
Total [candidate] (10.944 s) : 0, 10944112
gantt
title petclinic - break down per module: candidate=1.56.0-SNAPSHOT~4861334a82, baseline=1.56.0-SNAPSHOT~52fa9c9dc0
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.473 ms) : 0, 1473
crashtracking [candidate] (1.472 ms) : 0, 1472
BytebuddyAgent [baseline] (703.947 ms) : 0, 703947
BytebuddyAgent [candidate] (705.742 ms) : 0, 705742
GlobalTracer [baseline] (245.837 ms) : 0, 245837
GlobalTracer [candidate] (246.861 ms) : 0, 246861
AppSec [baseline] (32.65 ms) : 0, 32650
AppSec [candidate] (32.219 ms) : 0, 32219
Debugger [baseline] (6.434 ms) : 0, 6434
Debugger [candidate] (6.394 ms) : 0, 6394
Remote Config [baseline] (697.882 µs) : 0, 698
Remote Config [candidate] (723.49 µs) : 0, 723
Telemetry [baseline] (15.311 ms) : 0, 15311
Telemetry [candidate] (13.751 ms) : 0, 13751
Flare Poller [baseline] (5.601 ms) : 0, 5601
Flare Poller [candidate] (7.157 ms) : 0, 7157
section appsec
crashtracking [baseline] (1.467 ms) : 0, 1467
crashtracking [candidate] (1.459 ms) : 0, 1459
BytebuddyAgent [baseline] (728.566 ms) : 0, 728566
BytebuddyAgent [candidate] (728.538 ms) : 0, 728538
GlobalTracer [baseline] (237.392 ms) : 0, 237392
GlobalTracer [candidate] (237.484 ms) : 0, 237484
IAST [baseline] (24.871 ms) : 0, 24871
IAST [candidate] (24.854 ms) : 0, 24854
AppSec [baseline] (175.652 ms) : 0, 175652
AppSec [candidate] (175.691 ms) : 0, 175691
Debugger [baseline] (6.05 ms) : 0, 6050
Debugger [candidate] (6.014 ms) : 0, 6014
Remote Config [baseline] (655.704 µs) : 0, 656
Remote Config [candidate] (652.17 µs) : 0, 652
Telemetry [baseline] (8.59 ms) : 0, 8590
Telemetry [candidate] (8.553 ms) : 0, 8553
Flare Poller [baseline] (4.03 ms) : 0, 4030
Flare Poller [candidate] (4.035 ms) : 0, 4035
section iast
crashtracking [baseline] (1.465 ms) : 0, 1465
crashtracking [candidate] (1.475 ms) : 0, 1475
BytebuddyAgent [baseline] (826.582 ms) : 0, 826582
BytebuddyAgent [candidate] (828.521 ms) : 0, 828521
GlobalTracer [baseline] (234.554 ms) : 0, 234554
GlobalTracer [candidate] (235.084 ms) : 0, 235084
IAST [baseline] (32.493 ms) : 0, 32493
IAST [candidate] (29.765 ms) : 0, 29765
AppSec [baseline] (29.229 ms) : 0, 29229
AppSec [candidate] (31.478 ms) : 0, 31478
Debugger [baseline] (6.151 ms) : 0, 6151
Debugger [candidate] (6.08 ms) : 0, 6080
Remote Config [baseline] (613.697 µs) : 0, 614
Remote Config [candidate] (600.411 µs) : 0, 600
Telemetry [baseline] (8.589 ms) : 0, 8589
Telemetry [candidate] (8.486 ms) : 0, 8486
Flare Poller [baseline] (4.141 ms) : 0, 4141
Flare Poller [candidate] (4.228 ms) : 0, 4228
section profiling
crashtracking [baseline] (1.471 ms) : 0, 1471
crashtracking [candidate] (1.456 ms) : 0, 1456
BytebuddyAgent [baseline] (728.352 ms) : 0, 728352
BytebuddyAgent [candidate] (730.048 ms) : 0, 730048
GlobalTracer [baseline] (222.188 ms) : 0, 222188
GlobalTracer [candidate] (222.173 ms) : 0, 222173
AppSec [baseline] (32.243 ms) : 0, 32243
AppSec [candidate] (32.001 ms) : 0, 32001
Debugger [baseline] (8.318 ms) : 0, 8318
Debugger [candidate] (6.694 ms) : 0, 6694
Remote Config [baseline] (1.523 ms) : 0, 1523
Remote Config [candidate] (699.897 µs) : 0, 700
Telemetry [baseline] (13.775 ms) : 0, 13775
Telemetry [candidate] (16.421 ms) : 0, 16421
Flare Poller [baseline] (4.112 ms) : 0, 4112
Flare Poller [candidate] (4.151 ms) : 0, 4151
ProfilingAgent [baseline] (110.858 ms) : 0, 110858
ProfilingAgent [candidate] (110.947 ms) : 0, 110947
Profiling [baseline] (111.513 ms) : 0, 111513
Profiling [candidate] (111.597 ms) : 0, 111597
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.56.0-SNAPSHOT~4861334a82, baseline=1.56.0-SNAPSHOT~52fa9c9dc0
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.049 s) : 0, 1049499
Total [baseline] (8.676 s) : 0, 8675967
Agent [candidate] (1.07 s) : 0, 1069620
Total [candidate] (8.688 s) : 0, 8687714
section iast
Agent [baseline] (1.177 s) : 0, 1177381
Total [baseline] (9.269 s) : 0, 9269001
Agent [candidate] (1.179 s) : 0, 1179220
Total [candidate] (9.263 s) : 0, 9262738
gantt
title insecure-bank - break down per module: candidate=1.56.0-SNAPSHOT~4861334a82, baseline=1.56.0-SNAPSHOT~52fa9c9dc0
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.478 ms) : 0, 1478
crashtracking [candidate] (1.502 ms) : 0, 1502
BytebuddyAgent [baseline] (707.38 ms) : 0, 707380
BytebuddyAgent [candidate] (721.482 ms) : 0, 721482
GlobalTracer [baseline] (244.81 ms) : 0, 244810
GlobalTracer [candidate] (249.787 ms) : 0, 249787
AppSec [baseline] (32.554 ms) : 0, 32554
AppSec [candidate] (33.029 ms) : 0, 33029
Debugger [baseline] (6.441 ms) : 0, 6441
Debugger [candidate] (6.557 ms) : 0, 6557
Remote Config [baseline] (704.937 µs) : 0, 705
Remote Config [candidate] (724.739 µs) : 0, 725
Telemetry [baseline] (15.324 ms) : 0, 15324
Telemetry [candidate] (13.921 ms) : 0, 13921
Flare Poller [baseline] (5.789 ms) : 0, 5789
Flare Poller [candidate] (7.357 ms) : 0, 7357
section iast
crashtracking [baseline] (1.47 ms) : 0, 1470
crashtracking [candidate] (1.458 ms) : 0, 1458
BytebuddyAgent [baseline] (824.628 ms) : 0, 824628
BytebuddyAgent [candidate] (828.819 ms) : 0, 828819
GlobalTracer [baseline] (235.168 ms) : 0, 235168
GlobalTracer [candidate] (233.853 ms) : 0, 233853
AppSec [baseline] (28.991 ms) : 0, 28991
AppSec [candidate] (29.628 ms) : 0, 29628
Debugger [baseline] (6.124 ms) : 0, 6124
Debugger [candidate] (6.018 ms) : 0, 6018
Remote Config [baseline] (600.191 µs) : 0, 600
Remote Config [candidate] (617.824 µs) : 0, 618
Telemetry [baseline] (8.397 ms) : 0, 8397
Telemetry [candidate] (8.432 ms) : 0, 8432
Flare Poller [baseline] (4.133 ms) : 0, 4133
Flare Poller [candidate] (4.152 ms) : 0, 4152
IAST [baseline] (32.687 ms) : 0, 32687
IAST [candidate] (31.503 ms) : 0, 31503
LoadParameters
See matching parameters
SummaryFound 1 performance improvements and 1 performance regressions! Performance is the same for 10 metrics, 12 unstable metrics.
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.56.0-SNAPSHOT~4861334a82, baseline=1.56.0-SNAPSHOT~52fa9c9dc0
dateFormat X
axisFormat %s
section baseline
no_agent (1.193 ms) : 1182, 1204
. : milestone, 1193,
iast (3.254 ms) : 3211, 3296
. : milestone, 3254,
iast_FULL (5.768 ms) : 5711, 5825
. : milestone, 5768,
iast_GLOBAL (3.671 ms) : 3610, 3732
. : milestone, 3671,
profiling (2.133 ms) : 2114, 2152
. : milestone, 2133,
tracing (1.774 ms) : 1760, 1788
. : milestone, 1774,
section candidate
no_agent (1.205 ms) : 1193, 1218
. : milestone, 1205,
iast (3.256 ms) : 3214, 3298
. : milestone, 3256,
iast_FULL (5.843 ms) : 5784, 5903
. : milestone, 5843,
iast_GLOBAL (3.623 ms) : 3563, 3683
. : milestone, 3623,
profiling (1.981 ms) : 1964, 1998
. : milestone, 1981,
tracing (1.764 ms) : 1749, 1779
. : milestone, 1764,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.56.0-SNAPSHOT~4861334a82, baseline=1.56.0-SNAPSHOT~52fa9c9dc0
dateFormat X
axisFormat %s
section baseline
no_agent (17.646 ms) : 17470, 17822
. : milestone, 17646,
appsec (18.718 ms) : 18526, 18910
. : milestone, 18718,
code_origins (17.439 ms) : 17265, 17612
. : milestone, 17439,
iast (18.002 ms) : 17820, 18184
. : milestone, 18002,
profiling (18.309 ms) : 18127, 18490
. : milestone, 18309,
tracing (17.842 ms) : 17662, 18022
. : milestone, 17842,
section candidate
no_agent (18.01 ms) : 17826, 18194
. : milestone, 18010,
appsec (18.826 ms) : 18637, 19015
. : milestone, 18826,
code_origins (17.773 ms) : 17598, 17948
. : milestone, 17773,
iast (17.916 ms) : 17733, 18099
. : milestone, 17916,
profiling (19.523 ms) : 19325, 19721
. : milestone, 19523,
tracing (18.302 ms) : 18121, 18483
. : milestone, 18302,
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 biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.56.0-SNAPSHOT~4861334a82, baseline=1.56.0-SNAPSHOT~52fa9c9dc0
dateFormat X
axisFormat %s
section baseline
no_agent (15.551 s) : 15551000, 15551000
. : milestone, 15551000,
appsec (14.86 s) : 14860000, 14860000
. : milestone, 14860000,
iast (18.591 s) : 18591000, 18591000
. : milestone, 18591000,
iast_GLOBAL (17.893 s) : 17893000, 17893000
. : milestone, 17893000,
profiling (14.725 s) : 14725000, 14725000
. : milestone, 14725000,
tracing (14.916 s) : 14916000, 14916000
. : milestone, 14916000,
section candidate
no_agent (15.512 s) : 15512000, 15512000
. : milestone, 15512000,
appsec (15.051 s) : 15051000, 15051000
. : milestone, 15051000,
iast (18.48 s) : 18480000, 18480000
. : milestone, 18480000,
iast_GLOBAL (17.951 s) : 17951000, 17951000
. : milestone, 17951000,
profiling (14.875 s) : 14875000, 14875000
. : milestone, 14875000,
tracing (15.045 s) : 15045000, 15045000
. : milestone, 15045000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.56.0-SNAPSHOT~4861334a82, baseline=1.56.0-SNAPSHOT~52fa9c9dc0
dateFormat X
axisFormat %s
section baseline
no_agent (1.493 ms) : 1481, 1505
. : milestone, 1493,
appsec (2.541 ms) : 2486, 2596
. : milestone, 2541,
iast (2.238 ms) : 2174, 2303
. : milestone, 2238,
iast_GLOBAL (2.274 ms) : 2210, 2339
. : milestone, 2274,
profiling (2.098 ms) : 2044, 2152
. : milestone, 2098,
tracing (2.053 ms) : 2003, 2104
. : milestone, 2053,
section candidate
no_agent (1.488 ms) : 1476, 1499
. : milestone, 1488,
appsec (3.799 ms) : 3575, 4022
. : milestone, 3799,
iast (2.233 ms) : 2168, 2297
. : milestone, 2233,
iast_GLOBAL (2.272 ms) : 2207, 2337
. : milestone, 2272,
profiling (2.073 ms) : 2022, 2125
. : milestone, 2073,
tracing (2.044 ms) : 1994, 2094
. : milestone, 2044,
|
0923328 to
8b1b5e9
Compare
8b1b5e9 to
5e70cf3
Compare
5e70cf3 to
4861334
Compare
What Does This Do
Support using
dd-instrument-javato parse class outlines underneath the existingTypeOutlineapproach. This uses a custom parser optimized to extract only outline information with minimal use of resources.Benchmarks show this approach can improve startup time by up to 4%, depending on the number of classes loaded.
Additional Notes
The previous visitor-based class parsing can be re-enabled with this JVM argument:
or by setting this environment variable:
Contributor Checklist
type:and (comp:orinst:) labels in addition to any useful labelsclose,fixor any linking keywords when referencing an issue.Use
solvesinstead, and assign the PR milestone to the issueJira ticket: APMAPI-1654