Dominant Resource Fairness: Fair Allocation of Multiple Resource Types Ali Ghodsi, Matei Zaharia, Benjamin Hindman, Andy Konwinski, Scott Shenker, Ion.

Slides:



Advertisements
Similar presentations
The Datacenter Needs an Operating System Matei Zaharia, Benjamin Hindman, Andy Konwinski, Ali Ghodsi, Anthony Joseph, Randy Katz, Scott Shenker, Ion Stoica.
Advertisements

Replication Strategies in Unstructured Peer-to-Peer Networks Edith Cohen Scott Shenker This is a modified version of the original presentation by the authors.
Sharing Cloud Networks Lucian Popa, Gautam Kumar, Mosharaf Chowdhury Arvind Krishnamurthy, Sylvia Ratnasamy, Ion Stoica UC Berkeley.
Locality-Aware Dynamic VM Reconfiguration on MapReduce Clouds Jongse Park, Daewoo Lee, Bokyeong Kim, Jaehyuk Huh, Seungryoul Maeng.
Beyond Dominant Resource Fairness David Parkes (Harvard) Ariel Procaccia (CMU) Nisarg Shah (CMU)
UC Berkeley Job Scheduling for MapReduce Matei Zaharia, Dhruba Borthakur *, Joydeep Sen Sarma *, Scott Shenker, Ion Stoica 1 RAD Lab, * Facebook Inc.
No Agent Left Behind: Dynamic Fair Division of Multiple Resources Ian Kash 1 Ariel Procaccia 2 Nisarg Shah 2 (Speaker) 1 MSR Cambridge 2 Carnegie Mellon.
THE DATACENTER NEEDS AN OPERATING SYSTEM MATEI ZAHARIA, BENJAMIN HINDMAN, ANDY KONWINSKI, ALI GHODSI, ANTHONY JOSEPH, RANDY KATZ, SCOTT SHENKER, ION STOICA.
Disk-Locality in Datacenter Computing Considered Irrelevant Ganesh Ananthanarayanan, Ali Ghodsi, Scott Shenker, Ion Stoica 1.
FairCloud: Sharing the Network in Cloud Computing Computer Communication Review(2012) Arthur : Lucian Popa Arvind Krishnamurthy Sylvia Ratnasamy Ion Stoica.
Reciprocal Resource Fairness: Towards Cooperative Multiple-Resource Fair Sharing in IaaS Clouds School of Computer Engineering Nanyang Technological University,
Why static is bad! Hadoop Pregel MPI Shared cluster Today: static partitioningWant dynamic sharing.
A Game Theoretic Approach to Provide Incentive and Service Differentiation in P2P Networks John C.S. Lui The Chinese University of Hong Kong Joint work.
UC Berkeley Improving MapReduce Performance in Heterogeneous Environments Matei Zaharia, Andy Konwinski, Anthony Joseph, Randy Katz, Ion Stoica University.
Mesos A Platform for Fine-Grained Resource Sharing in Data Centers Benjamin Hindman, Andy Konwinski, Matei Zaharia, Ali Ghodsi, Anthony D. Joseph, Randy.
Matei Zaharia, Dhruba Borthakur *, Joydeep Sen Sarma *, Khaled Elmeleegy +, Scott Shenker, Ion Stoica UC Berkeley, * Facebook Inc, + Yahoo! Research Delay.
Mesos A Platform for Fine-Grained Resource Sharing in the Data Center Benjamin Hindman, Andy Konwinski, Matei Zaharia, Ali Ghodsi, Anthony Joseph, Randy.
Locality-Aware Request Distribution in Cluster-based Network Servers 1. Introduction and Motivation --- Why have this idea? 2. Strategies --- How to implement?
Mesos A Platform for Fine-Grained Resource Sharing in the Data Center Benjamin Hindman, Andy Konwinski, Matei Zaharia, Ali Ghodsi, Anthony Joseph, Randy.
A Game Theoretic Approach to Provide Incentive and Service Differentiation in P2P Networks Richard Ma, Sam Lee, John Lui (CUHK) David Yau (Purdue)
UC Berkeley Improving MapReduce Performance in Heterogeneous Environments Matei Zaharia, Andy Konwinski, Anthony Joseph, Randy Katz, Ion Stoica University.
UC Berkeley Improving MapReduce Performance in Heterogeneous Environments Matei Zaharia, Andy Konwinski, Anthony Joseph, Randy Katz, Ion Stoica University.
Distributed Low-Latency Scheduling
DRFQ: Multi-Resource Fair Queueing for Packet Processing Ali Ghodsi 1,3, Vyas Sekar 2, Matei Zaharia 1, Ion Stoica 1 1 UC Berkeley, 2 Intel ISTC/Stony.
A Platform for Fine-Grained Resource Sharing in the Data Center
1 CS : Project Suggestions Ion Stoica ( September 14, 2011.
Network Sharing Issues Lecture 15 Aditya Akella. Is this the biggest problem in cloud resource allocation? Why? Why not? How does the problem differ wrt.
A Dynamic MapReduce Scheduler for Heterogeneous Workloads Chao Tian, Haojie Zhou, Yongqiang He,Li Zha 簡報人:碩資工一甲 董耀文.
DRFQ: Multi-Resource Fair Queueing for Packet Processing Ali Ghodsi 1,3, Vyas Sekar 2, Matei Zaharia 1, Ion Stoica 1 1 UC Berkeley, 2 Intel ISTC/Stony.
E VALUATION OF F AIRNESS IN ICN X. De Foy, JC. Zuniga, B. Balazinski InterDigital
Mesos A Platform for Fine-Grained Resource Sharing in the Data Center Benjamin Hindman, Andy Konwinski, Matei Zaharia, Ali Ghodsi, Anthony Joseph, Randy.
Dominant Resource Fairness: Fair Allocation of Multiple Resource Types Ali Ghodsi, Matei Zaharia, Benjamin Hindman, Andy Konwinski, Scott Shenker, Ion.
IM&T Vacation Program Benjamin Meyer Virtualisation and Hyper-Threading in Scientific Computing.
1 Scheduling The part of the OS that makes the choice of which process to run next is called the scheduler and the algorithm it uses is called the scheduling.
August 16, 2010 MPREF’10 Dynamic House Allocation Sujit Gujar 1, James Zou 2 and David C. Parkes 2 5 th Multidisciplinary Workshop on Advances in Preference.
CS Advanced Operating Systems Structures and Implementation Lecture 12 Dominant Resource Fairness Two-Level Scheduling March 11 th, 2013 Prof. John.
Competitive Queue Policies for Differentiated Services Seminar in Packet Networks1 Competitive Queue Policies for Differentiated Services William.
EECS 262a Advanced Topics in Computer Systems Lecture 13 Resource allocation: Lithe/DRF October 16 th, 2012 John Kubiatowicz and Anthony D. Joseph Electrical.
Towards Economic Fairness for Big Data Processing in Pay-as-you-go Cloud Computing Nanyang Technological University Shanjiang Tang, Bu-Sung Lee, Bingsheng.
MROrder: Flexible Job Ordering Optimization for Online MapReduce Workloads School of Computer Engineering Nanyang Technological University 30 th Aug 2013.
Shanjiang Tang, Bu-Sung Lee, Bingsheng He, Haikun Liu School of Computer Engineering Nanyang Technological University Long-Term Resource Fairness Towards.
Dynamic Slot Allocation Technique for MapReduce Clusters School of Computer Engineering Nanyang Technological University 25 th Sept 2013 Shanjiang Tang,
DynamicMR: A Dynamic Slot Allocation Optimization Framework for MapReduce Clusters Nanyang Technological University Shanjiang Tang, Bu-Sung Lee, Bingsheng.
Multi-Resource Packing for Cluster Schedulers Robert Grandl Aditya Akella Srikanth Kandula Ganesh Ananthanarayanan Sriram Rao.
A Platform for Fine-Grained Resource Sharing in the Data Center
John Kubiatowicz and Anthony D. Joseph
Slides by Yong Liu1, Deep Medhi2, and Michał Pióro3
Capacity Planning in a Virtual Environment Chris Chesley, Sr. Systems Engineer
Presented by Qifan Pu With many slides from Ali’s NSDI talk Ali Ghodsi, Matei Zaharia, Benjamin Hindman, Andy Konwinski, Scott Shenker, Ion Stoica.
PACMan: Coordinated Memory Caching for Parallel Jobs Ganesh Ananthanarayanan, Ali Ghodsi, Andrew Wang, Dhruba Borthakur, Srikanth Kandula, Scott Shenker,
Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center NSDI 11’ Benjamin Hindman, Andy Konwinski, Matei Zaharia, Ali Ghodsi, Anthony D.
Resilient Distributed Datasets A Fault-Tolerant Abstraction for In-Memory Cluster Computing Matei Zaharia, Mosharaf Chowdhury, Tathagata Das, Ankur Dave,
COS 518: Advanced Computer Systems Lecture 13 Michael Freedman
Hierarchical Scheduling for Diverse Datacenter Workloads
COS 418: Distributed Systems Lecture 23 Michael Freedman
Tao Zhu1,2, Chengchun Shu1, Haiyan Yu1
Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center
MESOS.
Lottery Scheduling and Dominant Resource Fairness (Lecture 24, cs262a)
CS 425 / ECE 428 Distributed Systems Fall 2016 Nov 10, 2016
EECS 262a Advanced Topics in Computer Systems Lecture 13 Resource allocation: Lithe/DRF March 7th, 2016 John Kubiatowicz Electrical Engineering and Computer.
CS 425 / ECE 428 Distributed Systems Fall 2017 Nov 16, 2017
PA an Coordinated Memory Caching for Parallel Jobs
EECS 582 Final Review Mosharaf Chowdhury EECS 582 – F16.
Andy Wang Operating Systems COP 4610 / CGS 5765
COS 518: Advanced Computer Systems Lecture 14 Michael Freedman
Shanjiang Tang1, Bingsheng He2, Shuhao Zhang2,4, Zhaojie Niu3
Cloud Computing Large-scale Resource Management
Cloud Computing MapReduce in Heterogeneous Environments
Richard Ma, Sam Lee, John Lui (CUHK) David Yau (Purdue)
Presentation transcript:

Dominant Resource Fairness: Fair Allocation of Multiple Resource Types Ali Ghodsi, Matei Zaharia, Benjamin Hindman, Andy Konwinski, Scott Shenker, Ion Stoica University of California, Berkley EECS 582 – W161

Outlines Introduction Motivation Dominant Resource Fairness (DRF) Experiment result Conclusion EECS 582 – W162

What is fair sharing? n users want to share a resource (e.g. CPU) - Solution: Allocate each 1/n of the shared resource Generalized by max-min fairness - Handles if a user wants less than its fair share - E.g. user 1 wants no more than 20% Generalized by weighted max-min fairness - Give weights to users according to importance - User 1 gets weight 1, user 2 weight 2 EECS 582 – W163

Properties of max-min fairness Share incentive – Each user can get at least 1/n of the resource – But will get less if her demand is less Strategy‐proof – Users are not better off by asking for more than they need – Users have no reason to lie EECS 582 – W164

Why use max-min fairness? Desirable properties of max‐min fairness – Isolation policy: A user gets her fair share irrespective of the demands of other users – Flexibility separates mechanism from policy: Proportional sharing, priority, reservation,... Many schedulers use max‐min fairness – Datacenters: Hadoop’s fair sched, capacity, Quincy – OS: rr, prop sharing, lottery, linux cfs,... – Networking: wfq, wf2q, sfq, drr, csfq,... EECS 582 – W165

Outlines Introduction Motivation Dominant Resource Fairness (DRF) Experiment result Conclusion EECS 582 – W166

Why is max-min fairness not enough? Job scheduling in datacenters is not only about CPUs – Jobs consume CPU, memory, disk, and I/O EECS 582 – W167

Heterogeneous Resource Demands EECS 582 – W ‐node Hadoop Cluster at Facebook (Oct 2010) Most task need ~ Some tasks are CPU‐intensive Some tasks are memory‐intensive

Heterogeneous Resource Demands EECS 582 – W169

Motivation Figure 1 shows that though the majority of tasks are CPU-heavy, there exist tasks that are memory heavy as well, especially for reduce operations. Figure 2 shows that most of the tasks either underutilize or overutilize some of their slot resources. EECS 582 – W1610

Important Allocation Properties 1. Sharing incentive: Each user should be better off sharing the cluster, than exclusively using her own partition of the cluster. Every user should get 1/n of at least one resource. 2. Strategy-proofness: Users should not be able to benefit by lying about their resource demands. This provides incentive compatibility, as a user cannot improve her allocation by lying. EECS 582 – W1611

Important Allocation Properties 3. Envy-freeness: A user should not prefer the allocation of another user. 4. Pareto efficiency: It should not be possible to increase the allocation of a user without decreasing the allocation of at least another user. EECS 582 – W1612

Some other nice-to-have properties Single resource fairness: For a single resource, the solution should reduce to max-min fairness. Bottleneck fairness: If there is one resource that is percent-wise demanded most of by every user, then the solution should reduce to max-min fairness for that resource. EECS 582 – W1613

Some other nice-to-have properties Population monotonicity: When a user leaves the system and relinquishes her resources, none of the allocations of the remaining users should decrease. Resource monotonicity: If more resources are added to the system, none of the allocations of the existing users should decrease. EECS 582 – W1614

Problem Definition How to fairly share multiple resources when users have heterogeneous demand on them? EECS 582 – W1615

An Example of Multiple Resource Sharing ---Example Total Resource: User A wants per tasks User B wants per tasks EECS 582 – W1616

A Natural Approach – Asset Fairness Asset Fairness Aims to equalize the aggregate resources allocated to each user Total resources CPU ~ 2$ 1GB ~ 1$ User 1 wants ~ 6$/tasks User 2 wants ~ 7$/tasks Solution Find max(x,y) such that 6x = 7y x=2.52, y= gets 2 gets EECS 582 – W1617

A Natural Approach – Asset Fairness Drawback of Asset Fairness Violates the sharing incentive property Counter Example Total resources User 1 wants User 2 wants Solution: User 1 gets ~24/60 User 2 gets ~24/60 User A gets less than half of both resources! EECS 582 – W1618

Dominant Resource Fairness - DRF Allocation policy for multiple resource Meets all four of the required policy: Sharing incentive Strategy-proofness Envy-freeness Pareto efficiency EECS 582 – W1619

Dominant Resource Fairness - DRF Dominant Resource: The resource that a user has the biggest share of Example: Total resources: User 1’s allocation: Dominant resource is memory for 3/9>4/18 Dominant Share: The fraction of the dominant share a user is allocated User 1’s dominant share is 33% (1/3) EECS 582 – W1620

Dominant Resource Fairness - DRF Apply max-min fairness to dominant shares Equalize the dominant share of the users Solution to the example Total User 1 User 2 max(x,y) (Maximize allocations) such that 2/9x = 3/9y (equalize dominant shares) Solution: User 1, User 2 EECS 582 – W1621

Online DRF Scheduler Whenever there are available resources and tasks to run: Schedule a task to the user with smallest dominant share EECS 582 – W1622

DRF pseudo-code EECS 582 – W1623

Alternative Fair Allocation Policy: CEEI Economist’s way to fairly divide resources Competitive Equilibrium from Equal Incomes: Give each user 1/n of every resource initially let them trades their resources with other users in a perfectly competitive market Solution given by Nash barging solution EECS 582 – W1624

Alternative Fair Allocation Policy: CEEI Market Clearance Drawback : Violate strategy proofness User can cheat by claiming more than he needs to have more tasks allocated EECS 582 – W1625

Comparison Between Three Allocation EECS 582 – W1626

Comparison Between Three Allocation DRF is the only one satisfying four required properties Resource monotonicity is not possible to achieve when other properties are achieved EECS 582 – W1627

Experiment Result Experiment: DRF vs. Alternative Allocation Policies 48 node Mesos cluster on EC2 instances with 8CPU cores and 7GB RAM each (1GB for OS). Two users: User 1 User 2 Compared with: Slot-based fair scheduling (a common policy in current system, e.g. Hadoop Fair Scheduler) Max-min fair sharing for CPU resource only EECS 582 – W1628

Experiment Result EECS 582 – W1629

Experiment Result Experiment: Simulations using Facebook Traces Log traces from a 2000 node cluster at facebook (one week periord) Simulate the traces with 400 nodes Each node consists of 12 slots, 16 cores, 32 GB memory Compared with Hadoop’s fair scheduler(slot) EECS 582 – W1630

Experiment Result EECS 582 – W1631

Conclusion DRF provides provides multiple multiple ‐ resource resource fairness fairness in the presence of heterogeneous demand First generalization generalization of max ‐ min fairness fairness to multiple ‐ resources DRF satisfies all of the desired properties of fair allocation except for resource monotonicity DRF performs better than current approaches. EECS 582 – W1632

Acknowledgement Some of our slides are borrowed from their presentation in NSDI in 2011 EECS 582 – W1633