Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
bench
command
Command bench is a thesis-grade measurement harness for bubblepprof's target-side profiling paths.
|
Command bench is a thesis-grade measurement harness for bubblepprof's target-side profiling paths. |
|
bubblepprof
command
Command bubblepprof is the external analyser for bubblepprof capture bundles: it fetches a bundle from a target process serving GET /debug/memusage/bundle (or reads a saved bundle file) and runs the same label-selected heap reachability analysis as the in-process POST /debug/memusage endpoint, out of process.
|
Command bubblepprof is the external analyser for bubblepprof capture bundles: it fetches a bundle from a target process serving GET /debug/memusage/bundle (or reads a saved bundle file) and runs the same label-selected heap reachability analysis as the in-process POST /debug/memusage endpoint, out of process. |
|
labeloffsetprobe
command
labeloffsetprobe is a development-only tool that captures a live heap dump from itself and probes for the byte offset of runtime.g.labels in the running Go runtime.
|
labeloffsetprobe is a development-only tool that captures a live heap dump from itself and probes for the byte offset of runtime.g.labels in the running Go runtime. |
|
examples
|
|
|
log_ingest
command
log_ingest is a multi-tenant in-memory log-ingestion showcase for bubblepprof, modeled on Go observability backends like Loki / Cortex / Mimir where the operational question is literally "how much heap is tenant X holding right now?" — the exact question /debug/memusage answers.
|
log_ingest is a multi-tenant in-memory log-ingestion showcase for bubblepprof, modeled on Go observability backends like Loki / Cortex / Mimir where the operational question is literally "how much heap is tenant X holding right now?" — the exact question /debug/memusage answers. |
|
order_pipeline
command
order_pipeline is an end-to-end showcase of bubblepprof instrumentation on a realistic-looking workload.
|
order_pipeline is an end-to-end showcase of bubblepprof instrumentation on a realistic-looking workload. |
|
profiler_load
command
profiler_load is a high-load stress test and heap generator for bubblepprof.
|
profiler_load is a high-load stress test and heap generator for bubblepprof. |
|
internal
|
|
|
addrspace
Package addrspace reads bytes at runtime virtual addresses for the heap-native pprof label decoder.
|
Package addrspace reads bytes at runtime virtual addresses for the heap-native pprof label decoder. |
|
bundle
Package bundle implements the external-analyser capture artifact: a tar stream containing a heap dump, a snapshot of the target's read-only memory segments (so literal pprof label strings can be recovered out of process), and metadata.
|
Package bundle implements the external-analyser capture artifact: a tar stream containing a heap dump, a snapshot of the target's read-only memory segments (so literal pprof label strings can be recovered out of process), and metadata. |
|
capture
Package capture writes the calling process's heap dump to a temp file and returns it positioned at offset 0.
|
Package capture writes the calling process's heap dump to a temp file and returns it positioned at offset 0. |
|
cli
Package cli implements the bubblepprof external analyser command:
|
Package cli implements the bubblepprof external analyser command: |
|
heapdump
Package heapdump parses the binary format written by runtime/debug.WriteHeapDump (see runtime/heapdump.go) into a normalized heapsnapshot.HeapSnapshot.
|
Package heapdump parses the binary format written by runtime/debug.WriteHeapDump (see runtime/heapdump.go) into a normalized heapsnapshot.HeapSnapshot. |
|
heaplabels
Package heaplabels prototypes recovery of runtime/pprof goroutine labels directly from the heap dump's runtime.g objects.
|
Package heaplabels prototypes recovery of runtime/pprof goroutine labels directly from the heap dump's runtime.g objects. |
|
heapsnapshot
Package heapsnapshot holds the normalized in-memory model produced by parsing a runtime/debug.WriteHeapDump output.
|
Package heapsnapshot holds the normalized in-memory model produced by parsing a runtime/debug.WriteHeapDump output. |
|
memusage
Package memusage implements the core computation behind the /debug/memusage HTTP endpoint: it pairs heap-dump-derived reachability with heap-native pprof label recovery so callers can ask "how much heap is reachable from goroutines carrying these standard runtime/pprof labels?".
|
Package memusage implements the core computation behind the /debug/memusage HTTP endpoint: it pairs heap-dump-derived reachability with heap-native pprof label recovery so callers can ask "how much heap is reachable from goroutines carrying these standard runtime/pprof labels?". |
|
runtimelayout
Package runtimelayout describes the private Go runtime layout that heap-native pprof label recovery depends on, and resolves it from a small verified table.
|
Package runtimelayout describes the private Go runtime layout that heap-native pprof label recovery depends on, and resolves it from a small verified table. |
|
snapshotgraph
Package snapshotgraph turns a parsed heapsnapshot.HeapSnapshot into a compact process-wide object graph with per-goroutine and process-global reachability sets.
|
Package snapshotgraph turns a parsed heapsnapshot.HeapSnapshot into a compact process-wide object graph with per-goroutine and process-global reachability sets. |
|
pkg
|
|
Click to show internal directories.
Click to hide internal directories.