UCSC-CRL-06-11: The Big-Step Operational Semantics of CodeTime Circuits

Sean Halle
05/19/2006 12:55 PM
Computer Engineering
The CodeTime Parallel Software Platform aims to allow write once run-anywhere software development for parallel computers. This goal depends upon having a format to distribute programs in which has the six properties: the code 1) is invariant to the number of animators (processors), 2) is invariant to changing the size of data, 3) allows simply and automatically changing the code-length of a schedulable work-unit, 4) allows source-languages which provide easy identification and specification of parallel tasks, 5) allows source-languages which provide simple coordination of parallel tasks, and 6) allows efficient translation to a wide variety of machine-code formats and architectures.

This paper presents the operational semantics of a format having all six of these properties. It takes the form of a circuit, with multiple isolated memory spaces which conceptually move on wires between the computational-units of the circuit.

The semantics are presented in a slightly modified form of Big Step semantics.