Solving ordinary differential equations I (2nd revised. ed.): nonstiff problems
Solving ordinary differential equations I (2nd revised. ed.): nonstiff problems
Fortran M: a language for modular parallel programming
Journal of Parallel and Distributed Computing
A new model for integrated nested task and data parallel programming
PPOPP '97 Proceedings of the sixth ACM SIGPLAN symposium on Principles and practice of parallel programming
A Framework for Exploiting Task and Data Parallelism on Distributed Memory Multicomputers
IEEE Transactions on Parallel and Distributed Systems
The implementation of the Cilk-5 multithreaded language
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
Models and languages for parallel computation
ACM Computing Surveys (CSUR)
Models and scheduling algorithms for mixed data and task parallel programs
Journal of Parallel and Distributed Computing - Special issue on dynamic load balancing
Compiler support for task scheduling in hierarchical execution models
Journal of Systems Architecture: the EUROMICRO Journal - Special issue on tools and environments for parallel program development
Journal of Computational and Applied Mathematics
Double standards: bringing task parallelism to HPF via the message passing interface
Supercomputing '96 Proceedings of the 1996 ACM/IEEE conference on Supercomputing
Approaches for Integrating Task and Data Parallelism
IEEE Concurrency
A Low-Cost Approach towards Mixed Task and Data Parallel Scheduling
ICPP '02 Proceedings of the 2001 International Conference on Parallel Processing
CPR: Mixed Task and Data Parallel Scheduling for Distributed Systems
IPDPS '01 Proceedings of the 15th International Parallel & Distributed Processing Symposium
Scheduling Using Genetic Algorithms
ICDCS '00 Proceedings of the The 20th International Conference on Distributed Computing Systems ( ICDCS 2000)
Random generation of dags for graph drawing
Random generation of dags for graph drawing
Performance modelling for task-parallel programs
Performance analysis and grid computing
Handbook of Scheduling: Algorithms, Models, and Performance Analysis
Handbook of Scheduling: Algorithms, Models, and Performance Analysis
Building on a Framework: Using FG for More Flexibility and Improved Performance in Parallel Programs
IPDPS '05 Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS'05) - Papers - Volume 01
Tlib-a library to support programming with hierarchical multi-processor tasks
Journal of Parallel and Distributed Computing
Group-SPMD programming with orthogonal processor groups: Research Articles
Concurrency and Computation: Practice & Experience - Compilers for Parallel Computers
Opus: A Coordination Language for Multidisciplinary Applications
Scientific Programming
A Comparison of Scheduling Approaches for Mixed-Parallel Applications on Heterogeneous Platforms
ISPDC '07 Proceedings of the Sixth International Symposium on Parallel and Distributed Computing
IEEE Transactions on Parallel and Distributed Systems
The design of a task parallel library
Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications
Proceedings of the Conference on High Performance Computing Networking, Storage and Analysis
Work-stealing for mixed-mode parallelism by deterministic team-building
Proceedings of the twenty-third annual ACM symposium on Parallelism in algorithms and architectures
ClusterSs: a task-based programming model for clusters
Proceedings of the 20th international symposium on High performance distributed computing
Evolutionary Scheduling of Parallel Tasks Graphs onto Homogeneous Clusters
CLUSTER '11 Proceedings of the 2011 IEEE International Conference on Cluster Computing
Semi-dynamic Scheduling of Parallel Tasks for Heterogeneous Clusters
ISPDC '11 Proceedings of the 2011 10th International Symposium on Parallel and Distributed Computing
Hi-index | 0.00 |
Task-based programming models are beneficial for the development of parallel programs for several reasons. They provide a decoupling of the specification of parallelism from the scheduling and mapping to execution resources of a specific hardware platform, thus allowing a flexible and individual mapping. For platforms with a distributed address space, the use of parallel tasks, instead of sequential tasks, adds the additional advantage of a structuring of the program into communication domains that can help to reduce the overall communication overhead. In this article, we consider the parallel programming model of communicating parallel tasks (CM-tasks), which allows both task-internal communication as well as communication between concurrently executed tasks at arbitrary points of their execution. We propose a corresponding scheduling algorithm and describe how the scheduling is supported by a transformation tool. An experimental evaluation using synthetic task graphs as well as several complex application programs shows that employing the CM-task model may lead to significant performance improvements compared to other parallel execution schemes.