-
Notifications
You must be signed in to change notification settings - Fork 319
Possibly use a fast path for accessing scope stacks #10071
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?
Conversation
|
|
||
| static final class ScopeStackThreadLocal extends ThreadLocal<ScopeStack> { | ||
|
|
||
| private final ScopeStack[] fastStacks = new ScopeStack[2048]; // This should be tuned |
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.
Something to consider from https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#getId--:
When a thread is terminated, this thread ID may be reused
What if an instrumentation left one or more unclosed scopes on a scope stack and the owning thread died and its id was reused? Or what if a thread dies during traced work before the scope stack could be cleaned up?
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 53 metrics, 12 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.57.0-SNAPSHOT~36bc792951, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.053 s) : 0, 1052867
Total [baseline] (10.911 s) : 0, 10911320
Agent [candidate] (1.054 s) : 0, 1054267
Total [candidate] (10.938 s) : 0, 10937695
section appsec
Agent [baseline] (1.23 s) : 0, 1229811
Total [baseline] (10.888 s) : 0, 10887770
Agent [candidate] (1.225 s) : 0, 1225419
Total [candidate] (10.903 s) : 0, 10902873
section iast
Agent [baseline] (1.195 s) : 0, 1194860
Total [baseline] (11.191 s) : 0, 11191211
Agent [candidate] (1.196 s) : 0, 1196145
Total [candidate] (11.181 s) : 0, 11181143
section profiling
Agent [baseline] (1.206 s) : 0, 1205524
Total [baseline] (10.934 s) : 0, 10933779
Agent [candidate] (1.199 s) : 0, 1198813
Total [candidate] (10.869 s) : 0, 10868739
gantt
title petclinic - break down per module: candidate=1.57.0-SNAPSHOT~36bc792951, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.489 ms) : 0, 1489
crashtracking [candidate] (1.484 ms) : 0, 1484
BytebuddyAgent [baseline] (707.211 ms) : 0, 707211
BytebuddyAgent [candidate] (708.373 ms) : 0, 708373
GlobalTracer [baseline] (249.802 ms) : 0, 249802
GlobalTracer [candidate] (249.959 ms) : 0, 249959
AppSec [baseline] (32.025 ms) : 0, 32025
AppSec [candidate] (32.139 ms) : 0, 32139
Debugger [baseline] (6.415 ms) : 0, 6415
Debugger [candidate] (6.41 ms) : 0, 6410
Remote Config [baseline] (675.236 µs) : 0, 675
Remote Config [candidate] (672.399 µs) : 0, 672
Telemetry [baseline] (15.499 ms) : 0, 15499
Telemetry [candidate] (16.245 ms) : 0, 16245
Flare Poller [baseline] (4.9 ms) : 0, 4900
Flare Poller [candidate] (4.091 ms) : 0, 4091
section appsec
crashtracking [baseline] (1.491 ms) : 0, 1491
crashtracking [candidate] (1.48 ms) : 0, 1480
BytebuddyAgent [baseline] (731.741 ms) : 0, 731741
BytebuddyAgent [candidate] (729.0 ms) : 0, 729000
GlobalTracer [baseline] (242.049 ms) : 0, 242049
GlobalTracer [candidate] (241.214 ms) : 0, 241214
IAST [baseline] (24.794 ms) : 0, 24794
IAST [candidate] (24.684 ms) : 0, 24684
AppSec [baseline] (175.459 ms) : 0, 175459
AppSec [candidate] (175.194 ms) : 0, 175194
Debugger [baseline] (6.317 ms) : 0, 6317
Debugger [candidate] (6.241 ms) : 0, 6241
Remote Config [baseline] (681.595 µs) : 0, 682
Remote Config [candidate] (675.115 µs) : 0, 675
Telemetry [baseline] (8.261 ms) : 0, 8261
Telemetry [candidate] (8.079 ms) : 0, 8079
Flare Poller [baseline] (3.939 ms) : 0, 3939
Flare Poller [candidate] (3.907 ms) : 0, 3907
section iast
crashtracking [baseline] (1.482 ms) : 0, 1482
crashtracking [candidate] (1.484 ms) : 0, 1484
BytebuddyAgent [baseline] (832.805 ms) : 0, 832805
BytebuddyAgent [candidate] (834.864 ms) : 0, 834864
GlobalTracer [baseline] (238.214 ms) : 0, 238214
GlobalTracer [candidate] (238.114 ms) : 0, 238114
IAST [baseline] (30.114 ms) : 0, 30114
IAST [candidate] (33.334 ms) : 0, 33334
AppSec [baseline] (31.556 ms) : 0, 31556
AppSec [candidate] (27.798 ms) : 0, 27798
Debugger [baseline] (6.114 ms) : 0, 6114
Debugger [candidate] (6.043 ms) : 0, 6043
Remote Config [baseline] (618.68 µs) : 0, 619
Remote Config [candidate] (619.721 µs) : 0, 620
Telemetry [baseline] (8.109 ms) : 0, 8109
Telemetry [candidate] (7.894 ms) : 0, 7894
Flare Poller [baseline] (10.847 ms) : 0, 10847
Flare Poller [candidate] (10.759 ms) : 0, 10759
section profiling
crashtracking [baseline] (1.434 ms) : 0, 1434
crashtracking [candidate] (1.436 ms) : 0, 1436
BytebuddyAgent [baseline] (738.758 ms) : 0, 738758
BytebuddyAgent [candidate] (734.0 ms) : 0, 734000
GlobalTracer [baseline] (224.149 ms) : 0, 224149
GlobalTracer [candidate] (222.722 ms) : 0, 222722
AppSec [baseline] (32.308 ms) : 0, 32308
AppSec [candidate] (32.147 ms) : 0, 32147
Debugger [baseline] (6.825 ms) : 0, 6825
Debugger [candidate] (7.565 ms) : 0, 7565
Remote Config [baseline] (690.447 µs) : 0, 690
Remote Config [candidate] (696.619 µs) : 0, 697
Telemetry [baseline] (16.248 ms) : 0, 16248
Telemetry [candidate] (15.557 ms) : 0, 15557
Flare Poller [baseline] (4.129 ms) : 0, 4129
Flare Poller [candidate] (4.159 ms) : 0, 4159
ProfilingAgent [baseline] (111.177 ms) : 0, 111177
ProfilingAgent [candidate] (111.224 ms) : 0, 111224
Profiling [baseline] (111.814 ms) : 0, 111814
Profiling [candidate] (111.845 ms) : 0, 111845
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.57.0-SNAPSHOT~36bc792951, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.05 s) : 0, 1049739
Total [baseline] (8.679 s) : 0, 8679158
Agent [candidate] (1.051 s) : 0, 1051008
Total [candidate] (8.694 s) : 0, 8694187
section iast
Agent [baseline] (1.196 s) : 0, 1195512
Total [baseline] (9.317 s) : 0, 9317077
Agent [candidate] (1.193 s) : 0, 1192921
Total [candidate] (9.308 s) : 0, 9307604
gantt
title insecure-bank - break down per module: candidate=1.57.0-SNAPSHOT~36bc792951, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.481 ms) : 0, 1481
crashtracking [candidate] (1.474 ms) : 0, 1474
BytebuddyAgent [baseline] (705.895 ms) : 0, 705895
BytebuddyAgent [candidate] (706.416 ms) : 0, 706416
GlobalTracer [baseline] (248.272 ms) : 0, 248272
GlobalTracer [candidate] (248.991 ms) : 0, 248991
AppSec [baseline] (31.921 ms) : 0, 31921
AppSec [candidate] (32.018 ms) : 0, 32018
Debugger [baseline] (6.346 ms) : 0, 6346
Debugger [candidate] (6.351 ms) : 0, 6351
Remote Config [baseline] (669.284 µs) : 0, 669
Remote Config [candidate] (682.356 µs) : 0, 682
Telemetry [baseline] (16.107 ms) : 0, 16107
Telemetry [candidate] (15.281 ms) : 0, 15281
Flare Poller [baseline] (4.08 ms) : 0, 4080
Flare Poller [candidate] (4.824 ms) : 0, 4824
section iast
crashtracking [baseline] (1.52 ms) : 0, 1520
crashtracking [candidate] (1.487 ms) : 0, 1487
BytebuddyAgent [baseline] (833.029 ms) : 0, 833029
BytebuddyAgent [candidate] (830.755 ms) : 0, 830755
GlobalTracer [baseline] (238.503 ms) : 0, 238503
GlobalTracer [candidate] (238.152 ms) : 0, 238152
IAST [baseline] (29.27 ms) : 0, 29270
IAST [candidate] (28.453 ms) : 0, 28453
AppSec [baseline] (32.329 ms) : 0, 32329
AppSec [candidate] (33.502 ms) : 0, 33502
Debugger [baseline] (6.115 ms) : 0, 6115
Debugger [candidate] (6.018 ms) : 0, 6018
Remote Config [baseline] (613.328 µs) : 0, 613
Remote Config [candidate] (596.752 µs) : 0, 597
Telemetry [baseline] (8.061 ms) : 0, 8061
Telemetry [candidate] (8.021 ms) : 0, 8021
Flare Poller [baseline] (10.977 ms) : 0, 10977
Flare Poller [candidate] (10.733 ms) : 0, 10733
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 2 performance regressions! Performance is the same for 19 metrics, 15 unstable metrics.
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.57.0-SNAPSHOT~36bc792951, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section baseline
no_agent (1.213 ms) : 1201, 1225
. : milestone, 1213,
iast (3.271 ms) : 3225, 3316
. : milestone, 3271,
iast_FULL (5.623 ms) : 5567, 5680
. : milestone, 5623,
iast_GLOBAL (3.429 ms) : 3377, 3481
. : milestone, 3429,
profiling (1.962 ms) : 1946, 1978
. : milestone, 1962,
tracing (1.849 ms) : 1833, 1864
. : milestone, 1849,
section candidate
no_agent (1.202 ms) : 1190, 1214
. : milestone, 1202,
iast (3.271 ms) : 3226, 3317
. : milestone, 3271,
iast_FULL (5.953 ms) : 5892, 6013
. : milestone, 5953,
iast_GLOBAL (3.643 ms) : 3588, 3698
. : milestone, 3643,
profiling (1.91 ms) : 1893, 1926
. : milestone, 1910,
tracing (1.831 ms) : 1817, 1846
. : milestone, 1831,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.57.0-SNAPSHOT~36bc792951, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section baseline
no_agent (18.934 ms) : 18746, 19122
. : milestone, 18934,
appsec (18.925 ms) : 18733, 19118
. : milestone, 18925,
code_origins (18.034 ms) : 17852, 18216
. : milestone, 18034,
iast (17.86 ms) : 17683, 18037
. : milestone, 17860,
profiling (18.697 ms) : 18507, 18887
. : milestone, 18697,
tracing (17.661 ms) : 17487, 17835
. : milestone, 17661,
section candidate
no_agent (17.958 ms) : 17772, 18144
. : milestone, 17958,
appsec (19.247 ms) : 19052, 19442
. : milestone, 19247,
code_origins (18.028 ms) : 17849, 18207
. : milestone, 18028,
iast (18.005 ms) : 17821, 18190
. : milestone, 18005,
profiling (19.001 ms) : 18807, 19194
. : milestone, 19001,
tracing (17.842 ms) : 17665, 18019
. : milestone, 17842,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 10 metrics, 2 unstable metrics. Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.57.0-SNAPSHOT~36bc792951, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section baseline
no_agent (15.028 s) : 15028000, 15028000
. : milestone, 15028000,
appsec (14.54 s) : 14540000, 14540000
. : milestone, 14540000,
iast (18.433 s) : 18433000, 18433000
. : milestone, 18433000,
iast_GLOBAL (18.28 s) : 18280000, 18280000
. : milestone, 18280000,
profiling (14.781 s) : 14781000, 14781000
. : milestone, 14781000,
tracing (14.751 s) : 14751000, 14751000
. : milestone, 14751000,
section candidate
no_agent (15.003 s) : 15003000, 15003000
. : milestone, 15003000,
appsec (14.793 s) : 14793000, 14793000
. : milestone, 14793000,
iast (18.028 s) : 18028000, 18028000
. : milestone, 18028000,
iast_GLOBAL (18.26 s) : 18260000, 18260000
. : milestone, 18260000,
profiling (14.764 s) : 14764000, 14764000
. : milestone, 14764000,
tracing (14.595 s) : 14595000, 14595000
. : milestone, 14595000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.57.0-SNAPSHOT~36bc792951, baseline=1.57.0-SNAPSHOT~c714e59b1c
dateFormat X
axisFormat %s
section baseline
no_agent (1.486 ms) : 1474, 1497
. : milestone, 1486,
appsec (2.467 ms) : 2415, 2519
. : milestone, 2467,
iast (2.215 ms) : 2151, 2280
. : milestone, 2215,
iast_GLOBAL (2.263 ms) : 2198, 2327
. : milestone, 2263,
profiling (2.48 ms) : 2322, 2637
. : milestone, 2480,
tracing (2.041 ms) : 1990, 2091
. : milestone, 2041,
section candidate
no_agent (1.474 ms) : 1462, 1485
. : milestone, 1474,
appsec (3.701 ms) : 3484, 3917
. : milestone, 3701,
iast (2.214 ms) : 2151, 2278
. : milestone, 2214,
iast_GLOBAL (2.259 ms) : 2194, 2324
. : milestone, 2259,
profiling (2.059 ms) : 2007, 2111
. : milestone, 2059,
tracing (2.042 ms) : 1991, 2092
. : milestone, 2042,
|
What Does This Do
Motivation
Additional Notes
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: [PROJ-IDENT]