A4 Refereed article in a conference publication
An Extended PRAM-NUMA Model of Computation for TCF Programming
Authors: Forsell M, Leppänen V
Editors: N/A
Conference name: International Parallel and Distributed Processing Symposium Workshops & PhD Forum
Publication year: 2012
Journal: IEEE International Symposium on Parallel and Distributed Processing Workshops and PhD Forum (IPDPSW)
Book title : 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops & PhD Forum
Journal name in source: 2012 IEEE 26TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS & PHD FORUM (IPDPSW)
Journal acronym: IEEE SYM PARA DISTR
First page : 786
Last page: 793
Number of pages: 8
ISBN: 978-1-4673-0974-5
ISSN: 2164-7062
DOI: https://doi.org/10.1109/IPDPSW.2012.97
The Parallel Random Access Machine - Non Uniform Memory Access (PRAM-NUMA) model of computation can be used to implement efficient emulated shared memory (ESM) computers for general purpose parallel applications and yet support sequential and NUMA legacy code and avoid loss of performance in applications with low parallelism. While programming of these computers is provably easy, there is still room for improvement since they make implementing time-shared multitasking expensive, sometimes replicate much of the execution unnecessarily, and force a programmer to use looping and conditional control primitives in the case the application parallelism does not match the hardware parallelism. Thick Control Flow (TCF) is a parallel programming model that does not provide a fixed number of threads like PRAM-NUMA but a number of control flows that have certain thickness that can vary according to needs of the application catching the best parts of the dynamicism and generality of the original unbounded PRAM model and simplicity of the Single Instruction Stream Multiple Data Streams (SIMD) model. In this paper we study implementing the TCF model on a top of the PRAM-NUMA model and propose an extended PRAM-NUMA model that makes this straight-forward. Architectural implementation and programming of the extended model are discussed with short examples.