In the field of parallel processing, the ability of fast and parallel communication amongst processors working on the same task is an important consideration. It is also important to be able to transmit data of various types, such as digital, analog, and optical efficiently amongst processors.
This application is directed to parallel processing, parallel switching networks, and particularly to an improved adaption of serial fiber or analog wire transmission media to parallel switching networks for the purpose of interconnecting large numbers of processors with a minimal interface. The processors can be interconnected to form a shared processing resource--a "farm" of processors--to provide either massive joint computional power for a single task or individual processors assignable to individual tasks. Corporations are beginning to view this type of "farm" approach as being very valuable. Individual workstations can be purchased and given to individual employees to support their work effort during the day. However, in the evenings or on weekends, the workstations are networked together to form a massive processing base for performing batch jobs or parallel processing. Industry is becoming aware that massive processing power can be obtained at a lower cost by investing in less expensive workstations, rather than in the traditional single large mainframe processor.
The state-of-the-art switches do not effectively meet the requirements of the versatile "farm" systems. First, they are inflexible and dictate that a single homogeneous serial transmission media and protocol be employed throughout the entire system. Secondly, they are generally switching systems designed to switch high bandwidth serial transfers or analog transmissions without regard for latency. They attack only half the problem in that they provide parallel data communication, but they do not provide for parallel path set-up through the switch. Therefore, they do not provide a full parallel network capability. Instead, all network paths share a central matrix controller function that operates in serial. If a processing node wishes to use a path through the switch, it must first arbitrate for the facilities of the central matrix controller. The matrix controller services one request at a time, causing parallel requests to wait their turn. The central matrix controller acknowledges one switch set-up request at a time. It receives a short message indicating the switch connection desired. The central matrix controller checks a matrix map stored in the central matrix controller's memory and determines whether the requested connection can be established or not. If it can, the central matrix controller sends a command to the switching element (usually referred to as the switch fabric) to make the requested connection. Then the central matrix controller responds to the requesting node telling it whether the desired connection has been made or is not available. The processing node then uses the established connection and transmits data to or from the desired destination through the switch fabric, while the central matrix controller works on establishing the next serial connection. The processing node must go through a similar procedure to break the switch fabric connection using the central matrix controller, when it is finished using a given switch path. Thus, the latency of the central matrix controller approach in regards to establishing and breaking switch paths is very poor. In existing products, this type of approach has been adequate connect DASD's and other I/O devices to computer complexes, or to send batch information between processors. These types of applications transfer long disc records or large batch data at a high bandwidth. The poor latency is amertised over the large transfer and has a small effect on the overall performance. However, this is not the case for the modern "farm" approach, where messages can be short and latency becomes as important, if not more so, as bandwith. Harold S. Stone in his book "High-Performance Computer Architecture" (Addison-Wesley 1990, pg.309) states that the performance benefits of parallel processing depends strongly on the ratio R/C, where R is the run-time of the processing (the computational work to be done) and C is the communication overhead required amongst n parallel processors jointly working on the job. The value C includes latency as well as bandwidth, and to keep C small and make parallel processing efficient, the switch latency must also be kept small.
Thirdly, another drawback of the central matrix controller switching approach is the limited number of processors that a single central controller can manage. Systems have been built to interconnect 8, 16, 32, and possibly as many as 64 processors, but that appears to be approaching the the limit of the concept. The central matrix controller approach also has a reliability problem in that a failure in the central controller can fail the entire communication system and render the whole parallel system useless.
We have solved some of the problems encountered in the prior art which we referred to above. A distributed switch controller approach, rather than a centralized approach, appears to be a better solution for parallel processing because of its inherent low latency, its ability to withstand failures, and its ability to expand to interconnecting massively parallel systems. The distributed and fully parallel switch utilized herein to solve the "farm" interconnect problem efficiently is the ALLNODE Switch (Asynchronous, Low Latency, inter-NODE switch), which is disclosed in U.S. Ser. No. 07/677,543 and adapted by the present invention to perform the switching of serial data lines at low latency and high bandwidths. The ALLNODE switch provides a circuit switching capability at high bandwidths similar to the switch fabric in the central matrix controlled switches; however, the ALLNODE switch includes distributed switch path connection set-up and tear-down controls individually within each switch--thus providing parallel set-up, low latency, and elimination of central point failures. We will further describe in the detailed description a way whereby the ALLNODE switch and the present invention can be used to solve the "farm" problem effectively.
This application builds on the basic ALLNODE Switch invention as disclosed in U.S. Ser. No. 07/677,543, which is adapted by the present invention to perform the low latency switching of analog and optical data lines, as well as standard digital data lines.