Skip to content

Conversation

@jpbempel
Copy link
Member

@jpbempel jpbempel commented Oct 1, 2025

What Does This Do

Current SymDB serialization use intermediate full large buffer for every intermediate operation:

  • serializing to string
  • converting to UTF-8 byte array
  • compressing with gzip every operation imply potentially large buffer (several 10MBs). On constraint heaps it can lead to OOME. we now stream this process using outputstream, buffered sink for serialization so we have less large buffers in flight.

Motivation

Additional Notes

Contributor Checklist

Jira ticket: DEBUG-4545

@jpbempel jpbempel added the type: enhancement Enhancements and improvements label Oct 1, 2025
@jpbempel jpbempel requested a review from a team as a code owner October 1, 2025 08:05
@jpbempel jpbempel added the comp: debugger Dynamic Instrumentation label Oct 1, 2025
@jpbempel jpbempel requested review from evanchooly and removed request for a team October 1, 2025 08:05
@pr-commenter
Copy link

pr-commenter bot commented Oct 1, 2025

Debugger benchmarks

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
ci_job_date 1759331304 1759331649
end_time 2025-10-01T15:09:45 2025-10-01T15:15:30
git_branch master jpbempel/symdb-streaming
git_commit_sha 836ba8d e4b9cf7
start_time 2025-10-01T15:08:25 2025-10-01T15:14:10
See matching parameters
Baseline Candidate
ci_job_id 1157618441 1157618441
ci_pipeline_id 78085580 78085580
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
git_commit_date 1759330748 1759330748

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 9 metrics, 6 unstable metrics.

See unchanged results
scenario Δ mean agg_http_req_duration_min Δ mean agg_http_req_duration_p50 Δ mean agg_http_req_duration_p75 Δ mean agg_http_req_duration_p99 Δ mean throughput
scenario:noprobe unstable
[-13.147µs; +24.566µs] or [-4.761%; +8.896%]
unstable
[-21.790µs; +35.519µs] or [-6.924%; +11.287%]
unstable
[-31.557µs; +47.239µs] or [-9.623%; +14.405%]
unstable
[-198.588µs; +24.028µs] or [-19.487%; +2.358%]
same
scenario:basic unsure
[+0.564µs; +6.982µs] or [+0.227%; +2.809%]
same same unstable
[-257.884µs; -83.467µs] or [-29.137%; -9.430%]
unstable
[-218.251op/s; +76.003op/s] or [-8.075%; +2.812%]
scenario:loop unsure
[+5.463µs; +10.962µs] or [+0.062%; +0.124%]
unsure
[+2.929µs; +12.955µs] or [+0.033%; +0.145%]
unsure
[+10.550µs; +20.818µs] or [+0.117%; +0.231%]
same same
Request duration reports for reports
gantt
    title reports - request duration [CI 0.99] : candidate=None, baseline=None
    dateFormat X
    axisFormat %s
section baseline
noprobe (314.705 µs) : 292, 337
.   : milestone, 315,
basic (275.256 µs) : 269, 281
.   : milestone, 275,
loop (8.952 ms) : 8948, 8956
.   : milestone, 8952,
section candidate
noprobe (321.569 µs) : 290, 353
.   : milestone, 322,
basic (278.459 µs) : 273, 284
.   : milestone, 278,
loop (8.96 ms) : 8955, 8965
.   : milestone, 8960,
Loading
  • baseline results
Scenario Request median duration [CI 0.99]
noprobe 314.705 µs [292.173 µs, 337.236 µs]
basic 275.256 µs [269.227 µs, 281.286 µs]
loop 8.952 ms [8.948 ms, 8.956 ms]
  • candidate results
Scenario Request median duration [CI 0.99]
noprobe 321.569 µs [290.255 µs, 352.883 µs]
basic 278.459 µs [272.731 µs, 284.186 µs]
loop 8.96 ms [8.955 ms, 8.965 ms]

@datadog-official
Copy link

datadog-official bot commented Oct 1, 2025

