Skip to content

debug workflow for "why is a process so big" #37

Description

@cnsgsz

I want to inspect what is causing my program to use more memory than I expected. It seems gperftool is deprecated in favor of abseil's tcmalloc and the new go-based pprof.

Is there a recommended workflow for inspecting what function etc is using the memory, like HeapProfilerStart() or env HEAPPROFILE=/tmp/mybin.hprof in gperftools, some flag, /heapz, etc? It seems to that I can call absl::MallocExtension::SnapshotCurrent(), but it returns tcmalloc::Profile -- is there a way to convert it to profile.proto which I assume is what the new pprof needs?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions