Patent ID: 8370844

Claim:
A method of migrating a process running on first compute node of a parallel computing system having a plurality of compute nodes, comprising: quiescing a data communications network connecting the plurality of compute nodes; while the data communications network is quiesced: identifying a process identifier (ID) associated with the process running on the first compute node; identifying a network address associated with the first compute node; flushing, from a mapping data structure maintained by the parallel system, a first entry mapping the identified process ID to the identified network address; transmitting a message to the plurality of compute nodes to flush a local cache of mappings between process IDs and network addresses; migrating the process running on the first compute node to a second compute node, of the plurality of compute nodes of the parallel computing system, wherein the migrating is performed upon: (i) detecting a network congestion by recording a number of network packets that pass through any of six network ports of the first compute node, and (ii) predicting a hardware failure for the first compute node; and updating the mapping data structure maintained by the parallel system to include a second entry mapping the identified process ID to a network address of the second compute node, wherein the data communication network is a three-dimensional torus and the network address of the first and second compute node is a respective <x, y, z> coordinate position of the first and second compute node within the three-dimensional torus.