🎯 Code Coverage
Patch Coverage: 93.75%
Total Coverage: 79.99% (+22.13%)

View detailed report

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: e4b9cf7 | Docs | Was this helpful? Give us feedback!

@pr-commenter
Copy link

pr-commenter bot commented Oct 1, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master jpbempel/symdb-streaming
git_commit_date 1759329350 1759330748
git_commit_sha 836ba8d e4b9cf7
release_version 1.54.0-SNAPSHOT~836ba8d864 1.54.0-SNAPSHOT~e4b9cf7516
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1759332503 1759332503
ci_job_id 1157618431 1157618431
ci_pipeline_id 78085580 78085580
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-3-cfdcc7x2 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-3-cfdcc7x2 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 60 metrics, 5 unstable metrics.

Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.54.0-SNAPSHOT~e4b9cf7516, baseline=1.54.0-SNAPSHOT~836ba8d864

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.019 s) : 0, 1018907
Total [baseline] (10.712 s) : 0, 10711957
Agent [candidate] (1.02 s) : 0, 1020053
Total [candidate] (10.625 s) : 0, 10625310
section appsec
Agent [baseline] (1.2 s) : 0, 1200175
Total [baseline] (11.127 s) : 0, 11126593
Agent [candidate] (1.193 s) : 0, 1193179
Total [candidate] (11.101 s) : 0, 11101124
section iast
Agent [baseline] (1.149 s) : 0, 1149481
Total [baseline] (10.982 s) : 0, 10981884
Agent [candidate] (1.15 s) : 0, 1150006
Total [candidate] (11.069 s) : 0, 11068578
section profiling
Agent [baseline] (1.164 s) : 0, 1163648
Total [baseline] (11.093 s) : 0, 11093000
Agent [candidate] (1.161 s) : 0, 1160613
Total [candidate] (11.058 s) : 0, 11057534
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.019 s -
Agent appsec 1.2 s 181.268 ms (17.8%)
Agent iast 1.149 s 130.574 ms (12.8%)
Agent profiling 1.164 s 144.741 ms (14.2%)
Total tracing 10.712 s -
Total appsec 11.127 s 414.636 ms (3.9%)
Total iast 10.982 s 269.927 ms (2.5%)
Total profiling 11.093 s 381.043 ms (3.6%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.02 s -
Agent appsec 1.193 s 173.126 ms (17.0%)
Agent iast 1.15 s 129.953 ms (12.7%)
Agent profiling 1.161 s 140.56 ms (13.8%)
Total tracing 10.625 s -
Total appsec 11.101 s 475.814 ms (4.5%)
Total iast 11.069 s 443.268 ms (4.2%)
Total profiling 11.058 s 432.223 ms (4.1%)
gantt
    title petclinic - break down per module: candidate=1.54.0-SNAPSHOT~e4b9cf7516, baseline=1.54.0-SNAPSHOT~836ba8d864

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.466 ms) : 0, 1466
crashtracking [candidate] (1.449 ms) : 0, 1449
BytebuddyAgent [baseline] (695.08 ms) : 0, 695080
BytebuddyAgent [candidate] (694.782 ms) : 0, 694782
GlobalTracer [baseline] (243.779 ms) : 0, 243779
GlobalTracer [candidate] (243.559 ms) : 0, 243559
AppSec [baseline] (31.499 ms) : 0, 31499
AppSec [candidate] (31.436 ms) : 0, 31436
Debugger [baseline] (6.412 ms) : 0, 6412
Debugger [candidate] (6.4 ms) : 0, 6400
Remote Config [baseline] (689.591 µs) : 0, 690
Remote Config [candidate] (678.587 µs) : 0, 679
Telemetry [baseline] (9.148 ms) : 0, 9148
Telemetry [candidate] (9.034 ms) : 0, 9034
Flare Poller [baseline] (9.56 ms) : 0, 9560
Flare Poller [candidate] (11.539 ms) : 0, 11539
section appsec
crashtracking [baseline] (1.47 ms) : 0, 1470
crashtracking [candidate] (1.446 ms) : 0, 1446
BytebuddyAgent [baseline] (722.461 ms) : 0, 722461
BytebuddyAgent [candidate] (716.861 ms) : 0, 716861
GlobalTracer [baseline] (237.197 ms) : 0, 237197
GlobalTracer [candidate] (236.009 ms) : 0, 236009
AppSec [baseline] (173.381 ms) : 0, 173381
AppSec [candidate] (173.572 ms) : 0, 173572
Debugger [baseline] (6.075 ms) : 0, 6075
Debugger [candidate] (6.044 ms) : 0, 6044
Remote Config [baseline] (646.659 µs) : 0, 647
Remote Config [candidate] (630.643 µs) : 0, 631
Telemetry [baseline] (8.471 ms) : 0, 8471
Telemetry [candidate] (8.463 ms) : 0, 8463
Flare Poller [baseline] (4.037 ms) : 0, 4037
Flare Poller [candidate] (4.028 ms) : 0, 4028
IAST [baseline] (25.165 ms) : 0, 25165
IAST [candidate] (24.963 ms) : 0, 24963
section iast
crashtracking [baseline] (1.451 ms) : 0, 1451
crashtracking [candidate] (1.446 ms) : 0, 1446
BytebuddyAgent [baseline] (813.654 ms) : 0, 813654
BytebuddyAgent [candidate] (814.435 ms) : 0, 814435
GlobalTracer [baseline] (233.153 ms) : 0, 233153
GlobalTracer [candidate] (233.402 ms) : 0, 233402
AppSec [baseline] (34.479 ms) : 0, 34479
AppSec [candidate] (34.084 ms) : 0, 34084
Debugger [baseline] (6.025 ms) : 0, 6025
Debugger [candidate] (6.052 ms) : 0, 6052
Remote Config [baseline] (596.239 µs) : 0, 596
Remote Config [candidate] (577.874 µs) : 0, 578
Telemetry [baseline] (8.069 ms) : 0, 8069
Telemetry [candidate] (8.144 ms) : 0, 8144
Flare Poller [baseline] (4.243 ms) : 0, 4243
Flare Poller [candidate] (4.234 ms) : 0, 4234
IAST [baseline] (26.355 ms) : 0, 26355
IAST [candidate] (26.334 ms) : 0, 26334
section profiling
ProfilingAgent [baseline] (102.774 ms) : 0, 102774
ProfilingAgent [candidate] (102.616 ms) : 0, 102616
crashtracking [baseline] (1.43 ms) : 0, 1430
crashtracking [candidate] (1.421 ms) : 0, 1421
BytebuddyAgent [baseline] (727.217 ms) : 0, 727217
BytebuddyAgent [candidate] (723.485 ms) : 0, 723485
GlobalTracer [baseline] (220.159 ms) : 0, 220159
GlobalTracer [candidate] (220.474 ms) : 0, 220474
AppSec [baseline] (31.641 ms) : 0, 31641
AppSec [candidate] (31.66 ms) : 0, 31660
Debugger [baseline] (7.385 ms) : 0, 7385
Debugger [candidate] (7.356 ms) : 0, 7356
Remote Config [baseline] (752.559 µs) : 0, 753
Remote Config [candidate] (733.181 µs) : 0, 733
Telemetry [baseline] (15.298 ms) : 0, 15298
Telemetry [candidate] (15.555 ms) : 0, 15555
Flare Poller [baseline] (4.157 ms) : 0, 4157
Flare Poller [candidate] (4.212 ms) : 0, 4212
Profiling [baseline] (103.489 ms) : 0, 103489
Profiling [candidate] (103.807 ms) : 0, 103807
Loading
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.54.0-SNAPSHOT~e4b9cf7516, baseline=1.54.0-SNAPSHOT~836ba8d864

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.016 s) : 0, 1016382
Total [baseline] (8.678 s) : 0, 8678296
Agent [candidate] (1.017 s) : 0, 1017255
Total [candidate] (8.634 s) : 0, 8634440
section iast
Agent [baseline] (1.158 s) : 0, 1157684
Total [baseline] (9.281 s) : 0, 9280609
Agent [candidate] (1.152 s) : 0, 1152490
Total [candidate] (9.329 s) : 0, 9329322
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.016 s -
Agent iast 1.158 s 141.302 ms (13.9%)
Total tracing 8.678 s -
Total iast 9.281 s 602.313 ms (6.9%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.017 s -
Agent iast 1.152 s 135.235 ms (13.3%)
Total tracing 8.634 s -
Total iast 9.329 s 694.883 ms (8.0%)
gantt
    title insecure-bank - break down per module: candidate=1.54.0-SNAPSHOT~e4b9cf7516, baseline=1.54.0-SNAPSHOT~836ba8d864

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.447 ms) : 0, 1447
crashtracking [candidate] (1.453 ms) : 0, 1453
BytebuddyAgent [baseline] (691.914 ms) : 0, 691914
BytebuddyAgent [candidate] (692.605 ms) : 0, 692605
GlobalTracer [baseline] (243.021 ms) : 0, 243021
GlobalTracer [candidate] (243.68 ms) : 0, 243680
AppSec [baseline] (31.543 ms) : 0, 31543
AppSec [candidate] (31.243 ms) : 0, 31243
Debugger [baseline] (6.357 ms) : 0, 6357
Debugger [candidate] (6.365 ms) : 0, 6365
Remote Config [baseline] (687.745 µs) : 0, 688
Remote Config [candidate] (671.857 µs) : 0, 672
Telemetry [baseline] (9.096 ms) : 0, 9096
Telemetry [candidate] (9.102 ms) : 0, 9102
Flare Poller [baseline] (11.143 ms) : 0, 11143
Flare Poller [candidate] (11.019 ms) : 0, 11019
section iast
crashtracking [baseline] (1.465 ms) : 0, 1465
crashtracking [candidate] (1.457 ms) : 0, 1457
BytebuddyAgent [baseline] (820.108 ms) : 0, 820108
BytebuddyAgent [candidate] (816.943 ms) : 0, 816943
GlobalTracer [baseline] (234.38 ms) : 0, 234380
GlobalTracer [candidate] (232.485 ms) : 0, 232485
IAST [baseline] (26.69 ms) : 0, 26690
IAST [candidate] (26.667 ms) : 0, 26667
AppSec [baseline] (34.366 ms) : 0, 34366
AppSec [candidate] (34.425 ms) : 0, 34425
Debugger [baseline] (6.118 ms) : 0, 6118
Debugger [candidate] (6.05 ms) : 0, 6050
Remote Config [baseline] (594.268 µs) : 0, 594
Remote Config [candidate] (585.894 µs) : 0, 586
Telemetry [baseline] (8.338 ms) : 0, 8338
Telemetry [candidate] (8.271 ms) : 0, 8271
Flare Poller [baseline] (4.261 ms) : 0, 4261
Flare Poller [candidate] (4.248 ms) : 0, 4248
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master jpbempel/symdb-streaming
git_commit_date 1759329350 1759330748
git_commit_sha 836ba8d e4b9cf7
release_version 1.54.0-SNAPSHOT~836ba8d864 1.54.0-SNAPSHOT~e4b9cf7516
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1759332162 1759332162
ci_job_id 1157618432 1157618432
ci_pipeline_id 78085580 78085580
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-j2z2byk3 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-j2z2byk3 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 2 performance improvements and 4 performance regressions! Performance is the same for 6 metrics, 12 unstable metrics.

