Provably-Efficient Adaptive Scheduling with Parallelism Feedback

Subscribers:
344,000
Published on ● Video Link: https://www.youtube.com/watch?v=2nFBn4uCyOA



Duration: 1:09:09
143 views
0


This talk presents feedback-driven adaptive algorithms for efficient scheduling of parallel jobs on multiprogrammed multiprocessors. Multiprocessor scheduling is often structured in two levels, where a kernel-level OS allocator allots processors to jobs and a user-level task scheduler schedules the ready tasks of a job on the allotted processors. In the context of adaptive scheduling, the demand of a parallel job may scale up and down. Therefore, the number of processors allotted to a particular job should vary during the job's execution, and the task scheduler must also adapt to these changes in processor resources. For overall system efficiency, the task scheduler should provide parallelism feedback to the OS allocator to avoid situations, where a job is either allotted too many processors to use productively or it is allotted too few processors to complete without undue delay. Since the future parallelism of a job is generally unknown, how to provide effective parallelism feedback and allocate processors efficiently is a significant research challenge. This talk provides an overview of several adaptive scheduling algorithms we have developed. The proposed schedulers operate in an online nonclairvoyant manner, oblivious to the future characteristics of a job. Firstly the task scheduler A-Greedy provides provably good history-based feedback about a job's parallelism without knowing its future. A-Greedy completes a job in near-optimal time while guaranteeing low waste. Secondly, when A-Greedy is integrated with OS allocator RAD, the two-level scheduler GRAD achieves O(1)-competitiveness against an optimal offline scheduling algorithm with respect to both mean response time and makespan for batched jobs and nonbatched jobs, respectively. GRAD is the first nonclairvoyant scheduling algorithm to offer such performance guarantees. The talk also addresses the design considerations of developing efficient adaptive scheduling algorithms, and discusses the performance improvements with a semi-clairvoyant scheduler that possesses certain information on jobs' parallelism.




Other Videos By Microsoft Research


2016-09-07Conjunctive Grammars and Synchronized Alternating Pushdown Automata
2016-09-07Borrowing Brilliance: The Six Steps to Business Innovation by Building on the Ideas of Others
2016-09-07Automated reasoning in non-classical logics with the polarized inverse method
2016-09-07Where computer vision needs help from computer science
2016-09-07Parallel Programming with Chorus
2016-09-07Seeing Software
2016-09-07Efficient and Effective File Replication and Consistency Maintenance in P2P Systems
2016-09-07Where to Go: Interpreting Natural Directions Using Global Inference
2016-09-07Algorithms Meet Art, Puzzles, and Magic
2016-09-07Free: The Future of a Radical Price
2016-09-07Provably-Efficient Adaptive Scheduling with Parallelism Feedback
2016-09-07Personal Health Information among Competing Public Goods
2016-09-07Model-Checking Modulo Theories: Declarative Framework and Pragmatic Issues
2016-09-07Theory Tea Meeting Talk: On Local Dynamics for Two Equilibrium Concepts
2016-09-07Finding Loop Invariants Using a Theorem Prover
2016-09-07Bandwidth Allocation in TCP Friendliness and P2P Streaming
2016-09-07Improving the Development of Interactive Software Through New Language Features and Patterns
2016-09-07Better Multiple Intents Re-ranking
2016-09-07Verifying the Interplay of Authorization Policies and Workflow in Service-Oriented Architectures
2016-09-07Twig: A Simple, AI-friendly, Character World for Believable Agents
2016-09-07Speech signals separation with microphone array



Tags:
microsoft research