OPPORTUNISTIC QUEUEING INJECTION STRATEGY FOR NETWORK LOAD BALANCING
First Claim
1. A method of transmitting a message between a sending node and a receiving node of a parallel computing system, comprising:
- encapsulating the message in a set of one or more data packets;
transmitting each data packet, of the set of data packets, from an injection queue to one of a plurality of hardware injection ports;
wherein each hardware injection port is associated with a different communication link of the parallel computing system, and wherein each communication link of the sending node links the sending node to other nodes of the parallel computing system in a different network dimension; and
injecting the set of data packets onto the different communication links of the sending node.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments of the invention include a method, system, and article of manufacture that provide opportunistic queuing injection strategy used for data communication between nodes of a parallel computer system. A message may be encapsulated into a set of data packets. When the packets are sent, an opportunistic injection queue may be configured to transmit them to multiple hardware injection ports. This approach allows for complete network link saturation. In a parallel system with network links in multiple dimensions, sending message packets using more than one dimension may substantially increase network throughput.
-
Citations
21 Claims
-
1. A method of transmitting a message between a sending node and a receiving node of a parallel computing system, comprising:
-
encapsulating the message in a set of one or more data packets; transmitting each data packet, of the set of data packets, from an injection queue to one of a plurality of hardware injection ports;
wherein each hardware injection port is associated with a different communication link of the parallel computing system, and wherein each communication link of the sending node links the sending node to other nodes of the parallel computing system in a different network dimension; andinjecting the set of data packets onto the different communication links of the sending node. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-readable storage medium containing a program which, when executed, performs an operation of transmitting a message between a sending node and a receiving node of a parallel computing system, comprising:
-
encapsulating the message in a set of one or more data packets; transmitting each data packet, of the set of data packets, from an injection queue to one of a plurality of hardware injection ports;
wherein each hardware injection port is associated with a different communication link of the parallel computing system, and wherein each communication link of the sending node links the sending node to other nodes of the parallel computing system in a different network dimension; andinjecting the set of data packets onto the different communication links of the sending node. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A parallel computing system, comprising:
a plurality of compute nodes, each having at least a processor and a memory, wherein a sending node, of the plurality of compute nodes, is configured to transmit a message to a receiving node, of the plurality of compute nodes, by; generating a message to transmit from a sending node to a receiving node, of the encapsulating the message in a set of one or more data packets, transmitting each data packet, of the set of data packets, from an injection queue to one of a plurality of hardware injection ports;
wherein each hardware injection port is associated with a different communication link of the parallel computing system, and wherein each communication link of the sending node links the sending node to other nodes of the parallel computing system in a different network dimension, andinjecting the set of data packets onto the different communication links of the sending node. - View Dependent Claims (16, 17, 18, 19, 20, 21)
Specification