scenario Δ mean http_req_duration Δ mean throughput candidate mean http_req_duration candidate mean throughput baseline mean http_req_duration baseline mean throughput
scenario:load:insecure-bank:profiling:high_load better
[-564.246µs; -249.768µs] or [-6.012%; -2.661%]
unstable
[-42.711op/s; +87.148op/s] or [-8.637%; +17.622%]
8.979ms 516.750op/s 9.386ms 494.531op/s
scenario:load:insecure-bank:no_agent:high_load worse
[+119.199µs; +227.042µs] or [+2.751%; +5.240%]
unstable
[-156.258op/s; +77.321op/s] or [-14.755%; +7.301%]
4.506ms 1019.531op/s 4.333ms 1059.000op/s
scenario:load:insecure-bank:iast_GLOBAL:high_load worse
[+548.513µs; +948.987µs] or [+5.375%; +9.300%]
unstable
[-82.168op/s; +20.668op/s] or [-18.049%; +4.540%]
10.953ms 424.500op/s 10.204ms 455.250op/s
scenario:load:petclinic:code_origins:high_load worse
[+1.838ms; +2.624ms] or [+4.317%; +6.164%]
unstable
[-13.030op/s; +2.055op/s] or [-11.852%; +1.869%]
44.805ms 104.450op/s 42.574ms 109.938op/s
scenario:load:petclinic:tracing:high_load worse
[+1.674ms; +2.519ms] or [+3.759%; +5.655%]
unstable
[-11.929op/s; +2.529op/s] or [-11.356%; +2.408%]
46.640ms 100.350op/s 44.543ms 105.050op/s
scenario:load:petclinic:appsec:high_load better
[-2.429ms; -1.462ms] or [-4.706%; -2.833%]
unstable
[-3.126op/s; +10.251op/s] or [-3.447%; +11.303%]
49.662ms 94.263op/s 51.608ms 90.700op/s
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.54.0-SNAPSHOT~e4b9cf7516, baseline=1.54.0-SNAPSHOT~836ba8d864
    dateFormat X
    axisFormat %s
