and Introduction The Caltech Mosaic C is an experimental, ne-grain multicomputer that employs single-chip nodes and advanced packaging technology to demonstrate the performance/cost advantages of the ne-grain-multicomputer architecture. Each Mosaic node includes 64KB of single-clock-cycle dynamic RAM; 2KB of self-test and bootstrap ROM; an 11MIPS processor; a packet interface ; and a 60MB/s, two-dimensional, self-timed router. The node is a single , 9.25mm10.00mm, 1.2m-feature-size, CMOS chip that, at V dd = 5V, operates at 30MHz and dissipates 0.5W. These chips are packaged by tape-automated bonding (TAB) in 88 arrays on circuit boards that can, in turn, be composed in two dimensions to construct arbitrarily large arrays of nodes. In addition to the 88 boards, complete Mosaic systems require host-interface boards that allow workstations to send and receive packets on Mosaic channels, and high-bandwidth cables. The Mosaic host-interface boards are built using memoryless Mosaic chips with external SRAM that can also be accessed by the workstation. The host-interface boards were a critical part of the development strategy: They were used both to develop and re-ne the Mosaic processor, packet interface, and router through MOSIS runs; and also to provide early, operational, Mosaic multicomputers for system-software and test-program development. The Mosaic programming system consists of a compiler for a source programming notation called C +? , and a distributed runtime system. C +? is an extension of C ++ that supports concurrent processes in much the same way that C ++ supports program objects. The runtime system, which is written in C +? , provides copyless message handling, highly distributed resource management, automatic process placement, and scheduling. The Mosaic is intended both for large-scale-computing and for embedded-systems applications. A 16K-node Mosaic system is being constructed at Caltech to explore the programmability and application span of the architecture for large-scale computations. The ATOMIC local-area network 8] is an early example of an embedded-system application of Mosaic components.
[1]
Jakov N. Seizovic,et al.
The architecture and programming of a fine-grain multicomputer
,
1993
.
[2]
Wen-King Su.
Reactive-process programming and distributed discrete-event simulation
,
1990
.
[3]
William J. Dally,et al.
A VLSI Architecture for Concurrent Data Structures
,
1987
.
[4]
Nanette Jackson Boden.
Runtime Systems for Fine-Grain Multicomputers
,
1993
.
[5]
Charles L. Seitz,et al.
The cosmic cube
,
1985,
CACM.
[6]
Michael D. Noakes,et al.
System design of the J-Machine
,
1990
.
[7]
Wesley A. Clark.
The Lincoln TX-2 Computer Development
,
1899
.
[8]
Don Speck.
The Mosaic fast 512K scalable CMOS dRAM
,
1991
.
[9]
Gordon Bell,et al.
Ultracomputers: a teraflop before its time
,
1992,
CACM.
[10]
Charles L. Seitz,et al.
Multicomputers: message-passing concurrent computers
,
1988,
Computer.
[11]
Nanette J. Boden.
A Study of Fine-Grain Programming Using Cantor
,
1988
.
[12]
Michael J. Pertel.
A Critique of Adaptive Routing
,
1992
.
[13]
Danny Cohen,et al.
ATOMIC: a Low-Cost, Very High-Speed LAN
,
1992
.
[14]
William C. Athas,et al.
Fine Grain Concurrent Computations
,
1987
.