72130310 임규찬. 1. Abstract 2. Introduction 3. Design Goals 4. Sample-Based Scheduling for Parallel Jobs 5. Implements.

Slides:



Advertisements
Similar presentations
Effective Straggler Mitigation: Attack of the Clones Ganesh Ananthanarayanan, Ali Ghodsi, Srikanth Kandula, Scott Shenker, Ion Stoica.
Advertisements

CPU Scheduling Tanenbaum Ch 2.4 Silberchatz and Galvin Ch 5.
Winter 2004 UCSC CMPE252B1 CMPE 257: Wireless and Mobile Networking SET 3f: Medium Access Control Protocols.
SLA-Oriented Resource Provisioning for Cloud Computing
CPU Scheduling CPU Scheduler Performance metrics for CPU scheduling
Introduction CSCI 444/544 Operating Systems Fall 2008.
Distributed Process Scheduling Summery Distributed Process Scheduling Summery BY:-Yonatan Negash.
Scalable Content-aware Request Distribution in Cluster-based Network Servers Jianbin Wei 10/4/2001.
Quincy: Fair Scheduling for Distributed Computing Clusters Microsoft Research Silicon Valley SOSP’09 Presented at the Big Data Reading Group by Babu Pillai.
Why static is bad! Hadoop Pregel MPI Shared cluster Today: static partitioningWant dynamic sharing.
GridFlow: Workflow Management for Grid Computing Kavita Shinde.
Chapter 3 Operating Systems. Chapter 3 Operating Systems 3.1 The Evolution of Operating Systems 3.1 The Evolution of Operating Systems 3.2 Operating System.
User Level Interprocess Communication for Shared Memory Multiprocessor by Bershad, B.N. Anderson, A.E., Lazowska, E.D., and Levy, H.M.
Improving Robustness in Distributed Systems Jeremy Russell Software Engineering Honours Project.
Informationsteknologi Tuesday, October 9, 2007Computer Systems/Operating Systems - Class 141 Today’s class Scheduling.
Cluster Scheduler Reference: Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center NSDI’2011 Multi-agent Cluster Scheduling for Scalability.
Distributed Low-Latency Scheduling
CS3530 OPERATING SYSTEMS Summer 2014 Processor Scheduling Chapter 5.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
Application-Layer Anycasting By Samarat Bhattacharjee et al. Presented by Matt Miller September 30, 2002.
 Introduction to Operating System Introduction to Operating System  Types Of An Operating System Types Of An Operating System  Single User Single User.
Heterogeneity and Dynamicity of Clouds at Scale: Google Trace Analysis [1] 4/24/2014 Presented by: Rakesh Kumar [1 ]
1 Scheduling Processes. 2 Processes Each process has state, that includes its text and data, procedure call stack, etc. This state resides in memory.
Architectural Support for Fine-Grained Parallelism on Multi-core Architectures Sanjeev Kumar, Corporate Technology Group, Intel Corporation Christopher.
Jockey Guaranteed Job Latency in Data Parallel Clusters Andrew Ferguson, Peter Bodik, Srikanth Kandula, Eric Boutin, and Rodrigo Fonseca.
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
Chapter 3 System Performance and Models. 2 Systems and Models The concept of modeling in the study of the dynamic behavior of simple system is be able.
Mesos A Platform for Fine-Grained Resource Sharing in the Data Center Benjamin Hindman, Andy Konwinski, Matei Zaharia, Ali Ghodsi, Anthony Joseph, Randy.
Link Scheduling & Queuing COS 461: Computer Networks
1 Multiprocessor and Real-Time Scheduling Chapter 10 Real-Time scheduling will be covered in SYSC3303.
1 Distributed Energy-Efficient Scheduling for Data-Intensive Applications with Deadline Constraints on Data Grids Cong Liu and Xiao Qin Auburn University.
Using Map-reduce to Support MPMD Peng
Sparrow Distributed Low-Latency Spark Scheduling Kay Ousterhout, Patrick Wendell, Matei Zaharia, Ion Stoica.
Chapter 3 System Performance and Models Introduction A system is the part of the real world under study. Composed of a set of entities interacting.
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Chapter 4 CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Architecture for Resource Allocation Services Supporting Interactive Remote Desktop Sessions in Utility Grids Vanish Talwar, HP Labs Bikash Agarwalla,
Lecture 4 Page 1 CS 111 Summer 2013 Scheduling CS 111 Operating Systems Peter Reiher.
Lecture 4 CPU scheduling. Basic Concepts Single Process  one process at a time Maximum CPU utilization obtained with multiprogramming CPU idle :waiting.
CPU scheduling.  Single Process  one process at a time  Maximum CPU utilization obtained with multiprogramming  CPU idle :waiting time is wasted 2.
The Tail at Scale Dean and Barroso, CACM Feb 2013 Presenter: Chien-Ying Chen (cchen140) CS538 - Advanced Computer Networks 1.
CPU Scheduling Andy Wang Operating Systems COP 4610 / CGS 5765.
Optimizing Distributed Actor Systems for Dynamic Interactive Services
OPERATING SYSTEMS CS 3502 Fall 2017
OPERATING SYSTEMS CS 3502 Fall 2017
Dynamic Graph Partitioning Algorithm
Chapter 8 – Processor Scheduling
PA an Coordinated Memory Caching for Parallel Jobs
EECS 582 Final Review Mosharaf Chowdhury EECS 582 – F16.
Omega: flexible, scalable schedulers for large compute clusters
CPU Scheduling G.Anuradha
Module 5: CPU Scheduling
Andy Wang Operating Systems COP 4610 / CGS 5765
Lecture 21: Introduction to Process Scheduling
Chapter 2: The Linux System Part 3
CSCI1600: Embedded and Real Time Software
Operating systems Process scheduling.
CPU SCHEDULING.
Resource-Efficient and QoS-Aware Cluster Management
CSCI1600: Embedded and Real Time Software
Presented by: SHILPI AGARWAL
Lecture 21: Introduction to Process Scheduling
Cloud Computing Large-scale Resource Management
Hawk: Hybrid Datacenter Scheduling
Job-aware Scheduling in Eagle: Divide and Stick to Your Probes
Uniprocessor scheduling
Module 5: CPU Scheduling
Module 5: CPU Scheduling
Presentation transcript:

