Orthogonal parallel processing in vector pascal

Cockshott, W.P. and Michaelson, G.J. (2006) Orthogonal parallel processing in vector pascal. Computer Languages, Systems and Structures, 32(1), pp. 2-41. (doi: 10.1016/j.cl.2004.07.001)

[img]
Preview
Text
cockshott3451.pdf

414kB

Publisher's URL: http://dx.doi.org/10.1016/j.cl.2004.07.001

Abstract

Despite the widespread adoption of parallel operations in contemporary CPU designs, their use has been restricted by a lack of appropriate programming language abstractions and development environments. To fully exploit the SIMD model of computation such operations offer, programmers depend on CPU specific machine code or implementation dependent libraries. Vector Pascal is a language designed to enable the elegant and efficient expression of SIMD algorithms. It imports into Pascal abstraction mechanisms derived from functional languages, in turn having their origins in APL. In particular, it extends all operators to work on vectors of data. The type system is also extended to handle pixels and dimensional analysis. Code generation is via the ILCG system that allows retargeting to multiple different SIMD instruction sets based on formalised descriptions of the instruction set semantics.

Item Type:Articles
Keywords:Pascal; Parallelism; SIMD; Image processing; Vector processing; Data parallel.
Status:Published
Refereed:Yes
Glasgow Author(s) Enlighten ID:Cockshott, Dr William
Authors: Cockshott, W.P., and Michaelson, G.J.
Subjects:Q Science > QA Mathematics > QA75 Electronic computers. Computer science
College/School:College of Science and Engineering > School of Computing Science
Journal Name:Computer Languages, Systems and Structures
ISSN:1477-8424
ISSN (Online):1873-6866
Copyright Holders:Copyright © 2006 Elsevier
First Published:First published in Computer Languages, Systems and Structures 32(1):2-41
Publisher Policy:Reproduced in accordance with the copyright policy of the publisher.

University Staff: Request a correction | Enlighten Editors: Update this record