1. A computer implemented profiling method for profiling information outputted by an instrumentation code embedded in an execution code, the method comprising the steps of: allocating a call site ID with a predetermined number of bits to a call site; holding the latest N levels as call history information for each thread, where N is an integer larger than 1; recording a real jump destination, the number of times and the call history information into a virtual call jump destination profile table; and shifting the call history information left and putting another call site ID associated with another method in the lower bits of the call history information upon a call to the another method from the call site.