Skip to content

experiment(agent-data-plane): use sampled allocator for DDA host profiler - #2075

Draft
tobz wants to merge 2 commits into
mainfrom
tobz/libdatadog-heap-profiler-globalalloc-experiment
Draft

experiment(agent-data-plane): use sampled allocator for DDA host profiler#2075
tobz wants to merge 2 commits into
mainfrom
tobz/libdatadog-heap-profiler-globalalloc-experiment

Conversation

@tobz

@tobz tobz commented Jul 10, 2026

Copy link
Copy Markdown
Member

Summary

Work in progress.

Change Type

  • Bug fix
  • New feature
  • Non-functional (chore, refactoring, docs)
  • Performance

How did you test this PR?

References

@tobz tobz added the type/chore Updates to dependencies or general "administrative" tasks necessary to maintain the codebase/repo. label Jul 10, 2026
@datadog-official

This comment has been minimized.

@pr-commenter

pr-commenter Bot commented Jul 10, 2026

Copy link
Copy Markdown

Regression Detector (Agent Data Plane)

Run ID: 0ef06adc-3186-4fed-ba2f-c37dabb690f3
Baseline: 2715682b · Comparison: d3da6271 · diff

Optimization Goals: ✅ No significant changes detected

Fine details of change detection per experiment (5)

Experiments configured erratic: true are tagged (ignored) and skipped when determining which experiments regressed or improved. Experiments which are detected as erratic at runtime are tagged (erratic) to flag that the run's sample dispersion was high, but their regression / improvement signal still counts.

experiment goal Δ mean % links
quality_gates_rss_dsd_heavy memory ⚪ -0.10 metrics profiles logs
quality_gates_rss_dsd_ultraheavy memory ⚪ -0.17 metrics profiles logs
quality_gates_rss_dsd_low memory ⚪ -0.40 metrics profiles logs
quality_gates_rss_dsd_medium memory ⚪ -0.42 metrics profiles logs
quality_gates_rss_idle memory ⚪ -0.97 metrics profiles logs
Bounds Checks: ✅ Passed (5)
experiment check replicates observed links
quality_gates_rss_dsd_heavy memory_usage 10/10 ✅ 133 MiB ≤ 140 MiB metrics profiles logs
quality_gates_rss_dsd_low memory_usage 10/10 ✅ 42.9 MiB ≤ 50 MiB metrics profiles logs
quality_gates_rss_dsd_medium memory_usage 10/10 ✅ 64.9 MiB ≤ 75 MiB metrics profiles logs
quality_gates_rss_dsd_ultraheavy memory_usage 10/10 ✅ 191 MiB ≤ 200 MiB metrics profiles logs
quality_gates_rss_idle memory_usage 10/10 ✅ 28.7 MiB ≤ 40 MiB metrics profiles logs
Explanation

A change is flagged as a regression when |Δ mean %| > 5.00% in the regressing direction for its optimization goal AND SMP marks the experiment as a regression (is_regression: true). Improvements use the matching criteria for the improving direction. Experiments configured erratic: true (tagged (ignored)) are skipped outright; experiments detected as erratic at runtime (tagged (erratic)) still count, since that flag describes sample dispersion rather than directional certainty. The Δ mean % cell is colored accordingly: 🟢 = improvement, 🔴 = regression, ⚪ = neutral. Reduction in CPU or memory is an improvement; reduction in ingress throughput is a regression.

@pr-commenter

pr-commenter Bot commented Jul 13, 2026

Copy link
Copy Markdown

Binary Size Analysis (Agent Data Plane)

Baseline: 2715682 · Comparison: d3da627 · diff
Analysis Configuration: stripped binaries · Pass/Fail Threshold: +5%
Sizes: 41.54 MiB (baseline) vs 41.43 MiB (comparison)
Size Change: -112.73 KiB (-0.27%)

✅ Binary size difference within threshold

