Concurrent Self-Adjusting Distributed Tree Networks Bruna Peres - - PowerPoint PPT Presentation

β–Ά
concurrent self adjusting distributed tree networks
SMART_READER_LITE
LIVE PREVIEW

Concurrent Self-Adjusting Distributed Tree Networks Bruna Peres - - PowerPoint PPT Presentation

Concurrent Self-Adjusting Distributed Tree Networks Bruna Peres Stefan Schmid Chen Avin Olga Goussevskaia Motivation New technologies allow communication networks to be increasingly flexible and reconfigurable Traditional networks


slide-1
SLIDE 1

Concurrent Self-Adjusting Distributed Tree Networks

Bruna Peres Stefan Schmid Chen Avin Olga Goussevskaia

slide-2
SLIDE 2
  • New technologies allow communication networks to be

increasingly flexible and reconfigurable

  • Traditional networks designs are still optimized toward

static metrics

Motivation

Concurrent Self-Adjusting Distributed Tree Networks 2 DISC 2017

slide-3
SLIDE 3

ProjecToR

Concurrent Self-Adjusting Distributed Tree Networks 3 DISC 2017

  • ProjecToR: Agile Reconfigurable Data Center Interconnect.

Ghobadi et al., SIGCOMM'16

slide-4
SLIDE 4
  • Self-adjusting networks ↔ self-adjusting data structures
  • Splay Trees
  • Self-Adjusting Data Structures

Concurrent Self-Adjusting Distributed Tree Networks 4 DISC 2017

request c x f t z v c h g r j n x f t z v c h g r j n x f t z v c h g r j n

slide-5
SLIDE 5

SplayNets

Concurrent Self-Adjusting Distributed Tree Networks 5

x f t z v c h g r j n x f t z v c h g r j n request h request h

  • S. Schmid, et al., SplayNet: Towards Locally Self-Adjusting Networks

IEEE/ACM Transactions on Networking, 2016.

DISC 2017

slide-6
SLIDE 6

SplayNets

Concurrent Self-Adjusting Distributed Tree Networks 6

  • Distributed tree network
  • Improves the communication cost between two nodes in a self-

adjusting manner

  • Nodes communicating more frequently become topologically

closer to each other over time

  • Lowest common ancestor LCA(u,v): locality is preserved

v u

root LCA (u,v)

DISC 2017

slide-7
SLIDE 7

Our Contributions

Concurrent Self-Adjusting Distributed Tree Networks 7

  • While

SplayNets are inherently intended to distributed applications, so far, only sequential algorithms are known to maintain SplayNets

  • We present DiSplayNets, the first distributed and concurrent

implementation of SplayNets

DISC 2017

slide-8
SLIDE 8
  • Network model:
  • Binary tree π‘ˆ comprised of a set of π‘œ communication nodes
  • Sequence of communication requests 𝜏 = (𝜏1, 𝜏2, … , πœπ‘›):
  • πœπ‘— = 𝑑, 𝑒
  • 𝑒𝑐 πœπ‘— and 𝑒𝑓 πœπ‘—
  • Given πœπ‘— 𝑑, 𝑒 , s and d rotate in parallel towards the LCA(s,d)
  • LCA might change over time

Concurrent Self-Adjusting Distributed Tree Networks 8

Model

DISC 2017

slide-9
SLIDE 9
  • State machine executed by each node in parallel

Concurrent Self-Adjusting Distributed Tree Networks 9

DiSplayNet

DISC 2017

Climbing Communicating Passive Waiting x f t z v c h g r j n request h

slide-10
SLIDE 10
  • State machine executed by each node in parallel

Concurrent Self-Adjusting Distributed Tree Networks 10

DiSplayNet

DISC 2017

Climbing Communicating Passive Waiting x t z v f c h g j n

slide-11
SLIDE 11
  • State machine executed by each node in parallel

Concurrent Self-Adjusting Distributed Tree Networks 11

DiSplayNet

DISC 2017

Climbing Communicating Passive Waiting r x f t z v c h g j n

slide-12
SLIDE 12

Local reconfigurations

Concurrent Self-Adjusting Distributed Tree Networks 12 DISC 2017

u v w v u w

zig-zig

v u v u

zig

w z v u w v w u

zig-zag

z z z

T1 T1 T1 T1 T1 T1 T2 T2 T2 T2 T2 T2 T3 T3 T3 T3 T3 T3 T4 T4 T4 T4

w

slide-13
SLIDE 13

Local reconfigurations

Concurrent Self-Adjusting Distributed Tree Networks 13 DISC 2017

u v w v u w

zig-zig

z z

T1 T1 T2 T2 T3 T3 T4 T4

Ξ²(u)

slide-14
SLIDE 14
  • In order to ensure deadlock and starvation freedom, concurrent
  • perations are performed according to a priority

𝑒𝑐 πœπ‘—(𝑑𝑗, 𝑒𝑗) < 𝑒𝑐 𝜏

π‘˜(𝑑 π‘˜, π‘’π‘˜)

Concurrent Self-Adjusting Distributed Tree Networks 14

DiSplayNet

DISC 2017

