Skip to content

Provide configurable memory limit for Conn tracker buffer usage #2196

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

ddelnano
Copy link
Member

@ddelnano ddelnano commented May 9, 2025

Summary: Provide configurable memory limit for Conn tracker buffer usage

Some memory conscious users want to prevent PEM's from having unbounded memory use. The socket tracer's conn tracker component allows unbounded memory growth due to storing an uncapped amount of socket data. From profiling the PEM's heap use, this memory growth is a significant contributor to the PEM's memory footprint.

By leveraging the existing table store limit and this new configuration option, these memory conscious users run Pixie with a smaller and more predictable steady state memory usage.

Relevant Issues: N/A

Type of change: /kind feature

Test Plan: Ran perf_tool and k9s based load tests to verify the following:

  • Verified results by running PEM's with a 0.5-1 GiB memory limit
  • Verified Conn tracker buffers no longer showed up as significant memory contributors in heap profiles.

Changelog Message: PEM's can now limit the total memory used by Pixie's socket tracer buffers through the --total_conn_tracker_mem_usage command line flag or the PX_TOTAL_CONN_TRACKER_MEM_USAGE env var. This allows memory conscious users to have more predictable memory use when paired with PL_TABLE_STORE_TABLE_SIZE_LIMIT.

Signed-off-by: Dom Del Nano <ddelnano@gmail.com>
(cherry picked from commit aea0a95)
@ddelnano ddelnano requested a review from a team as a code owner May 9, 2025 22:05
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