Changes by Module
Module File Size Symbols
core +308.36 KiB 8460
alloc -183.04 KiB 2620
prost +85.13 KiB 212
tokio -51.00 KiB 1645
anyhow -35.26 KiB 760
tonic -18.28 KiB 374
chumsky +18.11 KiB 41
axum -17.98 KiB 279
figment -15.59 KiB 276
tower -14.73 KiB 219
rustls -14.01 KiB 319
std -13.50 KiB 269
http -13.17 KiB 218
futures_channel -12.55 KiB 99
aho_corasick -8.56 KiB 44
crossbeam_channel -7.83 KiB 84
saluki_components::encoders::datadog -7.53 KiB 57
tracing +6.23 KiB 54
http_body_util +5.91 KiB 120
hyper_util -5.77 KiB 70
Detailed Symbol Changes
    FILE SIZE        VM SIZE    
 --------------  -------------- 
  [NEW] +41.6Ki  [NEW] +41.4Ki    agent_data_plane::cli::run::handle_run_command::_{{closure}}::hb7509bde1fe8c2a1
  [NEW] +30.1Ki  [NEW] +29.9Ki    agent_data_plane::cli::dogstatsd::handle_dogstatsd_command::_{{closure}}::ha2ef2e36578baf17
  [NEW] +28.9Ki  [NEW] +28.8Ki    agent_data_plane::cli::run::create_topology::_{{closure}}::h149ccbd3009029ea
  [NEW] +24.9Ki  [NEW] +24.7Ki    agent_data_plane::internal::remote_agent::run_remote_agent_registration_loop::_{{closure}}::he3f705104b8a28eb
  [NEW] +23.4Ki  [NEW] +23.1Ki    _<agent_data_plane::components::host_tags::HostTagsConfiguration as saluki_core::components::transforms::builder::SynchronousTransformBuilder>::build::_{{closure}}::hbab9aeb89d74ff12
  [NEW] +21.5Ki  [NEW] +21.4Ki    agent_data_plane::internal::env::ADPEnvironmentProvider::from_configuration::_{{closure}}::hdcba8d2d0ebd7cee
  [NEW] +21.0Ki  [NEW] +20.8Ki    agent_data_plane::cli::debug::handle_debug_command::_{{closure}}::hc988735afebb8d60
  [NEW] +19.6Ki  [NEW] +19.3Ki    datadog_agent_commons::ipc::client::RemoteAgentClient::from_client_configuration::_{{closure}}::_{{closure}}::_{{closure}}::h58fe162554f98ae5
  [NEW] +19.2Ki  [NEW] +19.1Ki    agent_data_plane::internal::env::workload::build_collector::_{{closure}}::h76a24940626e5069
  [NEW] +18.5Ki  [NEW] +18.4Ki    agent_data_plane::main::_{{closure}}::h9d1e42c39e847afd
  [DEL] -17.7Ki  [DEL] -17.6Ki    agent_data_plane::main::_{{closure}}::hecc5209da13e7b3b
  [DEL] -19.5Ki  [DEL] -19.4Ki    agent_data_plane::internal::env::workload::build_collector::_{{closure}}::h68269a7c75296660
  [DEL] -19.6Ki  [DEL] -19.4Ki    datadog_agent_commons::ipc::client::RemoteAgentClient::from_client_configuration::_{{closure}}::_{{closure}}::_{{closure}}::hfe5418ff83bea119
  [DEL] -21.1Ki  [DEL] -20.9Ki    agent_data_plane::internal::env::ADPEnvironmentProvider::from_configuration::_{{closure}}::h2a4d118040535a27
  [DEL] -21.1Ki  [DEL] -21.0Ki    agent_data_plane::cli::debug::handle_debug_command::_{{closure}}::h52186509e2e9628d
  [DEL] -23.0Ki  [DEL] -22.8Ki    _<agent_data_plane::components::host_tags::HostTagsConfiguration as saluki_core::components::transforms::builder::SynchronousTransformBuilder>::build::_{{closure}}::h7d89934f63b89648
  [DEL] -24.8Ki  [DEL] -24.6Ki    agent_data_plane::internal::remote_agent::run_remote_agent_registration_loop::_{{closure}}::hf458fedae78eed58
  [DEL] -28.0Ki  [DEL] -27.9Ki    agent_data_plane::cli::run::create_topology::_{{closure}}::hb59d6631923a902b
  [DEL] -30.0Ki  [DEL] -29.9Ki    agent_data_plane::cli::dogstatsd::handle_dogstatsd_command::_{{closure}}::hf69bf5e5176a850d
  [DEL] -41.4Ki  [DEL] -41.2Ki    agent_data_plane::cli::run::handle_run_command::_{{closure}}::h244a74d1ea5c869f
  -0.5%  -114Ki  -0.3% -44.2Ki    [24388 Others]
  -0.3%  -112Ki  -0.1% -42.0Ki    TOTAL

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type/chore Updates to dependencies or general "administrative" tasks necessary to maintain the codebase/repo.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants