Item Details

Combining Control and Data Parallelism: Data Parallel Extensions to the Mentat Programming Language

West, Emily
West, Emily
Control parallelism refers to concurrent execution of different instruction streams. Data parallelism refers to concurrent execution of the same instruction stream on multiple data. There are a number of languages which support control parallelism as well as several which support data parallelism. As yet, there is no language which combines the two. The Mentat Programming Language, MPL, is designed to express control parallelism. While expression of data parallelism is possible, it is awkward and unsupported by the current language features. In this research, we propose a set of data parallel extensions to the MPL. We define a new type of mentat class, the dataparallel mentat class, to complement the existing regular, persistent and sequential mentat classes. In a dataparallel mentat class, the programmer defines the structure of an element and the methods that operate on these elements. These methods are annotated to convey the distribution of the data set and inter and intra data set communication. All other data parallel languages to date simply allow element level parallelism. Our language extensions support subset level parallelism as well. In this work, we present the language design, a description of the implementation model, and the translations of the dataparallel class toMentat's parallel model. Note: Abstract extracted from PDF text
University of Virginia, Department of Computer Science, 1994
Published Date
Libra Open Repository
Logo for In CopyrightIn Copyright


Access Online