-
Notifications
You must be signed in to change notification settings - Fork 320
Use ClassLoaderIndex to index class-loader related information
#9980
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
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This comment has been minimized.
This comment has been minimized.
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 57 metrics, 8 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.57.0-SNAPSHOT~bb5ec51323, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.053 s) : 0, 1052532
Total [baseline] (10.797 s) : 0, 10796596
Agent [candidate] (1.056 s) : 0, 1056097
Total [candidate] (10.862 s) : 0, 10862064
section appsec
Agent [baseline] (1.23 s) : 0, 1230048
Total [baseline] (10.86 s) : 0, 10860365
Agent [candidate] (1.24 s) : 0, 1240268
Total [candidate] (10.984 s) : 0, 10984356
section iast
Agent [baseline] (1.2 s) : 0, 1200365
Total [baseline] (11.104 s) : 0, 11103947
Agent [candidate] (1.196 s) : 0, 1195625
Total [candidate] (11.122 s) : 0, 11121693
section profiling
Agent [baseline] (1.201 s) : 0, 1200782
Total [baseline] (10.889 s) : 0, 10888941
Agent [candidate] (1.196 s) : 0, 1195617
Total [candidate] (10.961 s) : 0, 10960833
gantt
title petclinic - break down per module: candidate=1.57.0-SNAPSHOT~bb5ec51323, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.484 ms) : 0, 1484
crashtracking [candidate] (1.474 ms) : 0, 1474
BytebuddyAgent [baseline] (707.801 ms) : 0, 707801
BytebuddyAgent [candidate] (709.736 ms) : 0, 709736
GlobalTracer [baseline] (248.85 ms) : 0, 248850
GlobalTracer [candidate] (250.263 ms) : 0, 250263
AppSec [baseline] (32.095 ms) : 0, 32095
AppSec [candidate] (32.063 ms) : 0, 32063
Debugger [baseline] (6.421 ms) : 0, 6421
Debugger [candidate] (6.396 ms) : 0, 6396
Remote Config [baseline] (686.446 µs) : 0, 686
Remote Config [candidate] (677.545 µs) : 0, 678
Telemetry [baseline] (13.073 ms) : 0, 13073
Telemetry [candidate] (15.526 ms) : 0, 15526
Flare Poller [baseline] (7.221 ms) : 0, 7221
Flare Poller [candidate] (5.011 ms) : 0, 5011
section appsec
crashtracking [baseline] (1.5 ms) : 0, 1500
crashtracking [candidate] (1.506 ms) : 0, 1506
BytebuddyAgent [baseline] (733.248 ms) : 0, 733248
BytebuddyAgent [candidate] (738.497 ms) : 0, 738497
GlobalTracer [baseline] (241.352 ms) : 0, 241352
GlobalTracer [candidate] (243.761 ms) : 0, 243761
AppSec [baseline] (174.796 ms) : 0, 174796
AppSec [candidate] (176.723 ms) : 0, 176723
Debugger [baseline] (6.296 ms) : 0, 6296
Debugger [candidate] (6.401 ms) : 0, 6401
Remote Config [baseline] (679.205 µs) : 0, 679
Remote Config [candidate] (711.668 µs) : 0, 712
Telemetry [baseline] (8.06 ms) : 0, 8060
Telemetry [candidate] (8.357 ms) : 0, 8357
Flare Poller [baseline] (3.989 ms) : 0, 3989
Flare Poller [candidate] (4.073 ms) : 0, 4073
IAST [baseline] (24.89 ms) : 0, 24890
IAST [candidate] (25.011 ms) : 0, 25011
section iast
crashtracking [baseline] (1.489 ms) : 0, 1489
crashtracking [candidate] (1.476 ms) : 0, 1476
BytebuddyAgent [baseline] (837.418 ms) : 0, 837418
BytebuddyAgent [candidate] (833.799 ms) : 0, 833799
GlobalTracer [baseline] (238.796 ms) : 0, 238796
GlobalTracer [candidate] (238.238 ms) : 0, 238238
AppSec [baseline] (32.998 ms) : 0, 32998
AppSec [candidate] (32.25 ms) : 0, 32250
Debugger [baseline] (6.153 ms) : 0, 6153
Debugger [candidate] (6.104 ms) : 0, 6104
Remote Config [baseline] (619.177 µs) : 0, 619
Remote Config [candidate] (609.509 µs) : 0, 610
Telemetry [baseline] (8.144 ms) : 0, 8144
Telemetry [candidate] (8.164 ms) : 0, 8164
Flare Poller [baseline] (10.979 ms) : 0, 10979
Flare Poller [candidate] (10.801 ms) : 0, 10801
IAST [baseline] (28.621 ms) : 0, 28621
IAST [candidate] (29.195 ms) : 0, 29195
section profiling
ProfilingAgent [baseline] (110.981 ms) : 0, 110981
ProfilingAgent [candidate] (110.647 ms) : 0, 110647
crashtracking [baseline] (1.446 ms) : 0, 1446
crashtracking [candidate] (1.432 ms) : 0, 1432
BytebuddyAgent [baseline] (736.52 ms) : 0, 736520
BytebuddyAgent [candidate] (732.248 ms) : 0, 732248
GlobalTracer [baseline] (222.336 ms) : 0, 222336
GlobalTracer [candidate] (222.237 ms) : 0, 222237
AppSec [baseline] (32.135 ms) : 0, 32135
AppSec [candidate] (32.031 ms) : 0, 32031
Debugger [baseline] (8.316 ms) : 0, 8316
Debugger [candidate] (8.421 ms) : 0, 8421
Remote Config [baseline] (679.674 µs) : 0, 680
Remote Config [candidate] (674.28 µs) : 0, 674
Telemetry [baseline] (14.525 ms) : 0, 14525
Telemetry [candidate] (14.585 ms) : 0, 14585
Flare Poller [baseline] (4.131 ms) : 0, 4131
Flare Poller [candidate] (4.158 ms) : 0, 4158
Profiling [baseline] (111.601 ms) : 0, 111601
Profiling [candidate] (111.297 ms) : 0, 111297
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.57.0-SNAPSHOT~bb5ec51323, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.048 s) : 0, 1048218
Total [baseline] (8.678 s) : 0, 8677670
Agent [candidate] (1.056 s) : 0, 1056049
Total [candidate] (8.714 s) : 0, 8713603
section iast
Agent [baseline] (1.204 s) : 0, 1203907
Total [baseline] (9.387 s) : 0, 9387070
Agent [candidate] (1.191 s) : 0, 1190748
Total [candidate] (9.334 s) : 0, 9334224
gantt
title insecure-bank - break down per module: candidate=1.57.0-SNAPSHOT~bb5ec51323, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.478 ms) : 0, 1478
crashtracking [candidate] (1.485 ms) : 0, 1485
BytebuddyAgent [baseline] (704.916 ms) : 0, 704916
BytebuddyAgent [candidate] (709.353 ms) : 0, 709353
GlobalTracer [baseline] (247.952 ms) : 0, 247952
GlobalTracer [candidate] (250.669 ms) : 0, 250669
AppSec [baseline] (31.883 ms) : 0, 31883
AppSec [candidate] (32.214 ms) : 0, 32214
Debugger [baseline] (6.336 ms) : 0, 6336
Debugger [candidate] (6.445 ms) : 0, 6445
Remote Config [baseline] (665.562 µs) : 0, 666
Remote Config [candidate] (675.621 µs) : 0, 676
Telemetry [baseline] (16.166 ms) : 0, 16166
Telemetry [candidate] (16.139 ms) : 0, 16139
Flare Poller [baseline] (4.004 ms) : 0, 4004
Flare Poller [candidate] (4.135 ms) : 0, 4135
section iast
crashtracking [baseline] (1.488 ms) : 0, 1488
crashtracking [candidate] (1.488 ms) : 0, 1488
BytebuddyAgent [baseline] (838.984 ms) : 0, 838984
BytebuddyAgent [candidate] (830.442 ms) : 0, 830442
GlobalTracer [baseline] (239.838 ms) : 0, 239838
GlobalTracer [candidate] (237.321 ms) : 0, 237321
AppSec [baseline] (33.616 ms) : 0, 33616
AppSec [candidate] (32.082 ms) : 0, 32082
Debugger [baseline] (6.175 ms) : 0, 6175
Debugger [candidate] (6.044 ms) : 0, 6044
Remote Config [baseline] (616.846 µs) : 0, 617
Remote Config [candidate] (600.107 µs) : 0, 600
Telemetry [baseline] (8.142 ms) : 0, 8142
Telemetry [candidate] (8.014 ms) : 0, 8014
Flare Poller [baseline] (10.871 ms) : 0, 10871
Flare Poller [candidate] (10.79 ms) : 0, 10790
IAST [baseline] (28.947 ms) : 0, 28947
IAST [candidate] (29.005 ms) : 0, 29005
LoadParameters
See matching parameters
SummaryFound 1 performance improvements and 2 performance regressions! Performance is the same for 16 metrics, 17 unstable metrics.
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.57.0-SNAPSHOT~bb5ec51323, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section baseline
no_agent (1.201 ms) : 1190, 1213
. : milestone, 1201,
iast (3.215 ms) : 3170, 3260
. : milestone, 3215,
iast_FULL (5.541 ms) : 5486, 5596
. : milestone, 5541,
iast_GLOBAL (3.55 ms) : 3499, 3602
. : milestone, 3550,
profiling (1.994 ms) : 1976, 2011
. : milestone, 1994,
tracing (1.812 ms) : 1795, 1828
. : milestone, 1812,
section candidate
no_agent (1.205 ms) : 1193, 1217
. : milestone, 1205,
iast (3.241 ms) : 3196, 3286
. : milestone, 3241,
iast_FULL (5.854 ms) : 5796, 5912
. : milestone, 5854,
iast_GLOBAL (3.623 ms) : 3567, 3679
. : milestone, 3623,
profiling (2.164 ms) : 2145, 2184
. : milestone, 2164,
tracing (1.83 ms) : 1814, 1846
. : milestone, 1830,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.57.0-SNAPSHOT~bb5ec51323, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section baseline
no_agent (17.082 ms) : 16910, 17254
. : milestone, 17082,
appsec (18.572 ms) : 18381, 18763
. : milestone, 18572,
code_origins (17.556 ms) : 17381, 17732
. : milestone, 17556,
iast (17.751 ms) : 17572, 17929
. : milestone, 17751,
profiling (20.028 ms) : 19821, 20236
. : milestone, 20028,
tracing (18.678 ms) : 18493, 18864
. : milestone, 18678,
section candidate
no_agent (17.97 ms) : 17793, 18146
. : milestone, 17970,
appsec (18.723 ms) : 18535, 18911
. : milestone, 18723,
code_origins (17.805 ms) : 17626, 17984
. : milestone, 17805,
iast (17.964 ms) : 17785, 18142
. : milestone, 17964,
profiling (19.153 ms) : 18962, 19343
. : milestone, 19153,
tracing (17.71 ms) : 17536, 17885
. : milestone, 17710,
DacapoParameters
See matching parameters
SummaryFound 1 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 0 unstable metrics.
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.57.0-SNAPSHOT~bb5ec51323, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section baseline
no_agent (14.949 s) : 14949000, 14949000
. : milestone, 14949000,
appsec (14.83 s) : 14830000, 14830000
. : milestone, 14830000,
iast (18.424 s) : 18424000, 18424000
. : milestone, 18424000,
iast_GLOBAL (18.279 s) : 18279000, 18279000
. : milestone, 18279000,
profiling (14.739 s) : 14739000, 14739000
. : milestone, 14739000,
tracing (14.59 s) : 14590000, 14590000
. : milestone, 14590000,
section candidate
no_agent (15.508 s) : 15508000, 15508000
. : milestone, 15508000,
appsec (15.155 s) : 15155000, 15155000
. : milestone, 15155000,
iast (18.94 s) : 18940000, 18940000
. : milestone, 18940000,
iast_GLOBAL (17.99 s) : 17990000, 17990000
. : milestone, 17990000,
profiling (14.825 s) : 14825000, 14825000
. : milestone, 14825000,
tracing (14.649 s) : 14649000, 14649000
. : milestone, 14649000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.57.0-SNAPSHOT~bb5ec51323, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section baseline
no_agent (1.476 ms) : 1465, 1488
. : milestone, 1476,
appsec (3.71 ms) : 3493, 3926
. : milestone, 3710,
iast (2.214 ms) : 2150, 2277
. : milestone, 2214,
iast_GLOBAL (2.256 ms) : 2191, 2320
. : milestone, 2256,
profiling (2.09 ms) : 2037, 2144
. : milestone, 2090,
tracing (2.044 ms) : 1993, 2094
. : milestone, 2044,
section candidate
no_agent (1.479 ms) : 1467, 1490
. : milestone, 1479,
appsec (2.466 ms) : 2415, 2518
. : milestone, 2466,
iast (2.213 ms) : 2149, 2277
. : milestone, 2213,
iast_GLOBAL (2.251 ms) : 2186, 2315
. : milestone, 2251,
profiling (2.071 ms) : 2018, 2124
. : milestone, 2071,
tracing (2.049 ms) : 1998, 2100
. : milestone, 2049,
|
09616cc to
10d8418
Compare
5f70d32 to
d182ada
Compare
d182ada to
0efba48
Compare
amarziali
approved these changes
Dec 4, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
comp: core
Tracer core
tag: performance
Performance related changes
type: enhancement
Enhancements and improvements
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What Does This Do
ClassLoaderIndexprovides a stable numeric key-id for each live class-loader which can be used to record class-loader origin and match against it without storing weak references everywhere. (The index itself uses weak references, but clients using the index can simply use the numeric key-id.)Note a class-loader may have more than one key-id over its life if it is temporarily displaced from the index. For example if a large number of class-loaders (>500) happened to be created in parallel. This would be very unusual, and at worst any cached type info under the old key-id would no longer match. This just means the type info would be recomputed and cached under the new key-id.
Motivation
Reduces direct use of class-loader weak references in the codebase.
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