The Warp Computer: Architecture, Implementation, and Performance

Marco Annaratone, Emmanuel Arnould, Thomas Gross, H. T. Kung, Monica Lam, Onat Menzilcioglu, Jon A. Webb
1987 IEEE transactions on computers  
The Warp machine is a systolic array computer of accessed by a procedure call on the host, or through an linearly connected cells, each of which is a programmable interactive, programmable command interpreter called the processor capable of performing 10 million floating-point opera-Warp shell [8]. A high-level language called W2 is used to tions per second (10 MFLOPS). A typical Warp array includes ten cells, thus having a peak computation rate of 100 MFLOPS. program Warp; the language is
more » ... rted by an optimizing The Warp array can be extended to include more cells to compiler [121, [23] accommodate applications capable of using the increased compu-The Warp project started in 1984. A two-cell system was tational bandwidth. Warp is integrated as an attached processor completed in June 1985 at Carnegie Mellon. Construction of into a Unix host system. Programs for Warp are written in a two identical ten-cell prototype machines was contracted to high-level language supported by an optimizing compiler. The first ten-cell prototype was completed in February 1986 two industrial partners, GE and Honeywell. These prototypes delivery of production machines started in April 1987. Extensive were built from off-the-shelf parts on wire-wrapped boards. experimentation with both the prototype and production ma-The first prototype machine was delivered by GE in February chines has demonstrated that the Warp architecture is effective in 1986, and the Honeywell machine arrived at Carnegie Mellon the application domain of robot navigation as well as in other in June 1986. For a period of about a year starting from early fields such as signal processing, scientific computation, and computer vision research. For these applications, Warp is 1986, these two prototype machines were used on a daily basis typically several hundred times faster than a VAX 11/780 class at Carnegie Mellon. computer. We have implemented application programs in many areas, This paper describes the architecture, implementation, and including low-level vision for robot vehicle navigation, image performance of the Warp machine. Each major architectural and signal processing scientific computing magnetic resodecision is discussed and evaluated with system, software, and nand simgn processing, snin agn rso-ar application considerations. The programming model and tools nance imagery (MRI), image processIng, radar and sonar developed for the machine are also described. The paper simulation, andgraphalgorithms [3], [4]. Inaddition, wehave concludes with performance data for a large number of applica-developed an image processing library of over 100 routines tions. [17]. Our experience has shown that Warp is effective in these Index Terms-Computer system implementation, computer applications; Warp is typically several hundred times faster vision, image processing, optimizing compiler, parallel proces-than a VAX 11/780 class computer. sors, performance evaluation, pipelined processor, scientific Encouraged by the performance of the prototype machines, computing, signal processing, systolic array, vision research. we have revised the Warp architecture for reimplementation on printed circuit (PC) boards to allow faster and more I. INTRODUCTION efficient production. The revision also incorporated several T HE Warp machine is a high-performance systolic array architectural improvements. The production Warp machine is computer designed for computation-intensive referred to as the PC Warp in this paper. The PC Warp is applications. In a typical configuration, Warp consists of a manufactured by GE, and is available at about $350 000 per linear systolic array of ten identical cells, each of which is a 10 machine. The first PC Warp machine was delivered by GE in MFLOPS programmable processor. Thus, a system in this April 1987 to Carnegie Mellon. configuration has a peak performance of 100 MFLOPS. This paper describes the architecture of the Warp machine, The Warp machine is an attached processor to a general the rationale of the design and the implementation, and purpose host running the Unix operating system. Warp can be performance measurements for a variety of applications. The organization of the paper is as follows. We first present an Manuscript
doi:10.1109/tc.1987.5009502 fatcat:xup2rwwivjb2jfjnb3fhiwgv7i