slide-15
SLIDE 15
  • The algorithm is executed in rounds

Concurrent Self-Adjusting Distributed Tree Networks 15

Algorithm

DISC 2017

𝒕𝒋

π’†π’Œ

𝑒𝑐 πœπ‘—(𝑑𝑗, 𝑒𝑗) < 𝑒𝑐 𝜏

π‘˜(𝑑 π‘˜, π‘’π‘˜)

Ξ²(𝒕𝒋) Ξ²(π’†π’Œ)

Phase 1 Phase 2

slide-16
SLIDE 16

Phase 2

  • The algorithm is executed in rounds

Concurrent Self-Adjusting Distributed Tree Networks 16

Algorithm

DISC 2017

𝒕𝒋

π’†π’Œ

𝑒𝑐 πœπ‘—(𝑑𝑗, 𝑒𝑗) < 𝑒𝑐 𝜏

π‘˜(𝑑 π‘˜, π‘’π‘˜)

ack ack

slide-17
SLIDE 17

Phase 3

  • The algorithm is executed in rounds

Concurrent Self-Adjusting Distributed Tree Networks 17

Algorithm

DISC 2017

𝒕𝒋

π’†π’Œ

𝑒𝑐 πœπ‘—(𝑑𝑗, 𝑒𝑗) < 𝑒𝑐 𝜏

π‘˜(𝑑 π‘˜, π‘’π‘˜)

ack

slide-18
SLIDE 18

Phase 4

  • The algorithm is executed in rounds

Concurrent Self-Adjusting Distributed Tree Networks 18

Algorithm

DISC 2017

𝒕𝒋

π’†π’Œ

𝑒𝑐 πœπ‘—(𝑑𝑗, 𝑒𝑗) < 𝑒𝑐 𝜏

π‘˜(𝑑 π‘˜, π‘’π‘˜)

slide-19
SLIDE 19

Phase 5

  • The algorithm is executed in rounds

Concurrent Self-Adjusting Distributed Tree Networks 19

Algorithm

DISC 2017

𝒕𝒋

π’†π’Œ

𝑒𝑐 πœπ‘—(𝑑𝑗, 𝑒𝑗) < 𝑒𝑐 𝜏

π‘˜(𝑑 π‘˜, π‘’π‘˜)

slide-20
SLIDE 20
  • Self-adjust to the communication pattern in a fully-decentralized

manner

  • Starvation free
  • Deadlock free

DiSplayNets

Concurrent Self-Adjusting Distributed Tree Networks 20 DISC 2017

slide-21
SLIDE 21
  • Analyze the efficiency
  • Work cost: 𝑋 πΈπ‘—π‘‡π‘žπ‘šπ‘π‘§π‘‚π‘“π‘’, π‘ˆ0, 𝜏 = πœπ‘— πœ— 𝜏 π‘₯(πœπ‘—)
  • Time cost:
  • Request delay: 𝑒𝑒 πœπ‘— = 𝑒𝑓 πœπ‘— - 𝑒𝑐 πœπ‘—
  • Makespan: π‘ˆ π‘ˆ0,𝜏 = max

πœπ‘— πœ— 𝜏 𝑒𝑓 πœπ‘—

βˆ’ min

πœπ‘— πœ— 𝜏 𝑒𝑐 πœπ‘—

Future Work

Concurrent Self-Adjusting Distributed Tree Networks 21 DISC 2017

slide-22
SLIDE 22

Progress Matrix

Concurrent Self-Adjusting Distributed Tree Networks 22

𝒖𝒋 𝒖𝒋+𝟐 𝒖𝒋+πŸ‘ 𝒖𝒋+πŸ’ 𝒖𝒋+πŸ“

DISC 2017

slide-23
SLIDE 23

Progress Matrix

Concurrent Self-Adjusting Distributed Tree Networks 23

Makespan Work

DISC 2017

slide-24
SLIDE 24
  • Our simulations show first promising results
  • ProjecToR data
  • 128 node randomly selected from 2 production clusters (running a mix of

workloads, including MapReduce-type jobs, index builders, and database and storage systems)

  • 1000 requests
  • Poisson process

Future Work

Concurrent Self-Adjusting Distributed Tree Networks 24 DISC 2017

slide-25
SLIDE 25
  • Our simulations show first promising results
  • Individual work CDF

Future Work

Concurrent Self-Adjusting Distributed Tree Networks 25 DISC 2017

slide-26
SLIDE 26
  • Our simulations show first promising results
  • Total work

Future Work

Concurrent Self-Adjusting Distributed Tree Networks 26 DISC 2017

slide-27
SLIDE 27
  • Our simulations show first promising results
  • Request delay

Future Work

Concurrent Self-Adjusting Distributed Tree Networks 27 DISC 2017

slide-28
SLIDE 28
  • Our simulations show first promising results
  • Makespan

Future Work

Concurrent Self-Adjusting Distributed Tree Networks 28 DISC 2017

slide-29
SLIDE 29

Thank you

Bruna Peres bperes@dcc.ufmg.br

Concurrent Self-Adjusting Distributed Tree Networks DISC 2017