Parallel and distributed computation: numerical methods
Parallel and distributed computation: numerical methods
Scheduling precedence graphs in systems with interprocessor communication times
SIAM Journal on Computing
Scheduling parallel program tasks onto arbitrary target machines
Journal of Parallel and Distributed Computing - Special issue: software tools for parallel programming and visualization
List scheduling of parallel tasks
Information Processing Letters
Proceedings of the 1992 ACM/IEEE conference on Supercomputing
A threshold scheduling strategy for Sisal on distributed memory machines
Journal of Parallel and Distributed Computing
A Scalable Scheduling Scheme for Functional Parallelism on Distributed Memory Multiprocessor Systems
IEEE Transactions on Parallel and Distributed Systems
Optimal Scheduling Algorithm for Distributed-Memory Machines
IEEE Transactions on Parallel and Distributed Systems
A task duplication based scalable scheduling algorithm for distributed memory systems
Journal of Parallel and Distributed Computing
A comparison of list schedules for parallel processing systems
Communications of the ACM
Partitioning and Scheduling Parallel Programs for Multiprocessors
Partitioning and Scheduling Parallel Programs for Multiprocessors
The Design and Analysis of Computer Algorithms
The Design and Analysis of Computer Algorithms
On Mapping Systolic Algorithms onto the Hypercube
IEEE Transactions on Parallel and Distributed Systems
IEEE Transactions on Parallel and Distributed Systems
On the Granularity and Clustering of Directed Acyclic Task Graphs
IEEE Transactions on Parallel and Distributed Systems
A taxonomy of scheduling in general-purpose distributed computing systems
IEEE Transactions on Software Engineering
Building Synthetic Parallel Programs: the Project ALPES
Proceedings of the IFIP WG 10.3 Workshop on Programming Environments for Parallel Computing
A fast and scalable scheduling algorithm for distributed memory systems
SPDP '95 Proceedings of the 7th IEEE Symposium on Parallel and Distributeed Processing
Scalable Scheduling Algorithm For Distributed Memory Machines
SPDP '96 Proceedings of the 8th IEEE Symposium on Parallel and Distributed Processing (SPDP '96)
Static task scheduling and grain packing in parallel processing systems
Static task scheduling and grain packing in parallel processing systems
Task scheduling algorithms for distributed memory systems
Task scheduling algorithms for distributed memory systems
A Comparison of Multiprocessor Scheduling Heuristics
ICPP '94 Proceedings of the 1994 International Conference on Parallel Processing - Volume 02
A New Approach to Scheduling Parallel Programs Using Task Duplication
ICPP '94 Proceedings of the 1994 International Conference on Parallel Processing - Volume 02
A Bottom-Up Approach to Task Scheduling on Distributed Memory Multiprocessors
ICPP '94 Proceedings of the 1994 International Conference on Parallel Processing - Volume 02
Hi-index | 0.00 |
The cost of inter-processor communication is one of the major bottlenecks of a distributed memory machine (DMM) which can be offset with efficient algorithms for task partitioning and scheduling. Based on the data dependencies, the task partitioning algorithm partitions the application program into tasks and represents them in the form of a directed acyclic graph (DAG) or in compiler intermediate forms. The scheduling algorithm schedules the tasks onto individual processors of the DMM in an effort to lower the overall parallel time. It has been long proven that obtaining an optimal schedule for a generic DAG is an NP-hard problem. This chapter presents a Scalable Task Duplication based Scheduling (STDS) algorithm which can schedule the tasks of a DAG with a worst case complexity of O(|v|2), where v is the set of tasks of the DAG. STDS algorithm generates an optimal schedule for a certain class of DAGs which satisfy a Cost Relationship Condition (CRC), provided the required number of processors are available. In case the required number of processors are not available the algorithm scales the schedule down to the available number of processors. The performance of the scheduling algorithm has been evaluated by its application to practical DAGs and by comparing the parallel time of the schedule generated against the absolute or the theoretical lowerbound.