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

Add integration with rust-jemalloc-pprof for easy mem perf #1577

Open
jiacai2050 opened this issue Oct 17, 2024 · 4 comments
Open

Add integration with rust-jemalloc-pprof for easy mem perf #1577

jiacai2050 opened this issue Oct 17, 2024 · 4 comments
Labels
contributor friendly Good for contribution good first issue Good for newcomers

Comments

@jiacai2050
Copy link
Contributor

jiacai2050 commented Oct 17, 2024

Describe This Problem

rust-jemalloc-pprof is a cool project to do memory perf.

Proposal

Add a new HTTP endpoint /debug/pprof/heap to serve the profiling.

Additional Context

We can remove old /debug/profile/heap/{seconds} endpoint when this is ready.

fn profile_heap(

@jiacai2050 jiacai2050 added good first issue Good for newcomers contributor friendly Good for contribution labels Oct 17, 2024
@jiacai2050
Copy link
Contributor Author

@zuston Thanks, assigned.

@zuston
Copy link
Member

zuston commented Nov 8, 2024

@zuston Thanks, assigned.

From this crate doc, I found this way is not better than the vaillina jeprof way. It just generates the pprof format, if you want to dig it with human format, you have to execute in the host machine instead of any remote machine to call api directly. Because it still depends on the execute binary.

@zuston
Copy link
Member

zuston commented Nov 11, 2024

PTAL @jiacai2050

@jiacai2050
Copy link
Contributor Author

you have to execute in the host machine instead of any remote machine to call api directly.

What do you mean by call api directly?

With pprof, we can explore the perf data in various format, such as flamegraph

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
contributor friendly Good for contribution good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

2 participants