Results 11 - 20
of
27
Efficient adaptive scheduling of multiprocessors with stable parallelism feedback
- IEEE Transactions on Parallel and Distributed Systems
, 2011
"... Abstract: With proliferation of multi-core computers and multiprocessor systems, an imminent challenge is to efficiently schedule parallel applications on these resources. In contrast to conventional static scheduling, adaptive schedulers that dynamically allocate processors to jobs possess good pot ..."
Abstract
-
Cited by 8 (5 self)
- Add to MetaCart
(Show Context)
Abstract: With proliferation of multi-core computers and multiprocessor systems, an imminent challenge is to efficiently schedule parallel applications on these resources. In contrast to conventional static scheduling, adaptive schedulers that dynamically allocate processors to jobs possess good potential for improving processor utilization and speeding up job’s execution. In this paper, we focus on adaptive scheduling of malleable jobs with periodic processor reallocations based on parallelism feedback of the jobs and allocation policy of the system. We present an efficient adaptive scheduler Acdeq that provides parallelism feedback using an adaptive controller A-Control and allocates processors based on the well-known Deq (Dynamic Equi-partitioning) algorithm. Compared to A-Greedy, an existing adaptive scheduler that experiences feedback instability thus incurs un-necessary scheduling overheads, we show that A-Control achieves much more stable feedback among other desirable control-theoretic properties. Furthermore, we analyze algorithmically the performances of Acdeq in terms of its response time and processor waste for an individual job as well as makespan and total response time for a set of jobs. To the best of our knowledge, Acdeq is the first multiprocessor scheduling algorithm that offers both control-theoretic and algorithmic guarantees. We further evaluate Acdeq via simulations by using Downey’s parallel job model augmented with internal parallelism variations. The results confirm its improved performances over Agdeq, and they show that Acdeq excels especially when the scheduling overhead becomes high.
Adaptive B-Greedy (ABG): A simple yet efficient scheduling algorithm
"... In order to improve processor utilizations on parallel sys-tems, adaptive scheduling with parallelism feedback was re-cently proposed. A-Greedy, an existing adaptive scheduler, of-fers provably-good job execution time and processor utilization. Unfortunately, it suffers from unstable feedback and he ..."
Abstract
-
Cited by 8 (6 self)
- Add to MetaCart
(Show Context)
In order to improve processor utilizations on parallel sys-tems, adaptive scheduling with parallelism feedback was re-cently proposed. A-Greedy, an existing adaptive scheduler, of-fers provably-good job execution time and processor utilization. Unfortunately, it suffers from unstable feedback and hence un-necessary processor reallocations even when the job has con-stant parallelism. This problem may cause difficulties in the management of system resources. We propose a new adaptive scheduler called ABG (for Adap-tive B-Greedy), which ensures both performance and stability. In a direct comparison with A-Greedy using simulated data-parallel jobs, ABG shows an average 50 % reduction in wasted processor cycles and an average 20 % improvement in running time. For a set of jobs, ABG also outperforms A-Greedy by 10 % to 15 % on average in terms of both makespan and mean response time, provided the system is not heavily loaded. Our de-tailed analysis shows that ABG indeed offers improved transient and steady-state behaviors in terms of control-theoretic metrics. Using trim analysis, we show that ABG provides nearly linear speedup for individual jobs and good processor utilizations. Us-ing competitive analysis, we also show that ABG offers good makespan and mean response time bounds. 1
A ADAPT: A Framework for Coscheduling Multithreaded Programs
"... Since multicore systems offer greater performance via parallelism, future computing is progressing towards use of multicore machines with large number of cores. However, the performance of emerging multithreaded programs often does not scale to fully utilize the available cores. Therefore, simultane ..."
Abstract
-
Cited by 6 (2 self)
- Add to MetaCart
Since multicore systems offer greater performance via parallelism, future computing is progressing towards use of multicore machines with large number of cores. However, the performance of emerging multithreaded programs often does not scale to fully utilize the available cores. Therefore, simultaneously running multiple multithreaded applications becomes inevitable to fully exploit such machines. However, multicore machines pose a challenge for the OS with respect to maximizing performance and throughput in the presence of multiple multithreaded programs. We have observed that the state-of-the-art contention management algorithms fail to effectively coschedule multithreaded programs on multicore machines. To address the above challenge, we present ADAPT, a scheduling framework that continuously monitors the resource usage of multithreaded programs and adaptively coschedules them such that they interfere with each other’s performance as little as possible. In addition, it adaptively selects appropriate memory allocation and scheduling policies according to the workload characteristics. We have implemented ADAPT on a 64-core Supermicro server running Solaris 11 and evaluated it using 26 multithreaded programs including the TATP database application, SPECjbb2005, programs from Phoenix, PARSEC, and SPEC OMP. The experimental results show that ADAPT substantially improves total turnaround time and system utilization relative to the default Solaris 11 scheduler.
Multitasking Workload Scheduling on Flexible Core Chip Multiprocessors
"... While technology trends have ushered in the age of chip multiprocessors (CMP) and enabled designers to place an increasing number of cores on chip, a fundamental question is what size to make each core. Most current commercial designs are symmetric CMPs in which each core is identical and range from ..."
Abstract
-
Cited by 6 (1 self)
- Add to MetaCart
(Show Context)
While technology trends have ushered in the age of chip multiprocessors (CMP) and enabled designers to place an increasing number of cores on chip, a fundamental question is what size to make each core. Most current commercial designs are symmetric CMPs in which each core is identical and range from a relatively simple RISC pipeline to a large and complicated out-of-order x86 core. When the granularity of parallelism in the tasks matches the granularity of the processing cores, a CMP will be at its most efficient. To adjust the granularity of a core to the tasks running on it, recent research has proposed flexible-core chip multiprocessors, which typically consist of a number of small processing cores that can be aggregated to form larger logical processors. These architectures introduce a new resource allocation and scheduling problem which must determine how many logical processors should be configured, how powerful each processor should be, and where/when each task should run. This paper introduces and motivates this new scheduling problem, describes the challenges associated with it, and examines and evaluates several algorithms (amenable to implementation in an operating system) appropriate for such flexible-core CMPs. We also describe how scheduling for flexible-core architectures differs from scheduling for fixed multicore architectures, and compare the performance of flexible-core CMPs to both symmetric and asymmetric fixed-core CMPs. 1
Bossa: A DSL Framework For Application-Specific . . .
- IN EIGHTH WORKSHOP ON HOT TOPICS IN OPERATING SYSTEMS
, 2001
"... Developing or specializing existing process schedulers for new needs is tedious and errorprone due to the lack of modularity and inherent complexity of scheduling mechanisms. In this paper, we propose a framework based on a Domain-Specific Language for the implementation of scheduling policies. This ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
Developing or specializing existing process schedulers for new needs is tedious and errorprone due to the lack of modularity and inherent complexity of scheduling mechanisms. In this paper, we propose a framework based on a Domain-Specific Language for the implementation of scheduling policies. This framework permits the installation of basic scheduling policies, called Virtual Schedulers, and the development of Application-Specific Policies, which tailor a Virtual Scheduler to application-specific requirements. We illustrate our approach with concrete examples that show how specialization and reuse of scheduling policies can be accomplished while retaining OS robustness.
Simulated Performance Analysis of Multiprocessor Dynamic Space-Sharing Scheduling policy
"... Multiprocessor systems are the wave of the future rightly said because they offer tremendous potential to solve inherently parallel and complex computation intensive applications. In order to exploit the full potential of such computing systems, job scheduling or processor allocation (both are consi ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Multiprocessor systems are the wave of the future rightly said because they offer tremendous potential to solve inherently parallel and complex computation intensive applications. In order to exploit the full potential of such computing systems, job scheduling or processor allocation (both are considered synonyms here) decisions plays a great role. Such scheduling decisions involves determining number of jobs to execute simultaneously as well as the number of processors to be allocated to each running application in a manner so as to minimize job’s execution time and/or maximizing throughput. The growth of such multiprocessor systems has in turn paves the way for creation of efficient processor allocation policies in order to reduce job response time and make efficient utilization of system’s processors. When we submit jobs or applications to multiprocessor system which in turn relies on job scheduling policies to allocate processors to such incoming jobs, we are really interested to know how well such policies are performing. Performance evaluation methodologies like actual experimental setup i.e. multiprocessor or parallel system, Theoretical/Analytical modelling and Simulation can be used to evaluate the performance of scheduling policies. Actual experimentation on multiprocessor or parallel system is still a costly and complex approach and moreover these systems are still out of reach to young researchers even doing research in higher education institutes like universities or technical colleges
Hybrid Algorithm for Multiprocessor Task Scheduling
"... Multiprocessors have become powerful computing means for running real-time applications and their high performance depends greatly on parallel and distributed network environment system. Consequently, several methods have been developed to optimally tackle the multiprocessor task scheduling problem ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Multiprocessors have become powerful computing means for running real-time applications and their high performance depends greatly on parallel and distributed network environment system. Consequently, several methods have been developed to optimally tackle the multiprocessor task scheduling problem which is called NPhard problem. To address this issue, this paper presents two approaches, Modified List Scheduling Heuristic (MLSH) and hybrid approach composed of Genetic Algorithm (GA) and MLSH for task scheduling in multiprocessor system. Furthermore, this paper proposes three different representations for the chromosomes of genetic algorithm: task list (TL), processor list (PL) and combination of both (TLPLC). Intensive simulation experiments have been conducted on different random and real-world application graphs such as Gauss-Jordan, LU decomposition, Gaussian elimination and Laplace equation solver problems. Comparisons have been done with the most related algorithms like: list scheduling heuristics algorithm LSHs, Bipartite GA (BGA) [1] and Priority based Multi-Chromosome (PMC) [2]. The achieved results show that the proposed approaches significantly surpass the other approaches in terms of task execution time (makespan) and processor efficiency.
Runtime Support For Maximizing Performance on Multicore Systems
, 2012
"... First and foremost I would like to sincerely thank my advisor, Dr. Rajiv Gupta, who was always there for me and shaped my research in many ways. His enthusiasm in research and hard working nature were instrumental in enabling my research to make the progress which it has made. I am particularly grat ..."
Abstract
- Add to MetaCart
(Show Context)
First and foremost I would like to sincerely thank my advisor, Dr. Rajiv Gupta, who was always there for me and shaped my research in many ways. His enthusiasm in research and hard working nature were instrumental in enabling my research to make the progress which it has made. I am particularly grateful for all the freedom he gave me in selecting research problems and his seemingly never-ending trust in my potential. Next, I would like to thank the members of my dissertation committee, Dr. Laxmi N. Bhuyan and Dr. Walid Najjar for reviewing this dissertation. Their extensive and constructive comments have been very helpful in improving this dissertation. I was fortunate enough to do various internships during the course of my Ph.D.
Scheduling of MPI Applications: Self Co-Scheduling
"... Abstract. Scheduling parallel jobs has been an active investigation area. The scheduler has to deal with heterogeneous workloads and try to obtain throughputs and response times such that ensures good performance. We propose a Dynamic Space-Sharing Scheduling technique, the Self Co-Scheduling, based ..."
Abstract
- Add to MetaCart
(Show Context)
Abstract. Scheduling parallel jobs has been an active investigation area. The scheduler has to deal with heterogeneous workloads and try to obtain throughputs and response times such that ensures good performance. We propose a Dynamic Space-Sharing Scheduling technique, the Self Co-Scheduling, based on the combination of the best benefits from Static Space Sharing and Co-Scheduling. A job is allocated a processors partition where its number of processes can be greater than the number of processors. As MPI jobs aren’t malleable, we make the job contend with itself for the use of processors applying Co-Scheduling. The goal of this paper is to evaluate and compare the impact of contending for resources among jobs and with the job itself. We demonstrate that our Self Co-Scheduling technique has better performance and stability than other Time Sharing Scheduling techniques, especially when working with high communication degree workloads, heavy loaded machines and high multiprogramming level. 1
Coordinated Scheduling and Dynamic Performance Analysis in Multiprocessor Systems vii
"... to design and build computing systems capable of running themselves, adjusting to varying circumstances, and preparing their resources to handle most efficiently the workloads we put upon them. These autonomic systems must anticipate needs and allow users to concentrate on what they want to accompli ..."
Abstract
- Add to MetaCart
to design and build computing systems capable of running themselves, adjusting to varying circumstances, and preparing their resources to handle most efficiently the workloads we put upon them. These autonomic systems must anticipate needs and allow users to concentrate on what they want to accomplish rather than figuring how to rig the computing systems to get them there.