A few weeks ago I made this little tool for fun to visualize memory usage for multi threaded programs: it injects a little LD_PRELOAD lib overriding malloc() and friends and draws all allocations in a 2D hilbert projection of the heap; nice to get a "feel" of what your program is doing, also fun to watch and compare different GC implementations at work, for example:
<https://github.com/zevv/memgraph>
