Java memory allocation profiler