Scalability! But at what COST? Abhinav Garg CS 744 - Fall 2018 - - PowerPoint PPT Presentation

scalability but at what cost
SMART_READER_LITE
LIVE PREVIEW

Scalability! But at what COST? Abhinav Garg CS 744 - Fall 2018 - - PowerPoint PPT Presentation

Scalability! But at what COST? Abhinav Garg CS 744 - Fall 2018 Outline Motivation Goal COST Methodology Baseline Measurements Better Baselines Applying COST to prior work Take-aways Which system is better ?


slide-1
SLIDE 1

Scalability! But at what COST?

Abhinav Garg
 CS 744 - Fall 2018

slide-2
SLIDE 2

Outline

  • Motivation
  • Goal
  • COST
  • Methodology
  • Baseline Measurements
  • Better Baselines
  • Applying COST to prior work
  • Take-aways
slide-3
SLIDE 3

Which system is better ?

Scaling of System A and System B

slide-4
SLIDE 4

Which one would you use ?

Naiad computation before (System A) and after (System B) a performance optimization is applied

Scaling Performance

slide-5
SLIDE 5

Motivation

  • Scalability is considered most important

feature

  • Big data systems may scale well, often

because they introduce a lot of overhead

  • Are systems truly improving performance?
slide-6
SLIDE 6

Goal

  • A new performance metric for big data

platforms

  • Distinguish scalability from efficient use of

resources

  • Weight system’s scalability against overheads
  • Do not reward systems with substantial but

parallelizable overheads

slide-7
SLIDE 7

COST

  • Configuration that outperforms a single

thread

  • Hardware configuration required before

platform outperforms competent single threaded implementation

slide-8
SLIDE 8

Methodology

  • Take measurements from recent graph

processing publications

  • Compare against simple single-threaded

implementations running on a laptop

  • Write competent, but not overly fancy algorithms.
  • Evaluate Page Rank and Graph Connectivity on

twitter_rv and uk_2007_05 graphs (GraphX)

slide-9
SLIDE 9

Baseline Measurements

Elapsed time for 20 Page Rank iterations

slide-10
SLIDE 10

Baseline Measurements

Elapsed time for Graph Connectivity (using label propagation)

slide-11
SLIDE 11

Better Baselines

  • Improve graph layout
  • Hilbert Order instead of

Vertex Order

  • (good, good) locality

instead of (great, poor)

  • Reduces TLB misses

and page walks

slide-12
SLIDE 12

Better Baselines

  • Improve algorithms
  • Label propagation scales

due to algorithms sub-

  • ptimality
  • Label propagation does

more work than better algorithms

  • Use Union-Find

algorithm

slide-13
SLIDE 13

Better Baselines

Page Rank Graph Connectivity

179 sec to convert Does not ‘think like a vertex’, but parallelizable

slide-14
SLIDE 14

Applying COST to prior work

Scaling measurements for Page Rank on Twitter Graph

Time per warm iteration Time for 10 iterations from a cold start

1 2 3

slide-15
SLIDE 15

Applying COST to prior work

2 1

Two Naiad implementations of parallel union-find for graph connectivity

  • 1- Hash Table

based

  • 2- Array based
  • Makes trade-off

clearer

slide-16
SLIDE 16

Reasons to tolerate high COST

  • Integration with existing ecosystem
  • Target variety of problems
  • High availability, fault tolerance, or security
  • Technical expertise of the team

Think: Do you really need the high COST system?

slide-17
SLIDE 17

Take-aways

  • Understanding overheads is important
  • Most scalable systems might not be most

efficient

  • Consider alternative hardware and algorithms
  • Important to evaluate COST - to explain if

high COST is intrinsic, to highlight avoidable inefficiencies

slide-18
SLIDE 18

Questions ?

slide-19
SLIDE 19

References

  • Frank McSherry, Michael Isard, Derek Murray.

Scalability! But at what COST? HotOS, 2015

  • http://www.frankmcsherry.org/graph/scalability/cost/

2015/01/15/COST.html

  • https://www.youtube.com/watch?v=6bWBEJBMNG0