1 / 27

A Case for Performance-Centric Network Allocation

A Case for Performance-Centric Network Allocation. Gautam Kumar , Mosharaf Chowdhury , Sylvia Ratnasamy , Ion Stoica. UC Berkeley. UC Berkeley. UC Berkeley. UC Berkeley. Datacenter Applications. Data Parallelism. *. J.

ralph-fox
Télécharger la présentation

A Case for Performance-Centric Network Allocation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Case for Performance-Centric Network Allocation Gautam Kumar, MosharafChowdhury, Sylvia Ratnasamy, Ion Stoica UC Berkeley UC Berkeley UC Berkeley UC Berkeley

  2. Datacenter Applications

  3. Data Parallelism * J • Applications execute in several computation stages and require transfer of data between these stages (communication). • Computation in a stage is split across multiple nodes. • Network has an important role to play, 33% of the running time in Facebook traces. (Orchestra, SIGCOMM 2011) J R M R R R M M M M Map R Reduce J Join (*RoPE, NSDI 2012)

  4. Data Parallelism • Users, often, do not know what network support they require. • Final execution graph created by the framework. • Frameworks know more, provide certain communication primitives. • e.g., Shuffle, Broadcast etc.

  5. Scope Private clusters running data parallel applications. Little concern for adversarial behavior. Application level inefficiencies dealt extrinsically.

  6. Current Proposals

  7. Explicit Accounting • Virtual cluster based network reservations. (Oktopus, SIGCOMM 2011) • Time-varying network reservations. (SIGCOMM 2012) DRAWBACK: Exact network requirements often not known; non work-conserving.

  8. Fairness-Centric • Flow level fairness or Per-Flow. (TCP) • Fairness with respect to the sources. (Seawall, NSDI 2012) • Proportionality in terms of total number of VMs. (FairCloud, SIGCOMM 2012) DRAWBACK: Gives little guidance to developers about the performance they can expect while scaling their applications.

  9. In this work . . . • A new perspective to share the network amongst data-parallel applications – performance-centric allocations: • enabling users to reason about the performance of their applications when they scale them up. • enabling applications to effectively parallelize to preserve the intuitive mapping between scale-up and speed-up. • Contrast / relate performance-centric proposals with fairness-centric proposals.

  10. Performance-Centric Allocations

  11. Types of Transfers* Shuffle Broadcast λ/2 λ λ λ λ λ/2 (*Orchestra, SIGCOMM 2011)

  12. Scaling up the application Shuffle Broadcast 2λ 2λ 2λ 2λ 2X Scale UP 2X Scale UP λ/2 λ Total Data = 2λ Total Data = 4λ λ λ λ λ/2 λ/2 λ λ λ λ λ/2

  13. Performance-Centric Allocations • Understand the support that the application needs from the network to effectively parallelize. • At a sweet spot – framework knows application’s network requirements.

  14. Shuffle-only clusters 2λ λ λ 2λ Am Ar tAm tAs tAr λ/2 Bm Br λ/2 λ/2 Bm Br λ/2 tBm tBs tBr

  15. Shuffle-only Clusters 2λ 2λ λ λ λ λ Per-Flow Proportional α α 2λ 2λ Am Ar Am Ar tAm tAs= 2λ/α tAm tAs= 2λ/α tAr tAr α α/2 λ/2 λ/2 Bm Br Bm Br λ/2 λ/2 λ/2 λ/2 Bm Br Bm Br λ/2 λ/2 tAm/2 tAm/2 tBs= λ/2α = tAs/4 tAr/2 tBs= λ/α = tAs/2 tAr/2 tB<tA/2 tB=tA/2

  16. Broadcast-only Clusters 2λ λ λ 2λ Am Ar tAm tAs tAr λ Bm Br λ λ Bm Br λ tBm tBs tBr

  17. Broadcast-only Clusters 2λ 2λ λ λ λ λ Proportional Per-Flow α α 2λ 2λ Am Ar Am Ar tAm tAs= 2λ/α tAm tAs= 2λ/α tAr tAr α α/2 λ λ Bm Br Bm Br λ λ λ λ Bm Br Bm Br λ λ tAm/2 tBs= λ/α = tAs/2 tAr/2 tAm/2 tBs= 2λ/α = tAs tAr/2 tB=tA/2 tB>tA/2

  18. Recap • TCP in shuffle gives more than requisite speed-up and thus hurts performance of small jobs. Proportionality achieves the right balance. • Proportionality in broadcast limits parallelism. TCP achieves the right balance. Speed Up TCP (Shuffle) Prop. (Shuffle)TCP. (Broadcast) Prop. (Broadcast) Degree of Parallelism

  19. Complexity of a transfer • xN-transfer if xis the factor by which the amount of data transferred increases when a scale up of N is done, x [1, N]. • Shuffle is a 1N -transfer and broadcast is an NN-transfer. • Performance-centric allocations encompass x.

  20. Heterogeneous Frameworks and Congested Resources

  21. 2G 2G 1G 1G 1G 1G 2G Am 500Mbps 2Gb to send Ar 2G 500Mbps 2Gb to send Bm Br • Share given based on the complexity of the transfer. • The job completion time of both jobs degrades uniformly in the event of contention. Both finish in 4s 2X Scale UP 0.5G A’m ~333Mbps 2Gb to send A’r 0.5G 0.5G A’m A’r 0.5G 1G B’m ~666Mbps 4Gb to send B’r 1G 1G B’m B’r 1G Both finish in 6s

  22. Network Parallelism • Isolation between the speed-up due to the scale-up for the application and the performance degradation due to finite resources. y y’ (α) X N y’: new running time after a scale-up of N y : old running time α : degradation due to limited resources

  23. Summary

  24. Understand performance-centric allocations and their relationship with fairness-centric proposals. • Proportionality is the performance-centric approach for shuffle-only clusters. • Breaks down for broadcasts, per-flow is the performance-centric approach for broadcast-only clusters. • An attempt to a performance-centric proposal for heterogeneous transfers. • Understand what happens when resources get congested.

  25. Future Work

  26. A more rigorous formulation. • Some questions to be answered: different N1 and N2on both sides of the stage etc. • Analytical and experimental evaluation of the policies. • Whether redistribution of completion time or total savings.

  27. Thank you

More Related