Exchange of data between processor modules
AssigneeGraphcore Limited
InventorsDaniel John Pelham Wilkinson, Alan Graham Alexander
Life of this patent
Estimating the term…
Loading patent…
AssigneeGraphcore Limited
InventorsDaniel John Pelham Wilkinson, Alan Graham Alexander
Estimating the term…
A processing system comprising: multiple processor modules, each comprising a respective execution unit memory; and an interconnect for exchanging data between different sets of the processor modules. A group of the processor modules operates in a series of BSP supersteps. For the exchange phase of each superstep, each receiving processor module that is to receive data from outside its own set is pre-programmed with a value representing the number of units of data to receive. Starting from the pre-programmed value, it then counts out the number of data units remaining to be received each time a data unit is received. Each receiving processor module is further arranged to perform an exchange synchronization whereby, before advancing from the exchange phase to the compute phase of the current superstep, the receiving processor module waits until no units of data remain to be received according to the count.
A processing system comprising:
A method of operating a processing system comprising an arrangement of multiple processor modules and at least a first interconnect for exchanging data between different sets of the processor modules, each processor module comprising a respective execution unit for executing a program and respective memory for storing the program and data operated on by the program, and each set comprising one or more of the processor modules;
A computer program product embodied on computer readable storage and comprising a respective program for running on each of multiple processor modules, using at least a first interconnect for exchanging data between different sets of the processor modules, each processor module comprising a respective execution unit for executing the respective program and respective memory for storing the respective program and data operated on the respective program, and each set comprising one or more of the processor modules;
Dependencies are inferred from the claim text.