Counting speculative and non-speculative events
AssigneeSun Microsystems, Inc.
InventorPeter C. Damron
Life of this patent
Estimating the term…
Loading patent…
AssigneeSun Microsystems, Inc.
InventorPeter C. Damron
Estimating the term…
Counting events during the execution of one or more instructions in a computer system may be accomplished by maintaining a non-speculative counter for counting events occurring in non-speculative instructions, as well as a separate speculative counter for counting events occurring in speculative instructions. Event counters may be used to count individual events occurring during the processing of instructions. When the instruction has been completed, the amount in the event counter corresponding to a particular event for that instruction is added to the amount in the speculative counter corresponding to the event. Then, any retirable instructions are retired. Once an instruction is retired, it is no longer speculative, allowing the amount in the speculative counter to be decremented and the amount in the non-speculative counter to be incremented by the amount in any event counters corresponding to retirable instructions. The speculative and non-speculative counters may then be examined at any point in time to give a clear picture of the number of times a specific event has occurred, even when instructions are executed out-of-order.
A method for counting events during the execution of one or more instructions in a computer system, wherein the computer system contains an event counter for each event to be counted for each of the instructions, the method including:
A method for counting events during the execution of one or more instructions in a computer system, wherein the computer system contains an event counter for each event to be simultaneously counted for each of the instructions, the method including:
A method for counting events during the execution of one or more blocks in a computer system, wherein the computer system contains an event counter for each event to be counted in each of the blocks, the method including:
A method for counting events during the execution of one or more blocks in a computer system, wherein the computer system contains an event counter for each event to be simultaneously counted in each of the blocks, the method including:
An apparatus for counting events during the execution of one or more instructions in a computer system including:
An apparatus for counting events during the execution of one or more instructions in a computer system including:
A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform a method for counting events during the execution of one or more instructions in a computer system, wherein the computer system contains an event counter for each event to be counted for each of the instructions, the method including:
A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform a method for counting events during the execution of one or more instructions in a computer system, wherein the computer system contains an event counter for each event to be counted for each of the instructions, the method including:
Dependencies are inferred from the claim text.