Parallel processing network and method
AssigneeAmerican Telephone and Telegraph Company, AT&T Bell Laboratories
InventorErik P. DeBenedictis
Life of this patent
Estimating the term…
Abstract
A message passing parallel processing system capable of executing different types of intercommunication protocols simultaneously, as well as plural instances of each type of protocol. Each processing node of the system contains a message passing protocol apparatus comprising a protocol processor and a memory. Messages passed between nodes contains, inter alia, a protocol type and an identification of an instance of the protocol type. Examples of protocol types might be shared memory, hierarchical tree connect, distributed sets, etc. Messages are passed to processing nodes from other processing nodes in fixed sized blocks and only when input buffers are empty. Flow control of the network is self-regulating and the network is deadlock free.
Claims8
A parallel processing system including a plurality of processing nodes interconnected in a prescribed manner for passing messages directly between the processing nodes and message passing protocol apparatus at each node for sending and receiving said messages, said messages containing information identifying a protocol type to which a message belongs, said protocol type identifying rules for processing the message, an identification of a task being processed using the protocol type and data, said protocol apparatus comprising:
- input means for receiving a message from a first node connected to the input means and including means for signaling to the first node that the input means is empty,
- output means for sending a message to the input means of a second connected node only when the input means at the second node signals that it is empty,
- a protocol processor for independently performing protocol input functions and output functions on messages received and to be transmitted, respectively, according to the protocol type identified in the message;
- and
- a memory accessible by the protocol processor for storing state information individually pertaining to each task being processed and containing protocol status information for controlling the operations of the input and output functions pertaining to each task, said input and output functions operating to change the state information.
A parallel processing system including a plurality of processing nodes interconnected in a prescribed manner for passing messages between ones of the nodes and message passing protocol apparatus at each node for sending and receiving said messages, said messages containing a protocol type field, a message type field and a protocol identifier field, the protocol type field identifying the particular protocol to which the message pertains, the protocol identifier field identifying a particular task using the protocol type and the message type field identifying the operations to be performed at a node receiving a message,
- each protocol apparatus comprising:
- an input message buffer for each incoming connection at the associated node to another one of the nodes;
- an output message buffer for each outgoing connection of the associated node to another one of the nodes;
- means for notifying a node connected to one of the input buffers whether or not that input buffer is empty;
- means for inhibiting message transmission from an output buffer to another node when the connected input buffer at that node is not empty;
- a memory for storing state information describing the state of each task in progess;
- means for identifying and executing an input protocol function pertaining to the protocol type of a received message;
- means for identifying and executing an output function pertaining to the protocol type of a message to be transmitted to another processor;
- said input and output functions independently operating to update the state information for the associated task according to the rules of the associated protocol types.
A parallel processing system comprising:
- a plurality of processors;
- bus means interconnecting designated ones of said processors to form a parallel processing network;
- protocol apparatus at each processor for transferring messages among said processors, each message including a signal identifying the message protocol type, a signal identifying a task using the protocol type, and data signals;
- said protocol apparatus comprising;
- a protocol processor for performing independently input operations and output operations on messages received from said bus means and messages to be transferred to said bus means, respectively;
- and
- a memory for storing state vector signals corresponding to each task being processed by the system, said memory being connected to said protocol processor and including protocol status signals for controlling said input and output operations for each task;
- said protocol processor being responsive to said input and output operations to modify said state vector signals.
Dependencies are inferred from the claim text.