Abstract
Of the many proposals for parallel computer architectures, dataflow systems offer perhaps the greatest potential parallelism at the hardware level. However, it is unreasonable to expect users to exploit this parallelism at such a low level, and it is necessary to provide high level programming facilities which allow the user the abstract freedom of expression he requires, whilst permitting efficient use of the hardware. It has been noticed that single-assignment languages are particularly well-suited to dataflow machines, yet exhibit most of the familiar, useful features of conventional high level languages. This paper considers some aspects of code generation from the single-assignment language Lapse for the Manchester prototype dataflow computer. The syntax of Lapse, which resembles Pascal, is introduced, and code generation templates are presented. Some possible optimisations of flowgraph code are discussed, particularly in the implementation of arrays.
Preview
Unable to display preview. Download preview PDF.
References
Ackerman W.B. and Dennis J.B., VAL — A Value-Oriented Algorithmic Language, CSG Technical Report no.218, Lab. for Computer Science, M.I.T., June 1979.
Arvind and Gostelow K.P., A Computer Capable of Exchanging Processors for Time, Information Processing 77, North Holland, 1977, p849.
Arvind, Gostelow K.P. and Plouffe W., The Id Report: An Asynchronous Language and Computing Machine, Technical Report, Dept. of Information and Computer Science, Univ. of California, Irvine, May 1978.
Ashcroft E.A. and Wadge W.W., Lucid, a Nonprocedural Language with Iteration, Communications of the ACM, vol.20, no.7, July 1977, p519.
Brent R.P., The Parallel Evaluation of Arithmetic Expressions in Logarithmic Time, in Traub J.F. (ed.), Complexity of Sequential and Parallel Numerical Algorithms, Academic Press, 1973, p83.
Catto A.J., Gurd J.R. and Kirkham C.C., Nondeterministic Dataflow Programming, Proc. ACM Int. Computing Symposium on Systems Architecture, March 1981.
Chamberlin D.D., The Single-Assignment Approach to Parallel Processing, AFIPS FJCC, vol.39, 1971, p263.
Dennis J.B. and Misunas D.P., A Preliminary Architecture for a Basic Data Flow Processor, Second IEEE Symposium on Computer Architecture, Jan. 1975, p126.
Dennis J.B., Misunas D.P. and Leung C.K., A Highly Parallel Processor Using a Data Flow Machine Language, CSG Memo no.134, Lab. for Computer Science, M.I.T., Jan. 1977.
Dijkstra E.W., A Discipline of Programming, ch11, p94, Prentice-Hall, 1976.
Glauert J.R.W., A Single Assignment Language for Data Flow Computing, M.Sc. Dissertation, Dept. of Computer Science, Univ. of Manchester, Jan. 1978.
Gurd J.R. and Watson I., Data Driven System for High Speed Parallel Computing, Computer Design, vol.19, no.6, June 1980, p91, and vol.19 no.7, July 1980, p97.
Jensen K. and Wirth N., Pascal User Manual and Report, Springer-Verlag, 1975.
Miller R.E. and Rutledge J.D., Generating a Data Flow Model of a Program, IBM Technical Disclosure Bulletin, vol.8, no.11, April 1966, p1550.
Miranker G.S., Implementation of Procedures on a Class of Data Flow Processors, IEEE Int. Conf. on Parallel Processing, Aug. 1977, p77.
Plas A., et. al., LAU System Architecture: A Parallel Data Driven Processor Based on Single Assignment, IEEE Int. Conf. on Parallel Processing, Aug. 1976, p293.
Tesler L.G. and Enea H.J., A Language Design for Concurrent Processes, AFIPS SJCC, vol.32, 1968, p403.
Warren D.H.D. and Pereira L.M., Prolog — the Language and its Implementation Compared with Lisp, SIGPLAN Notices, vol.12, no.8, Aug. 1977, p109.
Watson I. and Gurd J.R., A Prototype Data Flow Computer with Token Labelling, AFIPS NCC, vol.48, June 1979, p623.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1981 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Gurd, J.R., Glauert, J.R.W., Kirkham, C.C. (1981). Generation of dataflow graphical object code for the lapse programming language. In: Brauer, W., et al. Conpar 81. CONPAR 1981. Lecture Notes in Computer Science, vol 111. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0105116
Download citation
DOI: https://doi.org/10.1007/BFb0105116
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-10827-6
Online ISBN: 978-3-540-38715-2
eBook Packages: Springer Book Archive