Architecture and Applications of the Connection Machine

Architecture and Applications of the Connection Machine

Architecture and Applications of the Connection Machine Lewis W.Tucker and George G. Robertson Thinking Machines Corp. L” F the use ot computers affects culty of identifying and synchronizing increasingly broader segments of I. these independent threads of control. computer systems increase steadily. For- have come of age. We tions on the data in parallel. This tunately, the technology base for the last approach, known as data parallelism,‘ twenty years has continued to improve at describe here the works best for large amounts of data. For a steady rate-increasing in capacity and many applications, it proves the most nat- speed while decreasing in cost for perfor- architecture, evolution, ural programming approach, leading to mance. However, the demands outpace and applications of significant decreases in execution time as the technology. This raises the question, well as simplified programming. can we make a quantum leap in perfor- the Connection Massively parallel architectures contain- mance while the rate of technology ing tens of thousands or even millions of improvement remains relatively constant? Machine system. processing elements support this “data- Computer architects have followed two parallel” programming model. Early general approaches in response to this examples of this kind of architecture are question. The first uses exotic technology 1CL’s Distributed Array Processor in a fairly conventional serial computer (DAP),’ Goodyear’s Massively Parallel architecture. This approach suffers from Processor (MPP),3 Columbia Univer- manufacturing and maintenance problems sity’s N~n-Von,~and others.’ Each of and high costs. The second approach these machines has some elements of the exploits the parallelism inherent in many ing on tens of thousands or even millions desired architecture, but lacks others. For problems. The parallel approach seems to of data elements. We can find opportuni- example, the MPP has 16K (K = 1,024) offer the best long-term strategy because, ties for parallelism in both the control processing elements arranged in a two- as the problems grow, more and more sequence and in the collection of data dimensional grid, but interprocessor com- opportunitiesarise to exploit the parallel- elements. munication is supported only between ism inherent in the data itself. In the control sequence, we can identify neighboring processors. Where do we find the inherent parallel- threads of control that could operate The Connection Machine provides 64K ism and how do we exploit it? Most com- independently, thus on different proces- physical processing elements, millions of puter programs consist of a control sors. This approach, known as control virtual processing elements with its virtual sequence (the instructions) and a collection parallelism, is used for programming most processor mechanism, and general- of data elements. Large programs have multiprocessor computers. The primary purpose, reconfigurable communications tens of thousands of instructions operat- problems with this approach are the diffi- networks. The Connection Machine 26 OOl8-9162/SS/OSOO-OO26$0l.OO @I988 IEEE COMPUTER Front end 0 (DECVAXor ----(, Sy mbolics) - Businterface Connection Machine Parallel Processor Unit / Connection Machine Frontend 1 16,384Processors 16,384Processors (MCVAX Of - Sy mbolics) - Businterface equence equence W-J 2 Front end (DECVAX~~-, Sy mbolics) - Businterface Connection Machine connection Machine 16,384processors 16,384processors Front end 3 (DECVAX or 1 I 1 I Symbolics) -' Connection Machine VO System - Businterface I, I I I Data Graphic I Data Data I Vault Vault Vault Display Network I d? 'i Figure 1. Connection Machine system organization. encompasses a fully integrated architec- four sequencers. Each sequencer controls Thus, users can easily develop programs ture designed for data-parallel computing. up to 16,384individual processors execut- that exploit the power of the Connection ing parallel operations. A high- Machine hardware. performance, data-parallel 1/0 system At the heart of the Connection Machine Architecture of the (bottom of Figure 1) connects processors system lies the parallel-processing unit Connection Machine to peripheral mass storage (the Datavault) consisting of thousands of processors (up and graphic display devices. to 64K), each with thousands of bits of The Connection Machine is a data- System software is based upon the oper- memory (four kilobits on the CM-1 and 64 parallel computing system with integrated ating system or environment of the front- kilobits on the CM-2). As well as process- hardware and software. Figure 1 shows the end computer, with minimal visible soft- ing the data stored in memory, these hardware elements of the system. One to ware extensions. Users can program using processors when logically interconnected four front-end computer systems (right familiar languages and programming con- can exchange information. All operations side of Figure 1) provide the development structs, with all development tools happen in parallel on all processors. Thus, and execution environments for system provided by the front end. Programs have the Connection Machine hardware directly software. They connect through the nexus normal sequential control flow and do not supports the data-parallel programming (a 4 x 4 cross-point switch) to from one to need new synchronization structures. model. August 1988 27 actually build the machine, so Thinking Machines was founded in 1983. The Connection Machine Model CM-1 was designed at Thinking Machines dur- ing 1983 and the first half of 1984. By the end of 1984, with funding from the Defense Advanced Research Projects Agency, Thinking Machines had built the first 16K-processor CM-1 prototype. A demonstration of its capabilities took place in May 1985, and by November the company had constructed and successfully demonstrated a full 64K-processor machine. Thinking Machines commer- cially introduced the machine in April 1986. The first machines went to MIT and Perkin-Elmer in the summer of 1986. As illustrated in Figure 1, the CM-1 con- tains the following system components: up to 64K data processors, an interprocessor communications network, one to four sequencers, and one to four front-end computer interfaces. Although part of the original Connec- tion Machine design, the 1/0 system was not implemented until the introduction of the CM-2. CM-I data processorsand memory. The ~ __ CM-1 parallel-processing unit contains from 16K to 64K data processors. As Figure 2. CM-1 data processors. shown in Figure 2, each data processor contains an arithmetic-logic unit and associated latches, four kilobits of bit-addressable memory, eight one-bit flag registers, I a router interface, and a two-dimensional-grid interface. The data processors are implemented using two chip types. A proprietary cus- -b tom chip contains the ALU, flag bits, and communications interface for 16 data processors. Memory consists of commer- cial static RAM chips, with parity protec- tion. A fully configured parallel-processing unit contains 64K data processors, consist- ing of 4,096 processor chips and 32 mega- bytes of RAM. Figure 3. Complex problems change topology. A CM-1 ALU consists of a three-input, two-output logic element and associated latches and memory interface (see Figure 2). The basic conceptual ALU cycle first CM-1: First implementation of CM in 1980 at the MIT AI Laboratory, where reads two data bits from memory and one concept. Hillis originally conceived the the basic architectural design and proto- data bit from a flag. The logic element then Connection Machine architecture while at type custom integrated circuits were devel- computes two result bits from the three MIT and described it in his thesis.6 The oped. It became clear that private input bits. Finally, one of the two results design of the Connection Machine began enterprise would have to get involved to is stored in memory and the other result, 28 COMPUTER in a flag. The entire operation is condi- cially designed microcomputer used to tional on the value of a context flag; if the implement the CM virtual machine-is flag is zero, then the results for that data implemented as an Advanced Micro processor are not stored. The CM-1 was Devices 2901/2910 bit-sliced machine with The logic element can compute any two 16KSbitwords of microcode storage. A Boolean functions on three inputs. This designed with flexible Connection Machine contains from one to simple ALU suffices to carry out all the interprocessor four sequencers. The sequencer’s input is operations of a virtual-machine instruc- communication a stream of high-level, virtual-machine tion set. Arithmetic is carried out in a bit- instructions and arguments, transmitted serial fashion, requiring 0.75 microsecond in mind. on a synchronous 32-bit parallel data path per bit plus instruction decoding and over- from the nexus. The sequencer outputs a head. Hence, a 32-bit Add takes about 24 stream of nanoinstructions that controls microseconds. With 64K processors com- the timing and operation of the CM data puting in parallel, this yields an aggregate processors and memory. rate of 2,000 million instructions per sec- The CM-I nexus-a 4x4 cross-point ond (that is, two billion 32-bit Adds per switch-connects from one to four front- second). end computers to from one to four The CM processing element is a sequencers. The connections to front-end reduced-instruction-set-computerproces- front-end computer or the sequencer to all computers are via high-speed, 32-bit, par- sor. Each ALU cycle breaks down into data processors at once. allel, asynchronous data paths; while the subcycles. On each cycle, data processors Global OR is a logi-R of the ALU connections to sequencers are syn- execute one low-level instruction (called a carry output from all data processors, chronous. The nexus provides a partition- nanoinstruction)issued by the sequencer, which makes it possible to quickly discover ing mechanism so that the CM can be while the memories can perform one read unusual or termination conditions.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    13 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us