EFFICIENT INSTRUCTION PROCESSING FOR SPARSE DATA
First Claim
Patent Images
1. A method implemented according to a processor pipeline, the method comprising:
- fetching an instruction to be processed, the instruction comprising a first input operand, a second input operand, and a destination operand;
determining that the instruction to be processed is a zero-optimizable instruction;
determining that the first input operand of the instruction is a zero value; and
based on the first input operand of the instruction being a zero value, determining a result of the instruction while bypassing an execute stage of the processor pipeline.
1 Assignment
0 Petitions
Accused Products
Abstract
Efficient instruction processing for sparse data includes extensions to a processor pipeline to identify zero-optimizable instructions that include at least one zero input operand, and bypass the execute stage of the processor pipeline, determining the result of the operation without executing the instruction. When possible, the extensions also bypass the writeback stage of the processor pipeline.
-
Citations
20 Claims
-
1. A method implemented according to a processor pipeline, the method comprising:
-
fetching an instruction to be processed, the instruction comprising a first input operand, a second input operand, and a destination operand; determining that the instruction to be processed is a zero-optimizable instruction; determining that the first input operand of the instruction is a zero value; and based on the first input operand of the instruction being a zero value, determining a result of the instruction while bypassing an execute stage of the processor pipeline. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A processor comprising:
-
a processor pipeline to direct performance of fetch, decode, execute, writeback, and commit stages; and extensions to the processor pipeline, the extensions to the processor pipeline configured to detect and direct processing of zero-optimizable instructions. - View Dependent Claims (12, 13, 14)
-
-
15. A device comprising:
-
an instruction cache configured to store instructions to be processed; and a processor, communicatively coupled to the instruction cache, wherein the processor is configured to; fetch an instruction from the instruction cache; determine whether the instruction is a zero-optimizable instruction; when the processor determines that the instruction is a zero-optimizable instruction, determine whether an input operand of the instruction has a value of zero; and when an input operand of the instruction has a value of zero, determine a result of the instruction without executing the instruction. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification