CPC G06F 9/5061 (2013.01) [G06F 9/5038 (2013.01)] | 18 Claims |
1. A method for executing a processing operation using a computing array, the computing array comprising a plurality of computing nodes, and a computing node among the computing nodes comprising a set of computing devices, the method comprising:
allocating source data to each of the computing nodes in the computing array, wherein the source data comprises a plurality of blocks;
at the computing node among the computing nodes, in at least one iteration process,
respectively receiving a plurality of blocks from a plurality of other computing nodes other than the computing node among the computing nodes using a plurality of first type computing devices among the set of computing devices included in the computing node;
executing the processing operation on the received blocks using the first type computing devices respectively to generate a plurality of intermediate results; and
executing the processing operation on the intermediate results to obtain a first part of a final result of executing the processing operation on the source data,
wherein respectively receiving the blocks from the other computing nodes comprises: for a given computing device among the first type computing devices, determining a corresponding computing device of the given computing device in the other computing nodes based on a device location of the given computing device in the computing node; and receiving a corresponding block among the blocks from the corresponding computing device.
|