Introduction to algorithms
Models and scheduling algorithms for mixed data and task parallel programs
Journal of Parallel and Distributed Computing - Special issue on dynamic load balancing
A Low-Cost Approach towards Mixed Task and Data Parallel Scheduling
ICPP '02 Proceedings of the 2001 International Conference on Parallel Processing
Compiling MATLAB Programs to ScaLAPACK: Exploiting Task and Data Parallelism
IPPS '96 Proceedings of the 10th International Parallel Processing Symposium
CPR: Mixed Task and Data Parallel Scheduling for Distributed Systems
IPDPS '01 Proceedings of the 15th International Parallel & Distributed Processing Symposium
Dynamic scheduling of scientific workflow applications on the grid: a case study
Proceedings of the 2005 ACM symposium on Applied computing
Critical Path and Area Based Scheduling of Parallel Task Graphs on Heterogeneous Platforms
ICPADS '06 Proceedings of the 12th International Conference on Parallel and Distributed Systems - Volume 1
An Integrated Approach for Processor Allocation and Scheduling of Mixed-Parallel Applications
ICPP '06 Proceedings of the 2006 International Conference on Parallel Processing
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
SimGrid: A Generic Framework for Large-Scale Distributed Experiments
UKSIM '08 Proceedings of the Tenth International Conference on Computer Modeling and Simulation
Scheduling ?-Critical Tasks in mixed-parallel applications on a national grid
GRID '07 Proceedings of the 8th IEEE/ACM International Conference on Grid Computing
Scheduling mixed-parallel applications with advance reservations
Cluster Computing
An opportunistic algorithm for scheduling workflows on grids
VECPAR'06 Proceedings of the 7th international conference on High performance computing for computational science
Scheduling of scientific workflow in non-dedicated heterogeneous multicluster platform
Journal of Systems and Software
Hi-index | 0.00 |
Due to the strong increase of processing units available to the end user, expressing parallelism of an algorithm is a major challenge for many researchers. Parallel applications are often expressed using a task-parallel model (task graphs), in which tasks can be executed concurrently unless they share a dependency. If these tasks can also be executed in a data-parallel fashion, e.g., by using MPI or OpenMP, then we call it a mixed-parallel programming model. Mixed-parallel applications are often modeled as directed a cyclic graphs (DAGs), where nodes represent the tasks and edges represent data dependencies. To execute a mixed-parallel application efficiently, a good scheduling strategy is required to map the tasks to the available processors. Several algorithms for the scheduling of mixed-parallel applications onto a homogeneous cluster have been proposed. MCPA (Modified CPA) has been shown to lead to efficient schedules. In the allocation phase, MCPA considers the total number of processors allocated to all potentially concurrently running tasks as well as the number of processors in the cluster. In this article, it is shown how MCPA can be extended to obtain a more balanced workload in situations where concurrently running tasks differ significantly in the number of operations. We also show how the allocation procedure can be tuned in order to deal not only with regular DAGs (FFT), but also with irregular ones. We also investigate the question whether additional optimizations of the mapping procedure, such as packing of allocations or backfilling, can reduce the make span of the schedules.