Methods of selecting simultaneously transmitted messages in a multiprocessor system
First Claim
1. A method of processing data using a plurality of processor modules comprising the steps of:
- a. subdividing a data processing task into information packets each said information packet representing a subtask;
b. simultaneously broadcasting pairs of successive said information packets to a priority determining network having a plurality of priority determining holes;
c. determining at each said priority determining node which said information packet of the broadcasting pair has a higher priority solely based upon data contents thereof;
d. selecting by said priority determining network a chosen information packet from a plurality of said information packets each having a higher priority;
e. broadcasting successive chosen information packets to all the processor modules simultaneously, each of the chosen information packets containing a characterizing message;
f. determining from the characterizing message in each said chosen information packet, at all the processor modules, an appropriate individual processor module or modules for carrying out the subtask represented by each said chosen information packet;
g. generating processed information packets at the processor modules based upon result of said determining step;
h. broadcasting different ones of the processed information packets to all the processor modules simultaneously.
3 Assignments
0 Petitions
Accused Products
Abstract
A multiprocessor system intercouples the processors with an active logic network having a plurality of priority determining nodes. Messages applied concurrently to the network in groups are sorted, using the data content of the meassages, to a single or common priority message which is distributed to all the processors with a predetermined total network delay time. Losing messages are again retried concurrently in groups at a later time. Message routing is determined by local acceptance or rejection of messages at the processors, based upon destination data in the messages. All messages occupy places in a coherent priorty scheme and are transferred in contending groups with prioritization on the network. Using data, status, control and response messages, and different multiprocessor modes, the system is particularly suited for configuration in a relational data base machine having capability for maintaining an extended data base and handling complex queries.
100 Citations
19 Claims
-
1. A method of processing data using a plurality of processor modules comprising the steps of:
-
a. subdividing a data processing task into information packets each said information packet representing a subtask; b. simultaneously broadcasting pairs of successive said information packets to a priority determining network having a plurality of priority determining holes; c. determining at each said priority determining node which said information packet of the broadcasting pair has a higher priority solely based upon data contents thereof; d. selecting by said priority determining network a chosen information packet from a plurality of said information packets each having a higher priority; e. broadcasting successive chosen information packets to all the processor modules simultaneously, each of the chosen information packets containing a characterizing message; f. determining from the characterizing message in each said chosen information packet, at all the processor modules, an appropriate individual processor module or modules for carrying out the subtask represented by each said chosen information packet; g. generating processed information packets at the processor modules based upon result of said determining step; h. broadcasting different ones of the processed information packets to all the processor modules simultaneously. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method of data base management in a data processing system which shares a processing task between a number of small processors each having an allotted portion of the data base but frees the data processing system from the task of supervising or monitoring locations and status of the processors comprising the steps of:
-
a. generating at said processors concurrent information packets representing individual data base task assignment respectively; b. initially broadcasting concurrently from each said processor said information packet to a priority determining network; c. deriving by said priority determining network a single highest priority information packet among the concurrent information packets solely based upon data content thereof; d. transmitting the highest priority information packet such that the highest priority information packet reaches all said processors simultaneously; e. determining at each said processor from the highest priority information packet whether the individual task is within the allotted data base portion for said processor; f. processing the highest priority information packet by at least one of said processors based upon result of said determining step to generate one or more information packets having processed data; g. broadcasting competing information packets again concurrently to all said processors while prioritizing the concurrent information packets such that the information packets involving task assignments and processed data are inherently sequenced by a priority protocol. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method competing messages from a plurality of processors in a sorted color based upon priorites of said messages, the messages being generated during completion of asynchronous processing tasks, the method comprising the steps of:
-
a. assembling, at each said processor, sequences of said messages, each said message having its data content as a sorting criteria; b. synchronously transmitting said competing messages from said processors concurrently to a priority determining network having a plurality of message receiving nodes; c. receiving simultaneously a message from each of a pair of said processors at each said message receiving node; determining a higher priority message of the simultaneously received messages within each said message receiving node solely based upon the data content thereof; e. determining by the priority determining network a highest priority message among said messages each having a higher priority; f. transmitting the highest priority message to said processors; g. synchronously repeating steps e and f until all said competing messages have been completely transmitted. - View Dependent Claims (17, 18, 19)
-
Specification