go /
debug /
545543929d8ccc043f8e537de66eafa69c90e046 gocore: add dominator tree computation
Calculate the heap's dominator tree using modified L-T, reverse its
edges, and use that to calculate the per-object retained size.
One small functionality change: heapInfo.firstIdx is now set for empty
chunks, allowing binary search over Process.heapInfo.
Haven't really figured out what the public API for this should be yet;
maybe it's okay to expose the vertex names and provide an iterator
method.
This should be pretty fast, but I haven't benchmarked it yet, so there
might be some low-hanging fruit lying around.
Change-Id: I2c85c29514a0f2e60231f13f0c058dd7f12b548e
Reviewed-on: https://go-review.googlesource.com/98736
Reviewed-by: Keith Randall <khr@golang.org>
5 files changed