The Warp Computer: Architecture, Implementation, and Performance - Robotics Institute Carnegie Mellon University

The Warp Computer: Architecture, Implementation, and Performance

M. Annaratone, E. Arnould, T. Gross, H. T. Kung, M. Lam, O. Menzilcioglu, and J. Webb
Journal Article, IEEE Transactions on Computers, Vol. 36, No. 12, pp. 1523 - 1538, December, 1987

Abstract

The Warp machine is a systolic array computer of linearly connected cells, each of which is a programmable processor capable of performing 10 million floating-point operations per second (10 MFLOPS). A typical Warp array includes ten cells, thus having a peak computation rate of 100 MFLOPS. The Warp array can be extended to include more cells to accommodate applications capable of using the increased computational bandwidth. Warp is integrated as an attached processor into a Unix host system. Programs for Warp are written in a high-level language supported by an optimizing compiler. The first ten-cell prototype was completed in February 1986; delivery of production machines started in April 1987. Extensive experimentation with both the prototype and production machines has demonstrated that the Warp architecture is effective in the application domain of robot navigation as well as in other fields such as signal processing, scientific computation, and computer vision research. For these applications, Warp is typically several hundred times faster than a VAX 11/780 class computer. This paper describes the architecture, implementation, and performance of the Warp machine. Each major architectural decision is discussed and evaluated with system, software, and application considerations. The programming model and tools developed for the machine are also described. The paper concludes with performance data for a large number of applications.

BibTeX

@article{Annaratone-1987-15369,
author = {M. Annaratone and E. Arnould and T. Gross and H. T. Kung and M. Lam and O. Menzilcioglu and J. Webb},
title = {The Warp Computer: Architecture, Implementation, and Performance},
journal = {IEEE Transactions on Computers},
year = {1987},
month = {December},
volume = {36},
number = {12},
pages = {1523 - 1538},
}