Conversation
…t always in docker `./run.sh <scenario> --flame` builds the bench with the `cpu-profile` feature (pprof, 99 Hz SIGPROF sampler) and writes flamegraph.svg. `--memory-snapshot` builds with `heap-profile` (jemalloc as the global allocator, sampling heap profiling) and writes heap-peak.svg: the live heap at the highest RSS of the run. A thread re-dumps the profile each time VmRSS grows by 5 % and only the last dump is rendered, after the sync. Without the flags neither profiler is compiled in. perf is not usable on the benchmark host (perf_event_paranoid=4) nor reliably under Docker Desktop, and jeprof needed path and placeholder workarounds, so both profilers now run inside the process. peak_rss_mib is read before the profiles are rendered: rendering the CPU flamegraph of a 20-minute run allocates ~2 GB, which otherwise showed up as a 4703 MiB peak and filled half of the heap snapshot. The client now always runs in the client container, shaped or not, and the binary is always built inside the Rust image, so it links against the container's glibc (a host build fails to start on hosts with a newer glibc than bookworm's). This drops the host-run path, the perf/perl/FlameGraph/OS checks and the policer fallback for kernels without ifb: a run whose download rate cannot be enforced now fails instead of producing a result that cannot be compared. `--wallets` with a relative path now resolves against the caller's directory instead of dash-spv-bench/. run.sh goes from 664 to 366 lines. Mainnet restore, mainnet.100mbi.100ms, on dev, --flame --memory-snapshot: 20.3 min, peak_rss_mib 2280, heap snapshot at 2243 MiB RSS (1.88 GB live), 14114383 sat, 13389 addresses. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017DruChNTWXwJoWPartZwCf
Contributor
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## dev #1022 +/- ##
==========================================
- Coverage 77.23% 77.22% -0.01%
==========================================
Files 329 329
Lines 83862 83862
==========================================
- Hits 64768 64764 -4
- Misses 19094 19098 +4
|
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017DruChNTWXwJoWPartZwCf
Collaborator
Author
|
see #1024 |
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.
No description provided.