Program subgraph identification
First Claim
Patent Images
1. Apparatus for processing data under control of a program having program instructions and subgraph suggestion information identifying respective sequences of program instructions corresponding to computational subgraphs identified within said program, said apparatus comprising:
- a memory operable to store a program formed of separate program instructions;
processing logic operable to execute respective separate program instructions from said program; and
accelerator logic operable in response to reaching an execution point within said program associated with a subgraph suggestion to execute a sequence of program instructions corresponding to said subgraph suggestion as an accelerated operation instead of executing said sequence of program instructions as respective separate program instructions with said processing logic, wherein said apparatus stores accelerator configuration data operable to configure said accelerator logic to adopt one or more configurations to execute as accelerated operations one or more sequences of program instructions corresponding to computational subgraphs identified within said program, wherein said accelerator configuration data is stored in a configuration data memory, wherein said configuration memory is indexed with a value held within a branch prediction unit.
1 Assignment
0 Petitions
Accused Products
Abstract
There is provided an apparatus for processing data under control of a program having program instructions and subgraph suggestion information identifying respective sequences of program instructions corresponding to computational subgraphs identified within said program, said apparatus comprising:
- a memory operable to store a program formed of separate program instructions;
- processing logic operable to execute respective separate program instructions from said program; and
- accelerator logic operable in response to reaching an execution point within said program associated with a subgraph suggestion to execute a sequence of program instructions corresponding to said subgraph suggestion as an accelerated operation instead of executing said sequence of program instructions as respective separate program instructions with said processing logic.
45 Citations
20 Claims
-
1. Apparatus for processing data under control of a program having program instructions and subgraph suggestion information identifying respective sequences of program instructions corresponding to computational subgraphs identified within said program, said apparatus comprising:
-
a memory operable to store a program formed of separate program instructions; processing logic operable to execute respective separate program instructions from said program; and accelerator logic operable in response to reaching an execution point within said program associated with a subgraph suggestion to execute a sequence of program instructions corresponding to said subgraph suggestion as an accelerated operation instead of executing said sequence of program instructions as respective separate program instructions with said processing logic, wherein said apparatus stores accelerator configuration data operable to configure said accelerator logic to adopt one or more configurations to execute as accelerated operations one or more sequences of program instructions corresponding to computational subgraphs identified within said program, wherein said accelerator configuration data is stored in a configuration data memory, wherein said configuration memory is indexed with a value held within a branch prediction unit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method of processing data under control of a program having program instructions and one or more subgraph markers identifying respective sequences of program instructions corresponding to computational subgraphs identified within said program, said method comprising:
-
storing a program formed of separate program instructions within a memory; executing respective separate program instructions from said program with processing logic; in response to reaching an execution point within said program associated with a subgraph marker executing a sequence of program instructions corresponding to said subgraph marker as a combined operation with accelerator logic instead of executing said sequence of program instructions as respective separate program instructions with said processing logic; and storing accelerator configuration data operable to configure said accelerator logic to adopt one or more configurations to execute as accelerated operations one or more sequences of program instructions corresponding to computational subgraphs identified within said program, wherein said accelerator configuration data is stored in a configuration data memory, wherein said configuration memory is indexed with a value held within a branch prediction unit. - View Dependent Claims (16)
-
-
17. Apparatus for processing data under control of a program having program instructions and subgraph suggestion information identifying respective sequences of program instructions corresponding to computational subgraphs identified within said program, said apparatus comprising:
-
a memory operable to store a program formed of separate program instructions; processing logic operable to execute respective separate program instructions from said program; and accelerator logic operable in response to reaching an execution point within said program associated with a subgraph suggestion to execute a sequence of program instructions corresponding to said subgraph suggestion as an accelerated operation instead of executing said sequence of program instructions as respective separate program instructions with said processing logic, wherein said subgraph suggestion information comprises marker instructions embedded within said program, wherein a sequence marker instruction is embedded within said program and indicates a location and length of an associated sequence of program instructions corresponding to a computational subgraph identified within said program.
-
-
18. Apparatus for processing data under control of a program having program instructions and subgraph suggestion information identifying respective sequences of program instructions corresponding to computational subgraphs identified within said program, said apparatus comprising:
-
a memory operable to store a program formed of separate program instructions; processing logic operable to execute respective separate program instructions from said program; and accelerator logic operable in response to reaching an execution point within said program associated with a subgraph suggestion to execute a sequence of program instructions corresponding to said subgraph suggestion as an accelerated operation instead of executing said sequence of program instructions as respective separate program instructions with said processing logic, wherein said apparatus stores accelerator configuration data operable to configure said accelerator logic to adopt one or more configurations to execute as accelerated operations one or more sequences of program instructions corresponding to computational subgraphs identified within said program, wherein said accelerator configuration data is stored in a configuration data memory, wherein said configuration data memory is part of a branch prediction unit.
-
-
19. A method of processing data under control of a program having program instructions and one or more subgraph markers identifying respective sequences of program instructions corresponding to computational subgraphs identified within said program, said method comprising:
-
storing a program formed of separate program instructions within a memory; executing respective separate program instructions from said program with processing logic; and in response to reaching an execution point within said program associated with a subgraph marker executing a sequence of program instructions corresponding to said subgraph marker as a combined operation with accelerator logic instead of executing said sequence of program instructions as respective separate program instructions with said processing logic, wherein said subgraph suggestion information comprises marker instructions embedded within said program, wherein a sequence marker instruction is embedded within said program and indicates a location and length of an associated sequence of program instructions corresponding to a computational subgraph identified within said program.
-
-
20. A method of processing data under control of a program having program instructions and one or more subgraph markers identifying respective sequences of program instructions corresponding to computational subgraphs identified within said program, said method comprising:
-
storing a program formed of separate program instructions within a memory; executing respective separate program instructions from said program with processing logic; and in response to reaching an execution point within said program associated with a subgraph marker executing a sequence of program instructions corresponding to said subgraph marker as a combined operation with accelerator logic instead of executing said sequence of program instructions as respective separate program instructions with said processing logic, wherein said apparatus stores accelerator configuration data operable to configure said accelerator logic to adopt one or more configurations to execute as accelerated operations one or more sequences of program instructions corresponding to computational subgraphs identified within said program, wherein said accelerator configuration data is stored in a configuration data memory, wherein said configuration data memory is part of a branch prediction unit.
-
Specification