System and methods for single instruction multiple request processing
AssigneePurdue Research Foundation
InventorsTimothy Glenn Rogers, Mahmoud Khairy
Life of this patent
Estimating the term…
Abstract
A system may include a central processing unit (CPU) having a Simultaneous Multi-Threading (SMT) thread/execution model. The system may further include a request processing unit (RPU) having an Out-of-Order Single Instruction Multiple Thread (SIMT) execution model. The CPU may receive a plurality of requests. The CPU may group a portion of the requests in a batch. The CPU may cause the RPU to execute instructions corresponding to each request in the batch. The RPU may execute, with a plurality of threads, the instructions corresponding to the batch of requests in lockstep.
Claims21
A system, comprising:
- a central processing unit (CPU) having a Simultaneous Multi-Threading (SMT) thread/execution model;
- and
- a request processing unit (RPU) having an Out-of-Order Single Instruction Multiple Thread (SIMT) execution model,
- wherein the CPU is configured to:
- receive a plurality of requests;
- group a portion of the requests in a batch;
- cause the RPU to execute instructions corresponding to each request in the batch, and
- wherein the RPU is configured to:
- execute, with a plurality of threads, the instructions corresponding to the batch of requests in lockstep.
An integrated circuit, comprising:
- a central processing unit (CPU) core having a Simultaneous Multi-Threading (SMT) thread/execution model;
- and
- a request processing unit (RPU) core having an Out-of-Order Single Instruction Multiple Thread (SIMT) execution model,
- wherein the CPU is configured to:
- receive a plurality of requests;
- group a portion of the requests in a batch;
- cause the RPU to execute instructions corresponding to each request in the batch, and
- wherein the RPU is configured to:
- execute, with a plurality of threads, the instructions corresponding to the batch of requests in lockstep.
A method, comprising
- receiving a plurality of requests via a network communication protocol;
- grouping, with a central processing unit (CPU), a portion of the requests in a batch based on at least one of:
- the requests invoking a same procedure, and
- the number of arguments in the requests;
- and
- executing, with a remote processing unit (RPU) the instructions corresponding to each request in a batch in lockstep, the RPU supporting the same instruction set architecture as the CPU.
Dependencies are inferred from the claim text.