Rework Queue time tracking to avoid unwrapping the task type unless the event will be recorded#5785
Merged
Merged
Conversation
jbachorik
approved these changes
Aug 25, 2023
mcculls
reviewed
Aug 25, 2023
mcculls
approved these changes
Aug 25, 2023
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 62 cases. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.20.0-SNAPSHOT~e39133c39d, baseline=1.20.0-SNAPSHOT~acb417b5b2
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (989.507 ms) : 0, 989507
Total [baseline] (9.192 s) : 0, 9191866
Agent [candidate] (991.778 ms) : 0, 991778
Total [candidate] (9.208 s) : 0, 9208336
section appsec
Agent [baseline] (1.075 s) : 0, 1074670
Total [baseline] (9.287 s) : 0, 9286656
Agent [candidate] (1.075 s) : 0, 1074694
Total [candidate] (9.233 s) : 0, 9232554
section iast
Agent [baseline] (1.093 s) : 0, 1093079
Total [baseline] (9.406 s) : 0, 9406177
Agent [candidate] (1.093 s) : 0, 1092812
Total [candidate] (9.465 s) : 0, 9464795
section profiling
Agent [baseline] (1.157 s) : 0, 1156559
Total [baseline] (9.465 s) : 0, 9464970
Agent [candidate] (1.159 s) : 0, 1158864
Total [candidate] (9.473 s) : 0, 9472774
gantt
title petclinic - break down per module: candidate=1.20.0-SNAPSHOT~e39133c39d, baseline=1.20.0-SNAPSHOT~acb417b5b2
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (613.093 ms) : 0, 613093
BytebuddyAgent [candidate] (614.612 ms) : 0, 614612
GlobalTracer [baseline] (284.782 ms) : 0, 284782
GlobalTracer [candidate] (286.591 ms) : 0, 286591
AppSec [baseline] (50.59 ms) : 0, 50590
AppSec [candidate] (49.505 ms) : 0, 49505
Remote Config [baseline] (670.325 µs) : 0, 670
Remote Config [candidate] (661.896 µs) : 0, 662
Telemetry [baseline] (6.068 ms) : 0, 6068
Telemetry [candidate] (6.059 ms) : 0, 6059
section appsec
BytebuddyAgent [baseline] (613.856 ms) : 0, 613856
BytebuddyAgent [candidate] (613.517 ms) : 0, 613517
GlobalTracer [baseline] (284.684 ms) : 0, 284684
GlobalTracer [candidate] (285.163 ms) : 0, 285163
AppSec [baseline] (135.309 ms) : 0, 135309
AppSec [candidate] (135.267 ms) : 0, 135267
Remote Config [baseline] (726.178 µs) : 0, 726
Remote Config [candidate] (720.799 µs) : 0, 721
Telemetry [baseline] (5.781 ms) : 0, 5781
Telemetry [candidate] (5.735 ms) : 0, 5735
section iast
BytebuddyAgent [baseline] (720.001 ms) : 0, 720001
BytebuddyAgent [candidate] (719.434 ms) : 0, 719434
GlobalTracer [baseline] (271.182 ms) : 0, 271182
GlobalTracer [candidate] (271.518 ms) : 0, 271518
AppSec [baseline] (47.491 ms) : 0, 47491
AppSec [candidate] (47.43 ms) : 0, 47430
Remote Config [baseline] (542.708 µs) : 0, 543
Remote Config [candidate] (551.563 µs) : 0, 552
Telemetry [baseline] (5.695 ms) : 0, 5695
Telemetry [candidate] (5.666 ms) : 0, 5666
IAST [baseline] (13.742 ms) : 0, 13742
IAST [candidate] (13.8 ms) : 0, 13800
section profiling
ProfilingAgent [baseline] (78.589 ms) : 0, 78589
ProfilingAgent [candidate] (76.777 ms) : 0, 76777
BytebuddyAgent [baseline] (624.12 ms) : 0, 624120
BytebuddyAgent [candidate] (626.452 ms) : 0, 626452
GlobalTracer [baseline] (345.478 ms) : 0, 345478
GlobalTracer [candidate] (347.052 ms) : 0, 347052
AppSec [baseline] (49.07 ms) : 0, 49070
AppSec [candidate] (49.027 ms) : 0, 49027
Remote Config [baseline] (653.837 µs) : 0, 654
Remote Config [candidate] (660.692 µs) : 0, 661
Telemetry [baseline] (5.949 ms) : 0, 5949
Telemetry [candidate] (5.964 ms) : 0, 5964
Profiling [baseline] (78.613 ms) : 0, 78613
Profiling [candidate] (76.802 ms) : 0, 76802
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.20.0-SNAPSHOT~e39133c39d, baseline=1.20.0-SNAPSHOT~acb417b5b2
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (995.816 ms) : 0, 995816
Total [baseline] (8.662 s) : 0, 8661569
Agent [candidate] (990.033 ms) : 0, 990033
Total [candidate] (8.668 s) : 0, 8667735
section appsec
Agent [baseline] (1.073 s) : 0, 1072846
Total [baseline] (8.745 s) : 0, 8744642
Agent [candidate] (1.077 s) : 0, 1077457
Total [candidate] (8.758 s) : 0, 8757751
section iast
Agent [baseline] (1.092 s) : 0, 1092396
Total [baseline] (9.161 s) : 0, 9160957
Agent [candidate] (1.1 s) : 0, 1099649
Total [candidate] (9.228 s) : 0, 9227779
section profiling
Agent [baseline] (1.155 s) : 0, 1155216
Total [baseline] (8.849 s) : 0, 8848975
Agent [candidate] (1.161 s) : 0, 1160868
Total [candidate] (8.881 s) : 0, 8880571
gantt
title insecure-bank - break down per module: candidate=1.20.0-SNAPSHOT~e39133c39d, baseline=1.20.0-SNAPSHOT~acb417b5b2
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (617.531 ms) : 0, 617531
BytebuddyAgent [candidate] (613.884 ms) : 0, 613884
GlobalTracer [baseline] (286.305 ms) : 0, 286305
GlobalTracer [candidate] (285.032 ms) : 0, 285032
AppSec [baseline] (50.549 ms) : 0, 50549
AppSec [candidate] (50.147 ms) : 0, 50147
Remote Config [baseline] (669.503 µs) : 0, 670
Remote Config [candidate] (657.705 µs) : 0, 658
Telemetry [baseline] (6.057 ms) : 0, 6057
Telemetry [candidate] (5.964 ms) : 0, 5964
section appsec
BytebuddyAgent [baseline] (612.997 ms) : 0, 612997
BytebuddyAgent [candidate] (615.212 ms) : 0, 615212
GlobalTracer [baseline] (284.647 ms) : 0, 284647
GlobalTracer [candidate] (286.612 ms) : 0, 286612
AppSec [baseline] (134.549 ms) : 0, 134549
AppSec [candidate] (134.649 ms) : 0, 134649
Remote Config [baseline] (717.437 µs) : 0, 717
Remote Config [candidate] (722.702 µs) : 0, 723
Telemetry [baseline] (5.756 ms) : 0, 5756
Telemetry [candidate] (5.78 ms) : 0, 5780
section iast
BytebuddyAgent [baseline] (719.548 ms) : 0, 719548
BytebuddyAgent [candidate] (724.534 ms) : 0, 724534
GlobalTracer [baseline] (271.068 ms) : 0, 271068
GlobalTracer [candidate] (272.585 ms) : 0, 272585
AppSec [baseline] (47.4 ms) : 0, 47400
AppSec [candidate] (47.746 ms) : 0, 47746
Remote Config [baseline] (540.69 µs) : 0, 541
Remote Config [candidate] (563.088 µs) : 0, 563
Telemetry [baseline] (5.692 ms) : 0, 5692
Telemetry [candidate] (5.71 ms) : 0, 5710
IAST [baseline] (13.73 ms) : 0, 13730
IAST [candidate] (13.965 ms) : 0, 13965
section profiling
ProfilingAgent [baseline] (76.558 ms) : 0, 76558
ProfilingAgent [candidate] (77.472 ms) : 0, 77472
BytebuddyAgent [baseline] (624.325 ms) : 0, 624325
BytebuddyAgent [candidate] (627.071 ms) : 0, 627071
GlobalTracer [baseline] (345.713 ms) : 0, 345713
GlobalTracer [candidate] (347.433 ms) : 0, 347433
AppSec [baseline] (49.123 ms) : 0, 49123
AppSec [candidate] (49.197 ms) : 0, 49197
Remote Config [baseline] (652.209 µs) : 0, 652
Remote Config [candidate] (646.314 µs) : 0, 646
Telemetry [baseline] (6.018 ms) : 0, 6018
Telemetry [candidate] (5.993 ms) : 0, 5993
Profiling [baseline] (76.583 ms) : 0, 76583
Profiling [candidate] (77.497 ms) : 0, 77497
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 24 cases. Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.20.0-SNAPSHOT~e39133c39d, baseline=1.20.0-SNAPSHOT~acb417b5b2
dateFormat X
axisFormat %s
section baseline
no_agent (1.338 ms) : 1319, 1357
. : milestone, 1338,
appsec (1.7 ms) : 1675, 1724
. : milestone, 1700,
iast (1.473 ms) : 1449, 1496
. : milestone, 1473,
profiling (1.453 ms) : 1428, 1479
. : milestone, 1453,
tracing (1.438 ms) : 1414, 1462
. : milestone, 1438,
section candidate
no_agent (1.342 ms) : 1323, 1362
. : milestone, 1342,
appsec (1.681 ms) : 1656, 1705
. : milestone, 1681,
iast (1.438 ms) : 1414, 1462
. : milestone, 1438,
profiling (1.478 ms) : 1453, 1503
. : milestone, 1478,
tracing (1.436 ms) : 1412, 1460
. : milestone, 1436,
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.20.0-SNAPSHOT~e39133c39d, baseline=1.20.0-SNAPSHOT~acb417b5b2
dateFormat X
axisFormat %s
section baseline
no_agent (362.077 µs) : 341, 383
. : milestone, 362,
appsec (658.866 µs) : 638, 680
. : milestone, 659,
iast (450.611 µs) : 430, 471
. : milestone, 451,
iast_FULL (516.461 µs) : 496, 537
. : milestone, 516,
iast_INACTIVE (429.995 µs) : 409, 451
. : milestone, 430,
profiling (441.455 µs) : 420, 463
. : milestone, 441,
tracing (431.38 µs) : 411, 452
. : milestone, 431,
section candidate
no_agent (359.962 µs) : 340, 380
. : milestone, 360,
appsec (664.07 µs) : 643, 685
. : milestone, 664,
iast (456.744 µs) : 436, 478
. : milestone, 457,
iast_FULL (519.334 µs) : 499, 540
. : milestone, 519,
iast_INACTIVE (426.893 µs) : 406, 447
. : milestone, 427,
profiling (448.056 µs) : 427, 469
. : milestone, 448,
tracing (433.574 µs) : 412, 455
. : milestone, 434,
|
richardstartin
force-pushed
the
rgs/queue-time-performance
branch
from
August 25, 2023 12:49
e39133c to
a33c8a0
Compare
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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
TaskWrapperfrom bootstrap to internal api so it can be used by the profilerMotivation
Interface
instanceofchecks are dangerous in instrumentation because they may lead to flip-flopping ofsecondary_super_cachewhich can be a scalability bottleneck. This change delays unwrapping the task type until we know we will record a queue time sample, and therefore there is already a bottleneck anyway.Additional Notes