Patent US5495587A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5495587A Expired / Lapsed US ⏱️ 0.0 years remaining

Method for processing checkpoint instructions to allow concurrent execution of overlapping instructions

Assignee: International Business Machines Corp
•
Filing: 1994-06-21
•
Granted: 1996-02-27
•
Expires: 2014-06-21
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An instruction processing system and method which utilizes instruction completion to isolate errors, including those in the post-completion processing of operand stores, to an interval between checkpoints, while allowing the processing of checkpointing instructions to be overlapped with that of other instructions. Checkpoints are established before and after such instructions, and all processing (including that of operand stores) from before a checkpoint must be done prior to allowing instruction completion to move beyond the checkpoint. Nevertheless, instructions from beyond a checkpoint are allowed to be processed up to the point of completion while waiting for the checkpoint to be cleared. The point at which instructions must wait on a prior checkpoint is thus moved to the final phase of instruction processing (instruction completion), at significant performance advantage over a conventional implementation in which this waiting is done at instruction fetch, decode, or execution time.

Inventors

  • 👤 Steven T. Comfort
  • 👤 Clifford O. Hayden
  • 👤 John S. Liptay
  • 👤 Susan B. Stillman
  • 👤 Charles F. Webb

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 10:13
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/38; G06F9/3861; G06F9/3863; G06F11/00; G06F11/07; G06F11/14; G06F11/1402; G06F11/1405; G06F11/1407

Claims Analysis

