Patent ID: 8375197
Filing Date: 2013-02-12
Classification: G06F

Abstract:
1. A method of performing an allreduce operation on a plurality of compute nodes of a parallel computer, each compute node comprising at least two processing cores, each processing core having contribution data for the allreduce operation, the method comprising: performing, for each compute node, a local reduction operation using the contribution data for the processing cores of that compute node, yielding, for each compute node, a local reduction result for one or more representative cores for that compute node; establishing one or more logical rings among the compute nodes, each logical ring including only one of the representative cores from each compute node, wherein in a logical ring, all data that is transferred between processing cores travels from one core of one node to a next core in a next node in a circular manner; performing, for each logical ring, a global allreduce operation using the local reduction result for the representative cores included in that logical ring, yielding a global allreduce result for each representative core included in that logical ring; and performing, for each compute node, a local broadcast operation using the global allreduce results for each representative core on that compute node.