Patent ID: 7735072
Filing Date: 2010-06-08
Classification: G06F

Abstract:
1. A method for profiling executions of a plurality of computer programs in a computer processing system having a processor for executing the plurality of computer programs, the processor including a profile matrix controller, a memory hierarchy for aiding in execution of the programs, and a profile matrix that is operatively coupled to the processor via the profile matrix, and that is separate and independent from the memory hierarchy for aiding in the profiling of the computer programs and the processor, the method comprising the steps of: executing, by the processor, each of the computer programs to generate an event identifier (EID) for each program, the EID comprising an index and a tag of a profiled event of the computer program; sending the EIDs from the CPU to the profile matrix; accessing, for each EID, an element of the profile matrix using the index and comparing a part of the element with the tag to determine whether a profile count exists for the profiled event; updating, for each EID, the profile count if it exists or creating a new profile count in the profile matrix for the profiled event otherwise; and optimizing the computer program, based upon the profile counts.