section baseline
no_agent (36.122 ms) : 35827, 36418
.   : milestone, 36122,
appsec (51.608 ms) : 51150, 52065
.   : milestone, 51608,
code_origins (42.574 ms) : 42223, 42924
.   : milestone, 42574,
iast (45.285 ms) : 44906, 45663
.   : milestone, 45285,
profiling (48.947 ms) : 48505, 49389
.   : milestone, 48947,
tracing (44.543 ms) : 44163, 44924
.   : milestone, 44543,
section candidate
no_agent (35.922 ms) : 35634, 36209
.   : milestone, 35922,
appsec (49.662 ms) : 49221, 50103
.   : milestone, 49662,
code_origins (44.805 ms) : 44425, 45184
.   : milestone, 44805,
iast (45.784 ms) : 45380, 46188
.   : milestone, 45784,
profiling (49.491 ms) : 49062, 49921
.   : milestone, 49491,
tracing (46.64 ms) : 46236, 47044
.   : milestone, 46640,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 36.122 ms [35.827 ms, 36.418 ms] -
appsec 51.608 ms [51.15 ms, 52.065 ms] 15.485 ms (42.9%)
code_origins 42.574 ms [42.223 ms, 42.924 ms] 6.451 ms (17.9%)
iast 45.285 ms [44.906 ms, 45.663 ms] 9.162 ms (25.4%)
profiling 48.947 ms [48.505 ms, 49.389 ms] 12.825 ms (35.5%)
tracing 44.543 ms [44.163 ms, 44.924 ms] 8.421 ms (23.3%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 35.922 ms [35.634 ms, 36.209 ms] -
appsec 49.662 ms [49.221 ms, 50.103 ms] 13.74 ms (38.3%)
code_origins 44.805 ms [44.425 ms, 45.184 ms] 8.883 ms (24.7%)
iast 45.784 ms [45.38 ms, 46.188 ms] 9.862 ms (27.5%)
profiling 49.491 ms [49.062 ms, 49.921 ms] 13.569 ms (37.8%)
tracing 46.64 ms [46.236 ms, 47.044 ms] 10.718 ms (29.8%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.54.0-SNAPSHOT~e4b9cf7516, baseline=1.54.0-SNAPSHOT~836ba8d864
    dateFormat X
    axisFormat %s
section baseline
no_agent (4.333 ms) : 4283, 4383
.   : milestone, 4333,
iast (10.168 ms) : 9994, 10342
.   : milestone, 10168,
iast_FULL (14.564 ms) : 14273, 14855
.   : milestone, 14564,
iast_GLOBAL (10.204 ms) : 10027, 10382
.   : milestone, 10204,
profiling (9.386 ms) : 9241, 9531
.   : milestone, 9386,
tracing (7.954 ms) : 7840, 8069
.   : milestone, 7954,
section candidate
no_agent (4.506 ms) : 4456, 4557
.   : milestone, 4506,
iast (9.938 ms) : 9770, 10106
.   : milestone, 9938,
iast_FULL (15.16 ms) : 14861, 15458
.   : milestone, 15160,
iast_GLOBAL (10.953 ms) : 10759, 11147
.   : milestone, 10953,
profiling (8.979 ms) : 8831, 9126
.   : milestone, 8979,
tracing (7.767 ms) : 7644, 7889
.   : milestone, 7767,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.333 ms [4.283 ms, 4.383 ms] -
iast 10.168 ms [9.994 ms, 10.342 ms] 5.835 ms (134.7%)
iast_FULL 14.564 ms [14.273 ms, 14.855 ms] 10.231 ms (236.1%)
iast_GLOBAL 10.204 ms [10.027 ms, 10.382 ms] 5.872 ms (135.5%)
profiling 9.386 ms [9.241 ms, 9.531 ms] 5.053 ms (116.6%)
tracing 7.954 ms [7.84 ms, 8.069 ms] 3.621 ms (83.6%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.506 ms [4.456 ms, 4.557 ms] -
iast 9.938 ms [9.77 ms, 10.106 ms] 5.432 ms (120.5%)
iast_FULL 15.16 ms [14.861 ms, 15.458 ms] 10.653 ms (236.4%)
iast_GLOBAL 10.953 ms [10.759 ms, 11.147 ms] 6.447 ms (143.1%)
profiling 8.979 ms [8.831 ms, 9.126 ms] 4.473 ms (99.3%)
tracing 7.767 ms [7.644 ms, 7.889 ms] 3.26 ms (72.4%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master jpbempel/symdb-streaming
git_commit_date 1759329350 1759330748
git_commit_sha 836ba8d e4b9cf7
release_version 1.54.0-SNAPSHOT~836ba8d864 1.54.0-SNAPSHOT~e4b9cf7516
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1759332723 1759332723
ci_job_id 1157618433 1157618433
ci_pipeline_id 78085580 78085580
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-2-yrj5py88 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-2-yrj5py88 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 1 unstable metrics.

Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.54.0-SNAPSHOT~e4b9cf7516, baseline=1.54.0-SNAPSHOT~836ba8d864
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.473 ms) : 1461, 1484
.   : milestone, 1473,
appsec (3.706 ms) : 3489, 3924
.   : milestone, 3706,
iast (2.224 ms) : 2159, 2288
.   : milestone, 2224,
iast_GLOBAL (2.247 ms) : 2183, 2312
.   : milestone, 2247,
profiling (2.054 ms) : 2003, 2106
.   : milestone, 2054,
tracing (2.025 ms) : 1975, 2074
.   : milestone, 2025,
section candidate
no_agent (1.472 ms) : 1460, 1483
.   : milestone, 1472,
appsec (3.655 ms) : 3442, 3869
.   : milestone, 3655,
iast (2.211 ms) : 2147, 2275
.   : milestone, 2211,
iast_GLOBAL (2.255 ms) : 2191, 2320
.   : milestone, 2255,
profiling (2.074 ms) : 2021, 2127
.   : milestone, 2074,
tracing (2.026 ms) : 1976, 2076
.   : milestone, 2026,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.473 ms [1.461 ms, 1.484 ms] -
appsec 3.706 ms [3.489 ms, 3.924 ms] 2.234 ms (151.7%)
iast 2.224 ms [2.159 ms, 2.288 ms] 751.204 µs (51.0%)
iast_GLOBAL 2.247 ms [2.183 ms, 2.312 ms] 774.552 µs (52.6%)
profiling 2.054 ms [2.003 ms, 2.106 ms] 581.814 µs (39.5%)
tracing 2.025 ms [1.975 ms, 2.074 ms] 551.973 µs (37.5%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.472 ms [1.46 ms, 1.483 ms] -
appsec 3.655 ms [3.442 ms, 3.869 ms] 2.184 ms (148.4%)
iast 2.211 ms [2.147 ms, 2.275 ms] 739.446 µs (50.2%)
iast_GLOBAL 2.255 ms [2.191 ms, 2.32 ms] 783.589 µs (53.2%)
profiling 2.074 ms [2.021 ms, 2.127 ms] 602.169 µs (40.9%)
tracing 2.026 ms [1.976 ms, 2.076 ms] 554.856 µs (37.7%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.54.0-SNAPSHOT~e4b9cf7516, baseline=1.54.0-SNAPSHOT~836ba8d864
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.777 s) : 14777000, 14777000
.   : milestone, 14777000,
appsec (14.965 s) : 14965000, 14965000
.   : milestone, 14965000,
iast (18.461 s) : 18461000, 18461000
.   : milestone, 18461000,
iast_GLOBAL (18.228 s) : 18228000, 18228000
.   : milestone, 18228000,
profiling (15.486 s) : 15486000, 15486000
.   : milestone, 15486000,
tracing (15.259 s) : 15259000, 15259000
.   : milestone, 15259000,
section candidate
no_agent (15.483 s) : 15483000, 15483000
.   : milestone, 15483000,
appsec (15.083 s) : 15083000, 15083000
.   : milestone, 15083000,
iast (18.594 s) : 18594000, 18594000
.   : milestone, 18594000,
iast_GLOBAL (18.143 s) : 18143000, 18143000
.   : milestone, 18143000,
profiling (15.296 s) : 15296000, 15296000
.   : milestone, 15296000,
tracing (14.998 s) : 14998000, 14998000
.   : milestone, 14998000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.777 s [14.777 s, 14.777 s] -
appsec 14.965 s [14.965 s, 14.965 s] 188.0 ms (1.3%)
iast 18.461 s [18.461 s, 18.461 s] 3.684 s (24.9%)
iast_GLOBAL 18.228 s [18.228 s, 18.228 s] 3.451 s (23.4%)
profiling 15.486 s [15.486 s, 15.486 s] 709.0 ms (4.8%)
tracing 15.259 s [15.259 s, 15.259 s] 482.0 ms (3.3%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.483 s [15.483 s, 15.483 s] -
appsec 15.083 s [15.083 s, 15.083 s] -400.0 ms (-2.6%)
iast 18.594 s [18.594 s, 18.594 s] 3.111 s (20.1%)
iast_GLOBAL 18.143 s [18.143 s, 18.143 s] 2.66 s (17.2%)
profiling 15.296 s [15.296 s, 15.296 s] -187.0 ms (-1.2%)
tracing 14.998 s [14.998 s, 14.998 s] -485.0 ms (-3.1%)

Current SymDB serialization use intermediate full large buffer for
every intermediate operation:
 - serializing to string
 - converting to UTF-8 byte array
 - compressing with gzip
every operation imply potentially large buffer (several 10MBs).
On constraint heaps it can lead to OOME. we now stream this process
using outputstream, buffered sink for serialization so we have less
large buffers in flight.
@jpbempel jpbempel force-pushed the jpbempel/symdb-streaming branch from 519e8c2 to e4b9cf7 Compare October 1, 2025 14:59
@jpbempel jpbempel merged commit e814315 into master Oct 1, 2025
699 of 702 checks passed
@jpbempel jpbempel deleted the jpbempel/symdb-streaming branch October 1, 2025 20:37
@github-actions github-actions bot added this to the 1.54.0 milestone Oct 1, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp: debugger Dynamic Instrumentation type: enhancement Enhancements and improvements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants