Algorithms for scalable synchronization on shared-memory multiprocessors
ACM Transactions on Computer Systems (TOCS)
Message passing on the Meiko CS-2
Parallel Computing - Special issue: message passing interfaces
Analysis of the impact of memory in distributed parallel processing systems
SIGMETRICS '94 Proceedings of the 1994 ACM SIGMETRICS conference on Measurement and modeling of computer systems
U-Net: a user-level network interface for parallel and distributed computing
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
High performance messaging on workstations: Illinois fast messages (FM) for Myrinet
Supercomputing '95 Proceedings of the 1995 ACM/IEEE conference on Supercomputing
Effective distributed scheduling of parallel workloads
Proceedings of the 1996 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
Scheduling with implicit information in distributed systems
SIGMETRICS '98/PERFORMANCE '98 Proceedings of the 1998 ACM SIGMETRICS joint international conference on Measurement and modeling of computer systems
SIGMETRICS '98/PERFORMANCE '98 Proceedings of the 1998 ACM SIGMETRICS joint international conference on Measurement and modeling of computer systems
A closer look at coscheduling approaches for a network of workstations
Proceedings of the eleventh annual ACM symposium on Parallel algorithms and architectures
An evaluation of parallel job scheduling for ASCI Blue-Pacific
SC '99 Proceedings of the 1999 ACM/IEEE conference on Supercomputing
Alternatives to coscheduling a network of workstations
Journal of Parallel and Distributed Computing - Special issue on software support for distributed computing
A Gang-Scheduling System for ASCI Blue-Pacific
HPCN Europe '99 Proceedings of the 7th International Conference on High-Performance Computing and Networking
The ANL/IBM SP Scheduling System
IPPS '95 Proceedings of the Workshop on Job Scheduling Strategies for Parallel Processing
Performance Evaluation of Gang Scheduling for Parallel and Distributed Multiprogramming
IPPS '97 Proceedings of the Job Scheduling Strategies for Parallel Processing
Global State Detection Using Network Preemption
IPPS '97 Proceedings of the Job Scheduling Strategies for Parallel Processing
Implementing the Combination of Time Sharing and Space Sharing on AP/Linux
IPPS/SPDP '98 Proceedings of the Workshop on Job Scheduling Strategies for Parallel Processing
Using Windows NT for Real-Time Applications: Experimental Observations and Recommendations
RTAS '98 Proceedings of the Fourth IEEE Real-Time Technology and Applications Symposium
User Level Scheduling of Communicating Real-Time Tasks
RTAS '99 Proceedings of the Fifth IEEE Real-Time Technology and Applications Symposium
Integrated scheduling of multimedia and hard real-time tasks
RTSS '96 Proceedings of the 17th IEEE Real-Time Systems Symposium
A Decision-Process Analysis of Implicit Coscheduling
IPDPS '00 Proceedings of the 14th International Symposium on Parallel and Distributed Processing
Improving Parallel Job Scheduling by Combining Gang Scheduling and Backfilling Techniques
IPDPS '00 Proceedings of the 14th International Symposium on Parallel and Distributed Processing
Efficient Virtual Interface Architecture (VIA) Support for the IBM SP Switch-Connected NT Clusters
IPDPS '00 Proceedings of the 14th International Symposium on Parallel and Distributed Processing
Buffered Coscheduling: A New Methodology for Multitasking Parallel Jobs on Distributed Systems
IPDPS '00 Proceedings of the 14th International Symposium on Parallel and Distributed Processing
Extensible Resource Management For Cluster Computing
ICDCS '97 Proceedings of the 17th International Conference on Distributed Computing Systems (ICDCS '97)
Demand-based coscheduling of parallel jobs on multiprogrammed multiprocessors
Demand-based coscheduling of parallel jobs on multiprogrammed multiprocessors
Coordinated thread scheduling for workstation clusters under windows NT
NT'97 Proceedings of the USENIX Windows NT Workshop on The USENIX Windows NT Workshop 1997
GRID '02 Proceedings of the Third International Workshop on Grid Computing
Joint Application Mapping/Interconnect Synthesis Techniques for Embedded Chip-Scale Multiprocessors
IEEE Transactions on Parallel and Distributed Systems
PROC: Process ReOrdering-Based Coscheduling on Workstation Clusters
IPDPS '05 Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS'05) - Papers - Volume 01
Scheduling Security-Critical Real-Time Applications on Clusters
IEEE Transactions on Computers
LOMARC: Lookahead Matchmaking for Multiresource Coscheduling on Hyperthreaded CPUs
IEEE Transactions on Parallel and Distributed Systems
A runtime resolution scheme for priority boost conflict in implicit coscheduling
The Journal of Supercomputing
International Journal of High Performance Computing and Networking
Consistent Application Performance at the Exascale
International Journal of High Performance Computing Applications
Proposal of an analytical solution for the load imbalance problem in parallel systems
ISPDC'03 Proceedings of the Second international conference on Parallel and distributed computing
A Markovian sensibility analysis for parallel processing scheduling on GNU/Linux
ISPA'06 Proceedings of the 2006 international conference on Frontiers of High Performance Computing and Networking
Hi-index | 0.01 |
Scheduling of processes onto processors of a parallel machine has always been an important and challenging area of research. The issue becomes even more crucial and difficult as we gradually progress to the use of off-the-shelf workstations, operating systems, and high bandwidth networks to build cost-effective clusters for demanding applications. Clusters are gaining acceptance not just in scientific applications that need supercomputing power, but also in domains such as databases, web service, and multimedia which place diverse Quality-of-Service (QoS) demands on the underlying system. Further, these applications have diverse characteristics in terms of their computation, communication, and I/O requirements, making conventional parallel scheduling solutions, such as space sharing or gang scheduling, unattractive. At the same time, leaving it to the native operating system of each node to make decisions independently can lead to ineffective use of system resources whenever there is communication. Instead, an emerging class of dynamic coscheduling mechanisms that attempt to take remedial actions to guide the system toward coscheduled execution without requiring explicit synchronization offers a lot of promise for cluster scheduling. Using a detailed simulator, this paper evaluates the pros and cons of different dynamic coscheduling alternatives while comparing their advantages over traditional gang scheduling (and not performing any coordinated scheduling at all). The impact of dynamic job arrivals, job characteristics, and different system parameters on these alternatives is evaluated in terms of several performance criteria. In addition, heuristics to enhance one of the alternatives even further are identified, classified, and evaluated. It is shown that these heuristics can significantly outperform the other alternatives over a spectrum of workload and system parameters and is thus a much better option for clusters than conventional gang scheduling.