IP Library Granted Patent US 6,880,067
Granted Patent B2
US 6,880,067 · App. 09/823,467 · Granted Apr 12, 2005

Retiring instructions that meet the early-retirement criteria to improve computer operation throughput

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,880,067
App. No.
09/823,467
Granted
Apr 12, 2005
Kind
B2
Abstract

Techniques are provided for retiring instructions that typically complete early as compared to most instructions. In an embodiment, all instructions are processed normally until the instruction queue is full. At that time, the system is frozen, e.g., all units stop processing instructions. For each instruction in the instruction queue, if the instruction meets the criteria for early retirement, then the instruction is terminated and the system is updated to reflect that the instruction has been terminated. The system is then unfrozen, and all units resume their functions.

Claims (42)

1. A method for retiring instructions processed through various processing stages including an instruction queue, comprising the steps of:

after processing the instructions until the instruction queue is full,

performing the following steps,

stopping processing the instructions in the various processing stages, and

for each instruction in the instruction queue, if the instruction meets the criteria for early retirement, then

terminating the instruction, and

updating a system processing the instruction to reflect that the instruction has been terminated,

wherein the criteria for early retirement is met when at least one of the following conditions is met; continued processing of the instruction does not change the architectural state of the system processing the instruction; continued processing of the instruction has no effect on the behavior of a program running the instruction; the instruction has completed its function without completing its full pipeline.

2. The method of claim 1 , after the instruction queue is full, further comprising the step of requesting that instructions not be sent to the instruction queue.

3. The method of claim 1 wherein the step of terminating includes the step of removing the instruction from the instruction queue.

4. The method of claim 1 wherein the various processing stages include one or more of the following stages: fetching, issuing, sorting, executing, queuing, and retiring.

5. The method of claim 1 wherein the instruction capable of early retirement includes an identification tag for identifying whether the instruction is capable of early retirement.

6. The method of claim 1 wherein NO-OP instructions, pre-fetch instructions, branch instructions, nullified instructions, and predicated-false instructions are identified as instructions capable of early retirement.

7. A computer-readable medium embodying instructions that cause a computer to perform a method for retiring instructions processed through various processing stages including an instruction queue, the method comprising the steps of:

after processing the instructions until the instruction queue is full,

performing the following steps,

stopping processing the instructions in the various processing stages, and

for each instruction in the instruction queue, if the instruction meets the criteria for early retirement, then

terminating the instruction, and

updating a system processing the instruction to reflect that the instruction has been terminated,

wherein the criteria for early retirement is met when at least one of the following conditions is met; continued processing of the instruction does not change the architectural state of the system processing the instruction; continued processing of the instruction has no effect on the behavior of a program running the instruction; the instruction has completed its function without completing its full pipeline.

8. The computer-readable medium of claim 7 wherein the method, after the instruction queue is full, further comprising the step of requesting that instructions not be sent to the instruction queue.

9. The computer-readable medium of claim 7 herein the step of terminating includes the step of removing the instruction from the instruction queue.

10. The computer-readable medium of claim 7 wherein the various processing stages include one or more of the following stages: fetching, issuing, sorting, executing, queuing, and retiring.

11. The computer-readable medium of claim 7 wherein the instruction capable of early retirement includes an identification tag for identifying whether the instruction is capable of early retirement.

12. The computer-readable medium of claim 7 wherein NO-OP instructions, pre-fetch instructions, branch instructions, nullified instructions, and predicated-false instructions are identified as instructions capable of early retirement.

13. A system for retiring instructions processed through various processing stages including an instruction queue, comprising:

first processing means;

stopping means; and

second processing means;

wherein;

the first processing means processes the instructions until the instruction queue is full; and

after the instruction queue is full

the stopping means causes processing of the instructions to be stopped in the various processing stages; and

for each instruction in the instruction queue if the instruction meets the criteria for early retirement, then the second processing means causes;

the instruction to be terminated; and

the system to be updated to reflect that the instruction has been terminated; the criteria for early retirement for the instruction is met when at least one of the following conditions is met; continued processing of the instruction does not change the architectural state of the system processing the instruction; continued processing, of the instruction has no effect on the behavior of a program running the instruction; the instruction has completed its function without completing its full pipeline.

14. The system of claim 13 further comprising requesting means for, after the instruction queue is full, requesting that instructions not be sent to the instruction queue.

15. The system of claim 13 wherein terminating the instruction includes removing the instruction from the instruction queue.

16. The system of claim 13 wherein the various processing stages include one or more of the following stages: fetching, issuing, sorting, executing, queuing, and retiring.

17. The system of claim 13 wherein an instruction capable of early retirement includes an identification tag for identifying whether that instruction is capable early retirement.

18. The system of claim 13 wherein NO-OP instructions, pre-fetch instructions, branch instructions, nullified instructions, and predicated-false instructions are identified as instructions capable of early retirement.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2011
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.; HEWLETT-PACKARD COMPANY
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 026008/0690 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2003
From: HEWLETT-PACKARD COMPANY
To: HEWLETT-PACKARD DEVELOPMENT COMPANY L.P.
Reel/Frame 014061/0492 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2001
From: BURCH, CARL D.
To: HEWLETT-PACKARD COMPANY
Reel/Frame 011840/0344 →