임규찬

1. Abstract 2. Introduction 3. Design Goals 4. Sample-Based Scheduling for Parallel Jobs 5. Implements

 Large-scale data analytics frameworks are shifting ◦ Shorter task durations ◦ Larger degrees of parallelism to provide low latency  Paper demonstrate that a decentralized, ran- domized sampling approach ◦ Provides near-optimal performance avoid throughput ◦ Availability limitations of a centralized design  Sparrow, on a 110-machine cluster demonstrate performs within 12% of ideal scheduler

 Today’s data analytics clusters are running ever shorter and higher-fanout jobs  Expect this trend will enable powerful new application

 Jobs composed of short, sub-second tasks present difficult scheduling challenge ◦ Frameworks targeting low latency ◦ Long-running batch jobs into a large number of tasks, a technique that improves fairness and mitigates stragglers ◦ These requirements differ from traditional workloads

 Explores opposite extreme in the design space ◦ Propose scheduling from a set of machines that operate autonomously and without centralized or logically centralized state  Decentralized design offers attractive scaling and availability properties ◦ System can support more requests by adding schedulers

 Sparrow? ◦ Stateless distributed scheduler that adapts the power of two choices technique ◦ Proposes scheduling each task by probing two random servers and placing the task on the server with fewer queued task ◦ Have three techniques to make the power of two choices effective in a cluster running parallel jobs.  Batch sampling  Late binding  Policies and constraints

 ‘power of two choices’ perform poorly for parallel jobs ◦ Job response time is sensitive to tail task wait time  Batch sampling solve this problem ◦ Applying the recently developed multiple choices approach to the domain of parallel job scheduling ◦ Batch sampling places the m tasks in a job on the least loaded of d *m randomly selected worker

 ‘power of two choices’ suffers from two remaining performance problems ◦ Server queue length is poor indicator wait time ◦ Multiple schedulers sampling in parallel may experience race conditions  Late binding avoids these problems ◦ Delaying assignment of tasks to worker machines until workers are ready to run the task, and reduce median job response time by as much as 45%

 Sparrow uses multiple queues on worker ◦ To enforce global policies ◦ Supports the per-job and per-task placement constraints needed by analytics frameworks.  Neither policy enforcement nor constraint handling are addressed is simpler theoretical models, but both play an important role in real clusters

 This paper focuses on fine-grained task scheduling for low-latency applications  Sparrow need only send a short task descriptions ◦ Sparrow assumes that long-running executor process is already running on each worker for each framework.  Sparrow makes approximations ◦ When scheduling and trades off many of the complex features supported by sophisticated, centralized schedulers in order to provide higher scheduling throughput and lower latency.

 Sparrow does not allow certain types of placement constraints ◦ Does not perform bin packing ◦ Does not support gang scheduling  Sparrow supports a small set of features ◦ Can be easily scaled ◦ Minimizes latency ◦ Keeps the design of the system simple

 Traditional task scheduler maintains a complete view of which tasks are running on which worker machine ◦ uses this view to assign incoming tasks to available works  Sparrow takes a radically different approach ◦ Schedulers operate in parallel ◦ Schedulers do not maintain any state about cluster load

 Worker machines ◦ Composing cluster, Execute tasks  Schedulers ◦ Assign tasks to worker machines  Wait time ◦ Describe the time from when a task is submitted to scheduler until when the task begins executing  Service time ◦ Describe the time from when a task begins executing

 Job Response Time ◦ Describes the time from when the job is submitted to the scheduler until the last task finishes executing  Delay ◦ Describe the total delay within a job due to both scheduling and queueing

 The scheduler randomly selects two worker machines for each task and sends to lightweight RPC a probe to each.  Improves performance compared to random placement

 Improves on per-task sampling by sharing information across all of the probes for a particular job

 Sample-based techniques perform poorly at High load ◦ Schedulers place tasks based on the queue length ◦ Suffers from a race condition where multiple schedulers concurrently place tasks on a worker tha appears lightly loded.

 Solve the aforementioned problems ◦ Workers do not reply immediately to probes ◦ Instead place a reservation for the task at the end of an internal work queue

 Using simulation, Proactive cancellation deduces median response time by 6% at 95% Cluster load  Helps more when the ratio of network delay to task duration increases. ◦ Will become more important as task durations decrease

 Sparrow aims to support a small but useful set of policies within its decentralized framework  Two types of popular scheduler policies ◦ Handling placement constraints ◦ Resource allocation policies

 Handles two types of constraints ◦ Per-job/Per-task constraints  Per-job constraints are trivially handled at a Sparrow scheduler

 Sparrow supports two types of policies ◦ Strict priorities ◦ Weighted fair sharing  Many cluster sharing policies reduce to using strict priorities  Sparrow can also enforce weighted fair shares.

 Sparrow schedules from a distributed set of schedulers that are each responsible for assigning task to workers

 Schedulers expose a service that allows frameworks to submit job scheduling requests using Thrift remote procedure call.

 Sparrow provides automatic failover between schedulers