DocumentCode :
564078
Title :
Flexible scheduling and thread allocation for synchronous parallel tasks
Author :
Kessler, Christoph W. ; Hansson, Erik
Author_Institution :
IDA, Linkoping Univ., Linkoping, Sweden
fYear :
2012
fDate :
28-29 Feb. 2012
Firstpage :
1
Lastpage :
7
Abstract :
We describe a task model and dynamic scheduling and resource allocation mechanism for synchronous parallel tasks to be executed on SPMD-programmed synchronous shared-memory MIMD parallel architectures with uniform, unit-time memory access and strict memory consistency, also known in the literature as PRAMs (Parallel Random Access Machines). Our task model provides a two-tier programming model for PRAMs that flexibly combines SPMD and fork-join parallelism within the same application. It offers flexibility by dynamic scheduling and late resource binding while preserving the PRAM execution properties within each task, the only limitation being that the maximum number of threads that can be assigned to a task is limited to what the underlying architecture provides. In particular, our approach opens for automatic performance tuning at run-time by controlling the thread allocation for tasks based on run-time predictions. By a prototype implementation of a synchronous parallel task API in the SPMD-based PRAM language Fork and experimental evaluation with example programs on the SBPRAM simulator, we show that a realization of the task model on a SPMD-programmable PRAM machine is feasible with moderate runtime overhead per task.
Keywords :
concurrency theory; dynamic scheduling; formal languages; multi-threading; parallel architectures; parallel languages; parallel machines; resource allocation; shared memory systems; SBPRAM simulator; SPMD-programmable PRAM machine; SPMD-programmed synchronous shared-memory MIMD parallel architectures; automatic performance tuning; dynamic scheduling; flexible scheduling; fork-join parallelism; parallel random access machines; resource allocation mechanism; resource binding; run-time predictions; strict memory consistency; synchronous parallel tasks; task model; thread allocation; thread allocation control; two-tier programming model; unit-time memory access; Arrays; Containers; Hardware; Instruction sets; Payloads; Phase change random access memory; Vectors;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
ARCS Workshops (ARCS), 2012
Conference_Location :
Muenchen
Print_ISBN :
978-1-4673-1913-3
Electronic_ISBN :
978-3-88579-294-9
Type :
conf
Filename :
6222202
Link To Document :
بازگشت