Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor bpf histogram indexing #249

Merged
merged 5 commits into from
Apr 30, 2024
Merged

Conversation

brayniac
Copy link
Contributor

@brayniac brayniac commented Apr 30, 2024

The previous BPF histogram indexing was based on a reduction of the algorithm in an older version of the histogram crate that had both an a and b component. The latest histogram crate replaced those with a single grouping power.

This change brings the indexing more in-line with the Rust version. Specific reductions and optimizations are made based on the specific values that we use throughout Rezolus.

The previous BPF histogram indexing was based on a reduction of the
algorithm in an older version of the histogram crate that had both
an a and b component. The latest histogram crate replaced those
with a single grouping power.

This change brings the indexing more in-line with the Rust version.
Specific reductions and optimizations are made based on the specific
values that we use throughout Rezolus.

We also add indexing for grouping powers 4, 5, and 6 so that in the
future we can use lower-resolution histograms for cases where we are
doing per-group histograms (eg: per group of PIDs/TIDs) and would
otherwise be adding a fair amount of memory footprint to Rezolus to
enable scoped histograms.
Copy link

@thinkingfish thinkingfish left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One nit-picking otherwise LGTM

src/common/bpf/histogram.h Outdated Show resolved Hide resolved
@brayniac brayniac merged commit 23b1eb8 into iopsystems:main Apr 30, 2024
19 checks passed
@brayniac brayniac deleted the bpf-histograms branch April 30, 2024 22:30
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.

2 participants