Delegation Sketch : a Parallel Design with Support for Fast and - - PowerPoint PPT Presentation

delegation sketch a parallel design with support for fast
SMART_READER_LITE
LIVE PREVIEW

Delegation Sketch : a Parallel Design with Support for Fast and - - PowerPoint PPT Presentation

EuroSys 2020 Delegation Sketch : a Parallel Design with Support for Fast and Accurate Concurrent Operations Charalampos Stylianopoulos, Ivan Walulya, Magnus Almgren, Olaf Landsiedel and Marina Papatriantafilou Chalmers University of Technology,


slide-1
SLIDE 1

Delegation Sketch: a Parallel Design with Support for Fast and Accurate Concurrent Operations

Charalampos Stylianopoulos, Ivan Walulya, Magnus Almgren, Olaf Landsiedel and Marina Papatriantafilou

Distributed Computing and Systems

Chalmers University of Technology, Sweden

EuroSys 2020

slide-2
SLIDE 2

Motivation

Example:

At any point in time, report how many packets from a given IP have been seen

¢ Exact answer space proportional to number

  • f unique IPs

¢ Approximate answer constant space l Enough to summarize the input stream l Sketches are established tools for that

2

slide-3
SLIDE 3

Challenges

¢ We focus on how to parallelize sketches ¢ Parallelization is necessary:

l High-speed networks

Mops/sec on the sketch

l Many-core platforms underutilized in sketches

¢ 4-way tradeoff:

l Applications require

fast insertions and queries

  • E.g. intrusion detection, traffic scheduling

l Most parallel approaches focus on one of the two

(with the exception of recent work[1])

Insertion Rate Query Rate Memory consumption Accuracy

3

“Fast concurrent data sketches”, A. Ringerg, et al., PPoPP’ 20

slide-4
SLIDE 4

Our Work

Delegation Sketch: A parallelization design for sketches Contributions:

l Concurrent Insertions and queries, at high rates l Maintains high accuracy and low memory consumption l Scales better than state-of-the art on hundreds of cores

4

slide-5
SLIDE 5

¢ Every key in the input domain is assigned an “owner” sketch and inserted

there

¢ Queries are fast and accurate: l every key is in a specific sketch

Delegation Sketch: Domain splitting

Thread 1

Key 1 Key 2 Key 3 Key 2 Key 1 Key 1 Key 1 Key 3 Key 3

. . . . . . . . . . . .

Thread 2 Thread 3

5

Evaluation Delegation Sketch Background

slide-6
SLIDE 6

¢ Threads aggregate multiple keys into filters locally, without communication ¢ Filters are the units of synchronization ¢ Full filters are delegated to the “owner” sketch

Thread 1 Thread 2

Filter for Thread 1 and sketch X Filter for Thread 2 and sketch X sketch X List of full filters

  • Multiple producers
  • Single consumer (thread X)

Thread X

Delegation Sketch: Delegation and Combining

6

Evaluation Delegation Sketch Background

Filters Allow:

¢ Disjoint access parallelism ¢ Coarse-grained

communication

slide-7
SLIDE 7

Evaluation Results

Parameters: # threads & query rate

0.2% queries 0.1% queries 0.3% queries

Delegation Sketch:

¢ 2-4X higher relative speedup at higher query rates ¢ Better scaling at higher query rates 7

Evaluation Delegation Sketch Background

slide-8
SLIDE 8

Accuracy

Delegation sketch:

¢ As accurate as the most accurate baseline

(single-shared)

Error for each key (lower is better) All keys in the stream

Evaluation Results

8

Evaluation Delegation Sketch Background

slide-9
SLIDE 9

Delegation Sketch

¢ A parallelization scheme for high-rate traffic summarization ¢ Supports both insertions and queries ¢ Up to 2-4X higher throughput than next fastest baseline ¢ As accurate as the most accurate baseline

9

slide-10
SLIDE 10

Backup slides

10

slide-11
SLIDE 11

Evaluation Results

Parameter: input skew

0.0% queries 0.1% queries

Delegation Sketch:

¢ High throughput at medium-high skew, due to filters

*Note: different y-axis range

*

11

Evaluation Delegation Sketch Background

slide-12
SLIDE 12

Evaluation Results

Query Latency

12

Evaluation Delegation Sketch Background

slide-13
SLIDE 13

Accuracy

𝑔 𝑗 ≤ $ 𝑔 𝑗 ≤ 𝑔 𝑗 + 𝜗𝑂′ with probability 1 − 𝜀

13

Evaluation Delegation Sketch Background

Accuracy bounds for Delegation Sketch:

𝑔 𝑗 : the true frequency of key i # 𝑔 𝑗 : the reported estimate for key i 𝜗 = e/w (w = number of buckets) 𝑂! = number of keys that hash to the same sketch 𝜀 = 𝑓"#, d = number of rows

slide-14
SLIDE 14

Accuracy

14

Evaluation Delegation Sketch Background