2009
DOI: 10.1007/s10766-009-0101-1
|View full text |Cite
|
Sign up to set email alerts
|

A Proposal to Extend the OpenMP Tasking Model with Dependent Tasks

Abstract: Tasking in OpenMP 3.0 has been conceived to handle the dynamic generation of unstructured parallelism. New directives have been added allowing the user to identify units of independent work (tasks) and to define points to wait for the completion of tasks (task barriers). In this document we propose extensions to allow the runtime detection of dependencies between generated tasks, broading the range of applications that can benefit from tasking or improving the performance when load balancing or locality are cr… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
34
0

Year Published

2012
2012
2024
2024

Publication Types

Select...
4
3
2

Relationship

2
7

Authors

Journals

citations
Cited by 52 publications
(34 citation statements)
references
References 10 publications
0
34
0
Order By: Relevance
“…At runtime, this information about the directionality of the task data is used to build a task data-dependence graph that exhibits the inherent data dependences of the application as well as its potential task parallelism. Current efforts at the Barcelona Supercomputing Center are focused on the OmpSs [9][46] implementation of StarSs which extends the OpenMP explicit tasks [10] with dependence clauses that indicate the directionality of the tasks arguments, and on the Task Superscalar design [59] [60]. Fig.…”
Section: Programming Dataflow Architectures With Task-based Apprmentioning
confidence: 99%
“…At runtime, this information about the directionality of the task data is used to build a task data-dependence graph that exhibits the inherent data dependences of the application as well as its potential task parallelism. Current efforts at the Barcelona Supercomputing Center are focused on the OmpSs [9][46] implementation of StarSs which extends the OpenMP explicit tasks [10] with dependence clauses that indicate the directionality of the tasks arguments, and on the Task Superscalar design [59] [60]. Fig.…”
Section: Programming Dataflow Architectures With Task-based Apprmentioning
confidence: 99%
“…The XKaapi code illustrates the C++ interface that does not require a specific compiler: in the notation A(ri,rj), ri and rj denote a range of indexes so that A(ri,rj) is a sub-matrix of matrix A. Thanks to this finer knowledge of tasks dependencies, the runtime system can schedule ready tasks between two main iterations in k [15], [16]. The OpenMP version is similar to the CilkPlus version by replacing cilk_spawn by #pragma omp task and cilk_sync by #pragma omp taskwait.…”
Section: Choleskymentioning
confidence: 99%
“…In particular, several studies [15], [16] show that the strong synchronizations imposed by both OpenMP and Cilk execution models artificially limit the available parallelism: in these programming models, the synchronization construct block the running thread until previously spawned tasks have completed their execution. For instance, in a classical nested loops formulation of matrix factorization [15], [16], both OpenMP and Cilk enforce periodic synchronizations that block the execution of tasks from the next iteration. These studies emphasize data-flow approaches that are able to expose fine-grain one-to-one synchronizations between tasks: the runtime system can detect concurrent tasks as soon as their inputs are produced.…”
Section: Introductionmentioning
confidence: 99%
“…Since the inclusion of dependencies for tasks in OpenMP 4.0 [26] this standard is the most widespread option that supports this paradigm, and thus the first we study. A very active and related project, which in fact pushed for the adoption of dependent tasks in OpenMP [11], is OmpSs, which integrates features from the StarSS family of programming models [27]. While OpenMP and OmpSs cover well the space of compiler directives in our scope of interest, the area of libraries is much more sparse.…”
Section: Introductionmentioning
confidence: 99%