Patent ID: 7765385

Claim:
A parallel computer system comprising: a plurality of interconnected compute nodes connected with a torus network where each node has a node value from 0 to n in the x dimension, where n is an integer variable; a mesh routing mechanism that converts the torus network to a mesh network when a fault occurs in a link in the torus network; an x− cutoff register and an x+ cutoff register for each compute node that store node values; and wherein the mesh routing mechanism assigns the node values for the x− cutoff register and the x+ cutoff register in relation to a location of the fault in the x dimension of the network to direct the compute nodes to communicate to adjacent nodes without traversing the fault; wherein the node values stored in the x+ and x− cutoff registers for each node are assigned as follows: If (the node value of a current node being determined <=break_plus) then assign x− cutoff =0, and the x+ cutoff=break_plus; Else assign x− cutoff=break_minus, and x+ cutoff=a max node value in X dimension; where break_plus is the node value for a node with a broken X+ link; and where break_minus is the node value for a node with a broken X− link; and wherein a data packet is sent over the torus network depending on the node values of a sending node and a destination node in conjunction with the x− cutoff register and x+ cutoff register to determine which direction in the X dimension to send the data packet as follows: If (a sending node > a destination node) then if (the destination node >=cutoff for x−direction) send in X− direction else send in X+ direction If (the sending node < the destination node) then if (the destination node <=cutoff for x+ direction) send in X+ direction else send in X− direction.