1. A computer implemented method to track allocation of a plurality of objects in a heap, the computer implemented method comprising: during an object allocation, preventing an object from being moved to another place in memory or being deleted, wherein preventing is performed concurrently with garbage collection on a second object not currently being allocated; notifying a profiler of object information based on the object allocation via a callback function, wherein object information is a one-to-one mapping of the object address; and reviving garbage collector processing of the object.