The Fujitsu AP1000

<hr>

This page provides some information specifically on the Fujitsu AP1000. It has been installed at ANU since 1991, initially with 64 cells. There have been two hardware upgrades: for another 64 processing elements and for 32 distributed disk and video (DDV) option cells. Fujitsu have a polished presence on the Web if you wish to find more information about them.

The standard reference for the architecture is:

Ishihata, H., Horie, T., Inano, S., Shimizu, T., Kato, S., ``CAP-II Architecture,'' Proceedings of the First Fujitsu-ANU CAP Workshop,Fujtsu Labs, Kawasaki, Japan, (Nov. 1990).

List of contents

<hr>

Description

The AP1000 is an experimental large-scale MIMD parallel computer developed by Fujitsu Laboratories, Japan. Configurations range from 64 to 1024 individual processors or ``cells'', connected by three separate high-bandwidth communications networks: the B-net, T-net and S-net. The cells do not share memory. The AP1000 is connected to and controlled by a host computer which is typically a Sun SPARCServer.

Each cell consists of a SPARC processor running at 25MHz with 16MB of RAM (four-way interleaved, with ECC), 128kB of direct-mapped cache memory, floating-point unit, a message controller, and interfaces to the three communications networks. The cells have no address translation hardware, but they do have a memory-protection table (MPT) which provides access and caching control for 4KB pages. The message controller provides DMA facilities for sending and receiving messages.

The B-net is a 32-bit, 50MB/sec broadcast network which connects all cells and the host, and is used for communication between the host and the cells. Using the B-net, the host can transmit data to one cell or to all cells simultaneously, and each cell can transmit data to the host. The B-net also supports scatter/gather operations.

The T-net provides cell-to-cell communication. It is arranged as a two-dimensional torus in which each cell has links to its four neighbours in a rectangular grid. The T-net is controlled by a Routing Controller (RTC) chip in each cell; its bandwidth is 25MB/sec on each link. Wormhole routing is used, with a structured buffer pool in each RTC to avoid deadlock. Each RTC will forward messages on toward their destinations without requiring any action by the cell CPU.

The S-net supports synchronization and status checking. It carries 40 signals which are ANDed together over all cells: all cells output a value for each signal, and receive the AND of the values output by all cells. To achieve synchronization, each cell sets a particular output to 1 and then waits until it sees the corresponding input at a 1. The S-net also allows the cells to synchronize with the host.

Programs for the AP1000 are written in either C or FORTRAN. Library calls are used for communication over the networks described above. Run-time control is provided in the cells by CellOS, the cell operating system, and on the host by the CAREN (Cellular Array Runtime ENvironment) program. CAREN provides facilities for run-time monitoring of cell activity, performance measurement, error logging and debugging. Symbolic debugging of cell tasks is provided through the use of GDB.

<hr>

Fujitsu AP1000 hardware and network configuration

<hr>

Programming documentation and usage information for the AP1000

A number of documents exist to help you get started with programming the AP1000. If you find these ones are inadequate and you would like to get more pointers, send email to captain@cap (.anu.edu.au).