2a793e36dc
Dumps information about allocation events in smart allocator, and aggregates some information such as bytes allocated per callsite in the current request (or across requests). This information can be gathered in the heaptrace command, and the information collected during the trace is enough to find how much memory an object is responsible for (i.e. keeping reachable). It's all conditionally compiled because perflab showed a pretty significant instruction regression if it was a runtime option. You'll need to fbconfig with --extra-cxxflags=-DMEMORY_PROFILING in order to use it. This isn't done, but I wanted to get some feedback on where I should take this (general design, what to log, where to dump stuff, etc)