Hybrid processor
First Claim
Patent Images
1. A hybrid computer that comprises a sequential processor, a single instruction massively parallel (SIMD) processor, and shared memory module that is configured to store shared data that is shared between the sequential processor and the SIMD processor;
- wherein the sequential processor is configured to access data in the shared memory module during an execution of sequential segments of a workload; and
wherein the SIMD processor is configured to access the data in the shared memory module during an execution of parallelizable segments of the workload;
wherein the SIMD processor comprises a sequencer and processing units that comprise register files, wherein the sequencer is configured to control data transfers from the shared memory to the SIMD by broadcasting a conditional micro-instruction to the processing units, wherein an execution of at least one conditional micro-instruction by a processing unit is conditioned by a single bit register and wherein the conditional micro-instruction comprises a multi-bit field that is indicative of a type, out of multiple types, of the conditional micro-instruction.
1 Assignment
0 Petitions
Accused Products
Abstract
A hybrid computer that comprises a sequential processor, a single instruction massively parallel (SIMD) processor, and shared memory module that is shared between the sequential processor and the SIMD processor.
34 Citations
36 Claims
-
1. A hybrid computer that comprises a sequential processor, a single instruction massively parallel (SIMD) processor, and shared memory module that is configured to store shared data that is shared between the sequential processor and the SIMD processor;
- wherein the sequential processor is configured to access data in the shared memory module during an execution of sequential segments of a workload; and
wherein the SIMD processor is configured to access the data in the shared memory module during an execution of parallelizable segments of the workload;
wherein the SIMD processor comprises a sequencer and processing units that comprise register files, wherein the sequencer is configured to control data transfers from the shared memory to the SIMD by broadcasting a conditional micro-instruction to the processing units, wherein an execution of at least one conditional micro-instruction by a processing unit is conditioned by a single bit register and wherein the conditional micro-instruction comprises a multi-bit field that is indicative of a type, out of multiple types, of the conditional micro-instruction. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
- wherein the sequential processor is configured to access data in the shared memory module during an execution of sequential segments of a workload; and
-
35. A hybrid computer that comprises a sequential processor, a single instruction massively parallel (SIMD) processor, and shared memory module that is configured to store shared data that is shared between the sequential processor and the SIMD processor;
- wherein the sequential processor is configured to access data in the shared memory module during an execution of sequential segments of a workload; and
wherein the SIMD processor is configured to access the data in the shared memory module during an execution of parallelizable segments of the workload, wherein the hybrid computer is configured to perform dense matrix multiplication of a first matrix (A) by a second matrix (B), wherein during the performing of the dense matrix multiplication the sequential processor is configured to match row elements of the second matrix with corresponding column elements of the first matrix;
wherein the match is executed as a sequence of associative operations; and
wherein the SIMD processor is configured to multiply pairs of matched row elements of the second matrix by the corresponding column elements of the first matrix to provide singleton products and to add single products together.
- wherein the sequential processor is configured to access data in the shared memory module during an execution of sequential segments of a workload; and
-
36. A hybrid computer that comprises a sequential processor, a single instruction massively parallel (SMD) processor, and shared memory module that is configured to store shared data that is shared between the sequential processor and the SMD processor;
- wherein he sequential processor is configured to access data in the shared memory module during an execution of sequential segments of a workload; and
wherein the SMD processor is configured to access the data in the shared memory module during an execution of parallelizable segments of the workload, wherein the hybrid computer is configured to perform sparse matrix multiplication of a first matrix (A) by a second matrix (B), wherein during the performing of the sparse matrix multiplication the sequential processor is configured to match row elements of the second matrix with corresponding non-zero column elements of the first matrix;
wherein the match is executed as a sequence of associative operations; and
wherein the SMD processor is configured to multiply pairs of matched row elements of the second matrix by the corresponding column elements of nonzero columns of the first matrix to provide singleton products and to add single products together.
- wherein he sequential processor is configured to access data in the shared memory module during an execution of sequential segments of a workload; and
Specification