×

PROVIDING IMPROVED MESSAGE HANDLING PERFORMANCE IN COMPUTER SYSTEMS UTILIZING SHARED NETWORK DEVICES

  • US 20100082788A1
  • Filed: 09/29/2008
  • Published: 04/01/2010
  • Est. Priority Date: 09/29/2008
  • Status: Active Grant
First Claim
Patent Images

1. A parallel computer system, comprising:

  • an input/output (I/O) node;

    a plurality of compute nodes coupled to each other and to the I/O node via a collective network, each compute node comprising;

    a compute logic block having a plurality of processors, wherein one of the processors runs a first thread;

    a memory array block shared by the processors;

    a network logic block having one or more communication blocks, wherein at least one of the communication blocks comprises a collective network device for facilitating communication of messages between the compute node and the I/O node, each message comprising a plurality of packets;

    wherein when receiving a message at the compute node, the compute node performs the steps of;

    (a) obtaining a lock on the network device;

    (b) checking a shared storage location of the memory array block to see if a message is pending for the first thread;

    (c) if a message is pending for the first thread based on the checking step (b), receiving the remaining packets in the message directly to a user'"'"'s buffer, unlocking the network device, and returning;

    (d) if no message is pending for the first thread based on the checking step (b), receiving at least one packet of a message from the network device;

    (e) if the at least one packet received in step (d) indicates that the message is for the first thread, receiving the remaining packets in the message directly to the user'"'"'s buffer, unlocking the network device, and returning;

    (f) if the at least one packet received in step (d) indicates that the message is for a thread other than the first thread, updating the shared storage location of the memory array block with a thread id of the other thread, unlocking the network device, waiting for a time out to expire, obtaining a lock on the network device, and repeating from the checking step (b).

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×