Total Claims: 10
Claim 1
Independent Claim 177 words
In a system that processes instructions, including checkpoint instructions that establish checkpoint synchronization points where failures that occur before checkpoint synchronization points may not be reported after the checkpoint synchronization points, a method to process checkpoint instructions that allows certain instructions subsequent to a checkpoint instruction to be executed concurrently with the execution of said checkpoint instruction, comprising the steps of: decoding said checkpoint instruction that includes an operand store step; decoding an instruction other than said checkpoint instruction and executing it concurrently with said checkpoint instruction to a point prior to completion; executing a first unit of operation of said checkpoint instruction up to a point prior to said operand store step; completing said first unit of operation only after completion of operand store operations for instructions prior to said checkpoint instruction; executing a second unit of operation of said checkpoint instruction that does not change execution results from said execution of said first unit of operation; and signaling completion of said checkpoint instruction only after completion of said operand store step for said checkpoint instruction.
Claim 2
Dependent Claim 177 words
In a system that processes instructions, including checkpoint instructions that establish checkpoint synchronization points where failures that occur before checkpoint synchronization points may not be reported after the checkpoint synchronization points, a method to process checkpoint instructions that allows certain instructions subsequent to a checkpoint instruction to be executed concurrently with the execution of said checkpoint instruction, comprising the steps of: decoding said checkpoint instruction that includes an operand store step; decoding an instruction other than said checkpoint instruction and executing it concurrently with said checkpoint instruction to a point prior to completion; executing a first unit of operation of said checkpoint instruction up to a point prior to said operand store step; completing said first unit of operation only after completion of operand store operations for instructions prior to said checkpoint instruction; executing a second unit of operation of said checkpoint instruction that does not change execution results from said execution of said first unit of operation; and signaling completion of said checkpoint instruction only after completion of said operand store step for said checkpoint instruction.
Claim 3
Dependent Claim 23 words
A method to process checkpoint instructions as in claim 1, including the further step of signaling completion of said first unit of operation.
Claim 4
Dependent Claim 195 words
In a system that processes instructions, including checkpoint instructions that establish checkpoint synchronization points where failures that occur before checkpoint synchronization points may not be reported after the checkpoint synchronization points, a method to process checkpoint instructions that allows certain instructions subsequent to a checkpoint instruction to be executed concurrently with the execution of said checkpoint instruction, comprising the steps of: decoding said checkpoint instruction that includes an operand store step; decoding an instruction other than said checkpoint instruction and executing it concurrently with said checkpoint instruction to a point prior to completion; identifying an operand store operation that is a last store operation for instructions prior to said checkpoint instruction; executing a first unit of operation of said checkpoint instruction operand store step up to a point prior to said identifying said operand store operation; completing said first unit of operation only after completion of said last store operation; executing a second unit of operation of said checkpoint instruction that does not change execution results from said execution of said first unit of operation step; and signaling completion of said checkpoint instruction only after completion of said operand store step for said checkpoint instruction.
Claim 5
Dependent Claim 195 words
In a system that processes instructions, including checkpoint instructions that establish checkpoint synchronization points where failures that occur before checkpoint synchronization points may not be reported after the checkpoint synchronization points, a method to process checkpoint instructions that allows certain instructions subsequent to a checkpoint instruction to be executed concurrently with the execution of said checkpoint instruction, comprising the steps of: decoding said checkpoint instruction that includes an operand store step; decoding an instruction other than said checkpoint instruction and executing it concurrently with said checkpoint instruction to a point prior to completion; identifying an operand store operation that is a last store operation for instructions prior to said checkpoint instruction; executing a first unit of operation of said checkpoint instruction operand store step up to a point prior to said identifying said operand store operation; completing said first unit of operation only after completion of said last store operation; executing a second unit of operation of said checkpoint instruction that does not change execution results from said execution of said first unit of operation step; and signaling completion of said checkpoint instruction only after completion of said operand store step for said checkpoint instruction.
Claim 6
Dependent Claim 23 words
A method to process checkpoint instructions as in claim 3, including the further step of signaling completion of said first unit of operation.
Claim 7
Independent Claim 203 words
A method to process checkpoint instructions that allows certain instructions subsequent to a checkpoint instruction to be executed concurrently with execution of said checkpoint instruction in a system that processes instructions, including checkpoint instructions that establish checkpoint synchronization points where failures that occur before said checkpoint synchronization points may not be reported after the checkpoint synchronization points, said method comprising the steps of: decoding said checkpoint instruction that includes an operand store step; decoding an instruction other than said checkpoint instruction and executing it concurrently with aid checkpoint instruction to a point prior to completion; executing a first unit of operation of said checkpoint instruction up to a point prior to said operand store step; completing said first unit of operation only after completion of operand store operations for instructions prior to said checkpoint instruction; executing and completing at least one additional unit of operation of said checkpoint instruction, wherein if an additional unit of operation is a last one of said at least one additional unit of operation then the execution results from a next to last unit of operation are not affected; and signaling completion of said checkpoint instruction only after completion of said operand store step for said checkpoint instruction.
Claim 8
Independent Claim 203 words
A method to process checkpoint instructions that allows certain instructions subsequent to a checkpoint instruction to be executed concurrently with execution of said checkpoint instruction in a system that processes instructions, including checkpoint instructions that establish checkpoint synchronization points where failures that occur before said checkpoint synchronization points may not be reported after the checkpoint synchronization points, said method comprising the steps of: decoding said checkpoint instruction that includes an operand store step; decoding an instruction other than said checkpoint instruction and executing it concurrently with aid checkpoint instruction to a point prior to completion; executing a first unit of operation of said checkpoint instruction up to a point prior to said operand store step; completing said first unit of operation only after completion of operand store operations for instructions prior to said checkpoint instruction; executing and completing at least one additional unit of operation of said checkpoint instruction, wherein if an additional unit of operation is a last one of said at least one additional unit of operation then the execution results from a next to last unit of operation are not affected; and signaling completion of said checkpoint instruction only after completion of said operand store step for said checkpoint instruction.
Claim 9
Independent Claim 220 words
A method to process checkpoint instructions that allows certain instructions subsequent to a checkpoint instruction to be executed concurrently with execution of said checkpoint instruction in a system that processes instructions, including checkpoint instructions that establish checkpoint synchronization points where failures that occur before said checkpoint synchronization points may not be reported after the checkpoint synchronization points, said method comprising the steps of: decoding said checkpoint instruction that includes an operand store step; decoding an instruction other than said checkpoint instruction and executing it concurrently with said checkpoint instruction to a point prior to completion; identifying an operand store operation that is a last store operation for instructions prior to said checkpoint instruction; executing a first unit of operation of said checkpoint instruction operand store step up to a point prior to said identifying said operand store operation; completing said first unit of operation only after completion of said last store operation; executing and completing at least one additional unit of operation of said checkpoint instruction, wherein if an additional unit of operation is a last one of said at least one additional unit of operation then the execution results from a next to last unit of operation are not affected; and signaling completion of said checkpoint instruction only after completion of said operand store step for said checkpoint instruction.
Claim 10
Independent Claim 220 words
A method to process checkpoint instructions that allows certain instructions subsequent to a checkpoint instruction to be executed concurrently with execution of said checkpoint instruction in a system that processes instructions, including checkpoint instructions that establish checkpoint synchronization points where failures that occur before said checkpoint synchronization points may not be reported after the checkpoint synchronization points, said method comprising the steps of: decoding said checkpoint instruction that includes an operand store step; decoding an instruction other than said checkpoint instruction and executing it concurrently with said checkpoint instruction to a point prior to completion; identifying an operand store operation that is a last store operation for instructions prior to said checkpoint instruction; executing a first unit of operation of said checkpoint instruction operand store step up to a point prior to said identifying said operand store operation; completing said first unit of operation only after completion of said last store operation; executing and completing at least one additional unit of operation of said checkpoint instruction, wherein if an additional unit of operation is a last one of said at least one additional unit of operation then the execution results from a next to last unit of operation are not affected; and signaling completion of said checkpoint instruction only after completion of said operand store step for said checkpoint instruction.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-02-26 1999-08-28 2000-02-27 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-02-26 2003-08-28 2004-02-27 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-02-26 2007-08-28 2008-02-27 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag