Patent ID: 8775698

Claim:
A computer-implemented method of performing an all-to-all exchange on n number of data buffers stored in computer memory using computer-implemented swap operations, each data buffer having n number of data elements, each data buffer stored on a distinct compute node of a parallel computer, the compute nodes connected together with a global combining network, the method comprising, for each rank value of i and j where i is greater than j and where i is less than or equal to n: exchanging, by the module of automated computing machinery and without user intervention, contents of data element i in data buffer j with contents of a data element j in data buffer i using a computer-implemented swap operation, including: performing a series of bitwise XOR allreduce operations through the global combining network in which the compute node storing data buffer j contributes the contents of data element i and the compute node storing data buffer i contributes the contents of data element j, and combining, by network hardware using a bitwise XOR operator, contributions of the compute nodes participating in the bitwise XOR allreduce operation.