Skip to content

perf(profiling): reduce profiler arena memory footprint#18469

Draft
taegyunkim wants to merge 6 commits into
mainfrom
taegyunkim/prof-14423-reduce-profiler-arena
Draft

perf(profiling): reduce profiler arena memory footprint#18469
taegyunkim wants to merge 6 commits into
mainfrom
taegyunkim/prof-14423-reduce-profiler-arena

Conversation

@taegyunkim

@taegyunkim taegyunkim commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

Description

Pins the src/native libdatadog dependencies to commit b8f8c6de3c0028133d78996926d4777aa20f45c9 from DataDog/libdatadog#2048 to pick up the profiler arena memory-footprint reduction.

This also adapts the tracer flare native wrapper to the libdatadog remote-config parser registry API, which replaces RemoteConfigData with parsed product data returned by default_registry().parse(...). The updated pin also includes the upstream crate rename from datadog-remote-config to libdd-remote-config; dd-trace-py keeps the existing Rust import name via Cargo's package = "libdd-remote-config" alias.

Testing

  • cd src/native && cargo check --features profiling
  • scripts/run-tests --venv 803a341 tests/internal/test_tracer_flare_native.py -- -- tests/internal/test_tracer_flare_native.py -q
  • scripts/run-tests --venv 803a341 tests/internal/test_tracer_flare.py -- -- tests/internal/test_tracer_flare.py::TracerFlareSubscriberTests::test_configuration_order_payload_is_skipped tests/internal/test_tracer_flare.py::TracerFlareSubscriberTests::test_process_flare_request_success -q
  • scripts/lint fmt setup.py
  • scripts/lint spelling releasenotes/notes/profiling-libdatadog-reduce-profiler-arena-d781a459638124bd.yaml
  • git diff --check
  • cargo check --manifest-path src/native/Cargo.toml --locked
  • cargo check --manifest-path src/native/Cargo.toml --locked --all-features

Risks

Additional Notes

Native review evidence:

  • Build/release: cargo check --features profiling compiled the native crate against the original libdatadog PR pin; cargo check --manifest-path src/native/Cargo.toml --locked --all-features compiled the native crate against the updated b8f8c6de3c0028133d78996926d4777aa20f45c9 pin.
  • Version awareness: verified b8f8c6de3c0028133d78996926d4777aa20f45c9 is associated with perf(profiling): reduce profiler arena memory footprint libdatadog#2048, confirmed its rust-toolchain.toml still requires Rust 1.87.0, and adapted to the pinned commit's remote-config crate rename/API.
  • Local profiler memory benchmarks were not run; expected profiler memory impact comes from the upstream libdatadog PR.

@cit-pr-commenter-54b7da

cit-pr-commenter-54b7da Bot commented Jun 4, 2026

Copy link
Copy Markdown

Codeowners resolved as

setup.py                                                                @DataDog/python-guild
src/native/Cargo.lock                                                   @DataDog/apm-core-python
src/native/Cargo.toml                                                   @DataDog/apm-core-python

@datadog-prod-us1-3

datadog-prod-us1-3 Bot commented Jun 4, 2026

Copy link
Copy Markdown

Pipelines  Tests

Fix all issues with BitsAI

⚠️ Warnings

🚦 8 Pipeline jobs failed

DataDog/apm-reliability/dd-trace-py | build linux serverless: [amd64, cp315-cp315, v113741238-d2b8243-manylinux2014_x86_64, 1]   View in Datadog   GitLab

DataDog/apm-reliability/dd-trace-py | build linux serverless: [amd64, cp315-cp315, v113741491-d2b8243-musllinux_1_2_x86_64, 1]   View in Datadog   GitLab

DataDog/apm-reliability/dd-trace-py | build linux serverless: [arm64, cp315-cp315, v113741357-d2b8243-manylinux2014_aarch64, 1]   View in Datadog   GitLab

View all 8 failed jobs.

ℹ️ Info

No other issues found (see more)

🧪 All tests passed
❄️ No new flaky tests detected

Useful? React with 👍 / 👎

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 5a82f85 | Docs | Datadog PR Page | Give us feedback!

@pr-commenter

pr-commenter Bot commented Jun 4, 2026

Copy link
Copy Markdown

Benchmarks

Benchmark execution time: 2026-06-10 19:04:57

Comparing candidate commit 5a82f85 in PR branch taegyunkim/prof-14423-reduce-profiler-arena with baseline commit 3fbaabe in branch main.

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

scenario:iast_aspects-re_match_noaspect

  • 🟥 execution_time [+30.007µs; +34.676µs] or [+9.102%; +10.518%]

scenario:iastaspects-index_aspect

  • 🟥 execution_time [+8.578µs; +11.053µs] or [+7.040%; +9.070%]

scenario:iastaspects-ljust_aspect

  • 🟥 execution_time [+72.093µs; +79.594µs] or [+12.217%; +13.488%]

scenario:iastaspects-stringio_noaspect

  • 🟥 execution_time [+33.191µs; +38.726µs] or [+8.868%; +10.347%]

scenario:iastaspectsospath-ospathbasename_aspect

  • 🟥 execution_time [+97.582µs; +105.899µs] or [+22.281%; +24.180%]

scenario:span-start

  • 🟥 execution_time [+1.247ms; +1.395ms] or [+7.997%; +8.946%]

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant