Abstract : An optimally portable language for a set of architectures must accommodate all the features found in the members of that sat. There was no suitable taxonomy to identify the features of SIMD (Single-Instruction stream, Multiple-Data stream) architectures. Therefore, the taxonomy created and used in the design of Porta-SIMD is presented. Porta-SIMD is an optimally portable, full-featured, SIMD language. It provides dynamic allocation of parallel data with dynamically determined size. Generic subroutines which operate on any size of data may also be written in Porta-SIMD. Some important commercial SIMD languages do not provide these features. A prototype implementation of Porta- SIMD has been developed as a set of include files and libraries used with an ordinary C++ compiler. This approach has allowed more rapid prototyping and language experimentation than a custom compiler would have, but modestly constrained the language's syntax. The result is a very portable but only moderately efficient implementation. Porta-SIMA has been implemented for the Connection Machine 2, for Pixel-Planes 4 and 5, and for ordinary sequential machines. Optimal portability is an important new concept for developing portable languages which can handle architectural diversity. Porta-SIMA demonstrates its usefulness with SIMD computers.
[1]
Gary Sabot.
Paralation LISP - software for the Macintosh ; version 4.1 (Reference Manual ; introduction ; Diskette)
,
1989
.
[2]
W. Daniel Hillis,et al.
Connection Machine Lisp: fine-grained parallel symbolic processing
,
1986,
LFP '86.
[3]
Robert A. Wagner,et al.
The Boolean Vector Machine [BVM]
,
1983,
ISCA '83.
[4]
R. Tuck.
An optimally portable SIMD programming language
,
1988,
Proceedings., 2nd Symposium on the Frontiers of Massively Parallel Computation.
[5]
Lawrence Snyder.
A Taxonomy of Synchronous Parallel Machines
,
1988,
ICPP.
[6]
Franco P. Preparata,et al.
The cube-connected-cycles: A versatile network for parallel computation
,
1979,
20th Annual Symposium on Foundations of Computer Science (sfcs 1979).
[7]
S. H. Unger,et al.
A Computer Oriented toward Spatial Problems
,
1899,
Proceedings of the IRE.
[8]
Russell Tuck.
BVLO - A Language for SIMD Computing
,
1986
.