SlideShare a Scribd company logo
1 of 36
A Parallel Data
Distribution Management
Algorithm
Gabriele D’Angelo
<g.dangelo@unibo.it>
http://www.cs.unibo.it/gdangelo/

joint work with:
Moreno Marzolla and Marco Mandrioli
Delft, Netherlands
Distributed Simulation and Real Time Applications (DS-RT), 2013
Presentation outline


Data Distribution Management (DDM)



DDM algorithms



Parallel Data Distribution Management



Parallel Matching Algorithms



Interval Tree Matching (ITM)



Experimental Evaluation



Conclusions

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

2 / 36
Data Distribution Management (DDM)


DDM services are part of the IEEE 1516 “High Level
Architecture” (HLA) specification



DDM is about forwarding events generated on update
regions to a set of subscription regions



A region is a d-dimensional rectangle (d-rectangle) in a ddimensional routing space



The goal is to find all the couples of update and subscription
regions that overlap



We assume that each region corresponds to a single extent

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

3 / 36
DDM: simple example in 2 dimensions
dimension 2

S1

U1

S3
U2

S2

dimension 1



The problem of identifying whether two d-rectangles intersect
can be reduced to d independent intersection problems among
one-dimensional segments



Two d-rectangles intersect if and only if they intersect
among all their projections

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

4 / 36
DDM algorithms: from simple to complex


No DDM: all updates are broadcasted, the filtering is on
receivers. CONS: communication inefficiency



Region-based matching (Brute Force, BF): it tests all the
subscription-update pairs. CONS: computational inefficiency



Grid-based matching: it partitions the routing space into a
grid of d-dimensional cells and finds matches
CONS:
S1



U1

S3
S2

false positives



which cell size is the best?

U2

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

5 / 36
DDM algorithms: from simple to complex


Sort-Based Matching (SBM): before matching, the extents
are sorted. In this way, the overlaps can be found efficiently.
In many cases SBM does better than grid-based [Raczy et al.
2005].



CONS: are there drawbacks?

Binary partition-based: recursive binary partitioning of the
extents. CONS: (more than) quadratic worst case cost

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

6 / 36
DDM algorithms: from simple to complex


Sort-Based Matching (SBM): before matching, the extents
are sorted. In this way, the overlaps can be found efficiently.
In many cases SBM does better than grid-based [Raczy et al.
2005].



CONS: are there drawbacks?

Binary partition-based: recursive binary partitioning of the
extents. CONS: (more than) quadratic worst case cost



… and so, what's the problem?

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

7 / 36
DDM algorithms: from simple to complex


Sort-Based Matching (SBM): before matching, the extents
are sorted. In this way, the overlaps can be found efficiently.
In many cases SBM does better than grid-based [Raczy et al.
2005].



CONS: are there drawbacks?

Binary partition-based: recursive binary partitioning of the
extents. CONS: (more than) quadratic worst case cost



… and so, what's the problem?



Even smartphones are multi-core and we're still dealing with
sequential algorithms



The future of computing is very likely to be many-core

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

8 / 36
Parallel Data Distribution Management


Easy solution: each core (or CPU) is responsible of a specific
dimension. The “master” core computes the final result

dimension 2

S1

U1

S3
S2

U2
dimension 1

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

9 / 36
Parallel Data Distribution Management


Easy solution: each core (or CPU) is responsible of a specific
dimension. The “master” core computes the final result

dimension 2

S1

U1

S3

core 1 →

result 1

A Parallel Data Distribution Management Algoriithm

S2

U2
dimension 1

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

10 / 36
Parallel Data Distribution Management


Easy solution: each core (or CPU) is responsible of a specific
dimension. The “master” core computes the final result

dimension 2

core 2 →

result 2

S1

U1

S3

core 1 →

result 1

A Parallel Data Distribution Management Algoriithm

S2

U2
dimension 1

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

11 / 36
Parallel Data Distribution Management


Easy solution: each core (or CPU) is responsible of a specific
dimension. The “master” core computes the final result

dimension 2

core 2 →

result 2

S1

∩
core 1 →

core 1 →

U1

S3

result 1

S2

U2
dimension 1

final result

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

12 / 36
Parallel Data Distribution Management


Easy solution: each core (or CPU) is responsible of a specific
dimension. The “master” core computes the final result


PRO: it can be applied to every DDM algorithm



CONS: what if the number of cores/CPUs is larger
than the number of dimensions?

This solution is not adequate for “many core” environments
We need parallel matching algorithms

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

13 / 36
Parallel matching algorithms


Brute Force (BF): inefficient, embarrassingly parallel



Sort-Based Matching (SBM): efficient, not easy to parallelize



DESIDERATA:


efficient



easy to parallelize



based on a simple data structure



that allows the efficient update/add/delete of extents
(dynamic interval management)

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

14 / 36
Our proposal: Interval Tree Matching (ITM)


Based on the simple Interval Tree data structure



It can be implemented using priority search trees or
augmented AVL trees. For simplicity we've used the last one
[9, 15]
0 – 19

[1, 13]
0 – 13

[16,18]
11 – 19

interval

[0, 8]
0–8

[2, 7]
2–7

[11, 14]
11 – 14

min lower bound
0

[17, 19]
17 – 19

max upper bound

8
1

13
2

7
9

15
11

14
16

18
17

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

19

Gabriele D'Angelo <g.dangelo@unibo.it>

15 / 36
Our proposal: Interval Tree Matching (ITM)


Based on the simple Interval Tree data structure



It can be implemented using priority search trees or
upper bound of the subtree
augmented AVL trees. For simplicity we've used the last one

maximum value of the

rooted in this node

minimum value of the
[9, 15]
0 – 19

lower bound of the subtree
rooted in this node13]
[1,
0 – 13

[16,18]
11 – 19

interval

[0, 8]
0–8

[2, 7]
2–7

[11, 14]
11 – 14

min lower bound
0

[17, 19]
17 – 19

max upper bound

8
1

13
2

7
9

15
11

14
16

18
17

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

19

Gabriele D'Angelo <g.dangelo@unibo.it>

16 / 36
Our proposal: Interval Tree Matching (ITM)


Based on the simple Interval Tree data structure



It can be implemented using priority search trees or
augmented AVL trees. For simplicity we've used the last one
[9, 15]
0 – 19

balanced tree
[1, 13]
0 – 13

interval

[0, 8]
0–8

insertion and delete

[16,18]
11 – 19

[2, 7]
2–7

[11, 14]
11 – 14

[17, 19]
17 – 19

are efficient
min lower bound
0

max upper bound

8
1

13
2

7
9

15

it contains all the subscription (or the update) regions
11
14
16

18
17

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

17 / 36
Interval Tree Matching (ITM): algorithm description


Support function INTERVAL-QUERY:
returns the list of intervals intersecting a given extent



Main function:
1)

create the Interval Tree with all the subscription extents

2)

for every update extent perform an INTERVAL-QUERY

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

18 / 36
Interval Tree Matching (ITM): comparison


Support function INTERVAL-QUERY:
returns the list of intervals intersecting a given extent



Main function:
1)

create the Interval Tree with all the subscription extents

2)

for every update extent perform an INTERVAL-QUERY

Algorithm

Computational cost

Additional space

O(n·m)
Brute force

with n subscription extents,

none

m update extents

Sort-based

O((n+m)log(n+m)+n·m)

O(n+m)

O(min{n·m, (K+1)log n})
Interval tree

with K ≤ n·m that is the total number of

O(n)

intersections
A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

19 / 36
Interval Tree Matching (ITM): comparison


Support function INTERVAL-QUERY:
returns the list of intervals intersecting a given extent



Main function:
1)

create the Interval Tree with all the subscription extents

2)

for every update extent perform an INTERVAL-QUERY

Algorithm

Brute force

Computational cost
Additional space
Parallelization: the queries at
O(n·m)
point 2) are independent → it is
none
with n subscription extents,
trivial to parallelize
m update extents

Sort-based

O((n+m)log(n+m)+n·m)

O(n+m)

O(min{n·m, (K+1)log n})
Interval tree

with K ≤ n·m that is the total number of

O(n)

intersections
A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

20 / 36
Interval Tree Matching (ITM): comparison


Support function INTERVAL-QUERY:
returns the list of intervals intersecting a given extent



Main function:
1)

create the Interval Tree with all the subscription extents

2)

for every update extent perform an INTERVAL-QUERY

Dynamic interval management:
updates are efficient

Algorithm

Brute force

Computational cost
Additional space
Parallelization: the queries at
O(n·m)
point 2) are independent → it is
none
with n subscription extents,
trivial to parallelize
m update extents

Sort-based

O((n+m)log(n+m)+n·m)

O(n+m)

O(min{n·m, (K+1)log n})
Interval tree

with K ≤ n·m that is the total number of

O(n)

intersections
A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

21 / 36
Experimental evaluation


The very same methodology used in [Raczy et al. 2005]



Instances with a single dimension are considered



Main parameters:


= number of extents = [50x103, 500x103] with 50% of update extents





N
α

= overlapping degree =

Execution platform:

∑ area of extents
area of the routing space

= {0.01, 1, 100}

Intel® Core© i7-2600 3.40 GHz CPU with 4 physical

cores and Hyper-Threading (HT), 16 GB RAM, Ubuntu 11.04

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

22 / 36
Experimental evaluation


The very same methodology used in [Raczy et al. 2005]



Instances with a single dimension are considered



Main parameters:


= number of extents = [50x103, 500x103] with 50% of update extents





N
α

= overlapping degree =

Execution platform:

∑ area of extents
area of the routing space

= {0.01, 1, 100}

Intel® Core© i7-2600 3.40 GHz CPU with 4 physical

cores and Hyper-Threading (HT), 16 GB RAM, Ubuntu 11.04

All the source code and scripts used for this performance
evaluation are available with a Free Software license from:
http://pads.cs.unibo.it
A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

23 / 36
Experimental evaluation: sequential execution
α=0.01

α=1

α=100



BF is very slow



SBM is unaffected by



ITM has the best performance



Increasing α, the gap between SBM
and ITM decreases



Note that α = 100 is a very high
overlay degree

A Parallel Data Distribution Management Algoriithm

α

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

24 / 36
Experimental evaluation: parallel execution

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

25 / 36
Experimental evaluation: parallel execution

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

26 / 36
Experimental evaluation: parallel execution

Execution platform with 4
physical cores but with
Hyper-Threading

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

27 / 36
Experimental evaluation: parallel execution

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

28 / 36
Experimental evaluation: parallel execution

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

29 / 36
Experimental evaluation: parallel execution

BF is embarrassingly parallel, in the range [1, 4] (physical
cores) both algorithms obtain almost the same speedup
A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

30 / 36
Experimental evaluation: parallel execution

In the range [5, 8] (Hyper-Threading logical cores) ITM is
better than BF. HT provides a performance boost
A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

31 / 36
Experimental evaluation: parallel execution

With more threads than logical cores there is a
significant performance drop
A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

32 / 36
Experimental evaluation: parallel execution

8 threads

As expected, the ITM depends on both the number
of extents and the overlap degree α
A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

33 / 36
Conclusions


We've proposed a new parallel Data Distribution Management
(DDM) mechanism called Interval Trees Matching (ITM)



Both sequential and parallel implementations of ITM show
good results when compared to the state of the art



Since updates on the interval tree are efficient, the ITM can be
easily extended to deal with the dynamic matching problem



All our source code is available with a Free Software license:
we believe that all the published results have to be
reproducible

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

34 / 36
Further information
Moreno Marzolla, Gabriele D'Angelo, Marco Mandrioli
A Parallel Data Distribution Management Algorithm
Proceedings of the 16-th ACM/IEEE International Symposium on Distributed
Simulation and Real Time Applications (DS-RT 2013). Delft, Netherlands, 2013

An draft version of this paper is available on the
open e-print archive
All the source code used in this paper is available at
http://pads.cs.unibo.it

Gabriele D'Angelo


E-mail: <g.dangelo@unibo.it>



http://www.cs.unibo.it/gdangelo/

A Parallel Data Distribution Management Algoriithm

DS-RT 2013

Gabriele D'Angelo <g.dangelo@unibo.it>

35 / 36
A Parallel Data
Distribution Management
Algorithm
Gabriele D’Angelo
<g.dangelo@unibo.it>
http://www.cs.unibo.it/gdangelo/

joint work with:
Moreno Marzolla and Marco Mandrioli
Delft, Netherlands
Distributed Simulation and Real Time Applications (DS-RT), 2013

More Related Content

What's hot

Why Deep Learning Works: Self Regularization in Deep Neural Networks
Why Deep Learning Works: Self Regularization in Deep Neural NetworksWhy Deep Learning Works: Self Regularization in Deep Neural Networks
Why Deep Learning Works: Self Regularization in Deep Neural Networks
Charles Martin
 
Mining at scale with latent factor models for matrix completion
Mining at scale with latent factor models for matrix completionMining at scale with latent factor models for matrix completion
Mining at scale with latent factor models for matrix completion
Fabio Petroni, PhD
 
Why Deep Learning Works: Self Regularization in Deep Neural Networks
Why Deep Learning Works: Self Regularization in Deep Neural NetworksWhy Deep Learning Works: Self Regularization in Deep Neural Networks
Why Deep Learning Works: Self Regularization in Deep Neural Networks
Charles Martin
 

What's hot (18)

International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and Development
 
Fpga sotcore architecture for lifting scheme revised
Fpga sotcore architecture for lifting scheme revisedFpga sotcore architecture for lifting scheme revised
Fpga sotcore architecture for lifting scheme revised
 
A Tale of Data Pattern Discovery in Parallel
A Tale of Data Pattern Discovery in ParallelA Tale of Data Pattern Discovery in Parallel
A Tale of Data Pattern Discovery in Parallel
 
Implementation of an arithmetic logic using area efficient carry lookahead adder
Implementation of an arithmetic logic using area efficient carry lookahead adderImplementation of an arithmetic logic using area efficient carry lookahead adder
Implementation of an arithmetic logic using area efficient carry lookahead adder
 
Parallel Algorithm Models
Parallel Algorithm ModelsParallel Algorithm Models
Parallel Algorithm Models
 
IRJET - Distributed Arithmetic Method for Complex Multiplication
IRJET -  	  Distributed Arithmetic Method for Complex MultiplicationIRJET -  	  Distributed Arithmetic Method for Complex Multiplication
IRJET - Distributed Arithmetic Method for Complex Multiplication
 
Decision tree clustering a columnstores tuple reconstruction
Decision tree clustering  a columnstores tuple reconstructionDecision tree clustering  a columnstores tuple reconstruction
Decision tree clustering a columnstores tuple reconstruction
 
IRJET- Dadda Algorithm based Lowpower High Speed Multiplier using 4T XOR Gate
IRJET- Dadda Algorithm based Lowpower High Speed Multiplier using 4T XOR GateIRJET- Dadda Algorithm based Lowpower High Speed Multiplier using 4T XOR Gate
IRJET- Dadda Algorithm based Lowpower High Speed Multiplier using 4T XOR Gate
 
An Algorithm for Optimized Cost in a Distributed Computing System
An Algorithm for Optimized Cost in a Distributed Computing SystemAn Algorithm for Optimized Cost in a Distributed Computing System
An Algorithm for Optimized Cost in a Distributed Computing System
 
Gray Image Watermarking using slant transform - digital image processing
Gray Image Watermarking using slant transform - digital image processingGray Image Watermarking using slant transform - digital image processing
Gray Image Watermarking using slant transform - digital image processing
 
Ceis 4
Ceis 4Ceis 4
Ceis 4
 
Why Deep Learning Works: Self Regularization in Deep Neural Networks
Why Deep Learning Works: Self Regularization in Deep Neural NetworksWhy Deep Learning Works: Self Regularization in Deep Neural Networks
Why Deep Learning Works: Self Regularization in Deep Neural Networks
 
GASGD: Stochastic Gradient Descent for Distributed Asynchronous Matrix Comple...
GASGD: Stochastic Gradient Descent for Distributed Asynchronous Matrix Comple...GASGD: Stochastic Gradient Descent for Distributed Asynchronous Matrix Comple...
GASGD: Stochastic Gradient Descent for Distributed Asynchronous Matrix Comple...
 
Lecture 4 principles of parallel algorithm design updated
Lecture 4   principles of parallel algorithm design updatedLecture 4   principles of parallel algorithm design updated
Lecture 4 principles of parallel algorithm design updated
 
Mining at scale with latent factor models for matrix completion
Mining at scale with latent factor models for matrix completionMining at scale with latent factor models for matrix completion
Mining at scale with latent factor models for matrix completion
 
Why Deep Learning Works: Self Regularization in Deep Neural Networks
Why Deep Learning Works: Self Regularization in Deep Neural NetworksWhy Deep Learning Works: Self Regularization in Deep Neural Networks
Why Deep Learning Works: Self Regularization in Deep Neural Networks
 
Hybrid Computing Platform for Combinatorial Optimization with the Coherent Is...
Hybrid Computing Platform for Combinatorial Optimization with the Coherent Is...Hybrid Computing Platform for Combinatorial Optimization with the Coherent Is...
Hybrid Computing Platform for Combinatorial Optimization with the Coherent Is...
 
Comparison of Various RCNN techniques for Classification of Object from Image
Comparison of Various RCNN techniques for Classification of Object from ImageComparison of Various RCNN techniques for Classification of Object from Image
Comparison of Various RCNN techniques for Classification of Object from Image
 

Viewers also liked

Using Algorithms to Brute Force Algorithms...A Journey Through Time and Names...
Using Algorithms to Brute Force Algorithms...A Journey Through Time and Names...Using Algorithms to Brute Force Algorithms...A Journey Through Time and Names...
Using Algorithms to Brute Force Algorithms...A Journey Through Time and Names...
OpenDNS
 
Priority Lands September 25 2008
Priority Lands September 25 2008Priority Lands September 25 2008
Priority Lands September 25 2008
ecopatriot80
 
TRIES_data_structure
TRIES_data_structureTRIES_data_structure
TRIES_data_structure
ddewithaman10
 

Viewers also liked (20)

Poscat seminar 3-1
Poscat seminar 3-1Poscat seminar 3-1
Poscat seminar 3-1
 
Using Algorithms to Brute Force Algorithms...A Journey Through Time and Names...
Using Algorithms to Brute Force Algorithms...A Journey Through Time and Names...Using Algorithms to Brute Force Algorithms...A Journey Through Time and Names...
Using Algorithms to Brute Force Algorithms...A Journey Through Time and Names...
 
Password cracking and brute force
Password cracking and brute forcePassword cracking and brute force
Password cracking and brute force
 
Perform brute force
Perform brute forcePerform brute force
Perform brute force
 
04 brute force
04 brute force04 brute force
04 brute force
 
Ch04 dna mapping
Ch04 dna mappingCh04 dna mapping
Ch04 dna mapping
 
TripleTree eDiscovery
TripleTree  eDiscoveryTripleTree  eDiscovery
TripleTree eDiscovery
 
Dynamic DFS in Undirected Graph using Segment Tree
Dynamic DFS in Undirected Graph using Segment TreeDynamic DFS in Undirected Graph using Segment Tree
Dynamic DFS in Undirected Graph using Segment Tree
 
K d tree_cpp
K d tree_cppK d tree_cpp
K d tree_cpp
 
Priority Lands September 25 2008
Priority Lands September 25 2008Priority Lands September 25 2008
Priority Lands September 25 2008
 
Ch15 Heap
Ch15 HeapCh15 Heap
Ch15 Heap
 
Chapter 15
Chapter 15Chapter 15
Chapter 15
 
Segment tree
Segment treeSegment tree
Segment tree
 
Segment tree
Segment treeSegment tree
Segment tree
 
Game Tree ( Oyun Ağaçları )
Game Tree ( Oyun Ağaçları )Game Tree ( Oyun Ağaçları )
Game Tree ( Oyun Ağaçları )
 
Segment tree
Segment treeSegment tree
Segment tree
 
STP
STPSTP
STP
 
String matching algorithms
String matching algorithmsString matching algorithms
String matching algorithms
 
数据结构回顾
数据结构回顾数据结构回顾
数据结构回顾
 
TRIES_data_structure
TRIES_data_structureTRIES_data_structure
TRIES_data_structure
 

Similar to A Parallel Data Distribution Management Algorithm

Fast optimization intevacoct6_3final
Fast optimization intevacoct6_3finalFast optimization intevacoct6_3final
Fast optimization intevacoct6_3final
eArtius, Inc.
 
Colfax-Winograd-Summary _final (1)
Colfax-Winograd-Summary _final (1)Colfax-Winograd-Summary _final (1)
Colfax-Winograd-Summary _final (1)
Sangamesh Ragate
 
Questions On The Equation For Regression
Questions On The Equation For RegressionQuestions On The Equation For Regression
Questions On The Equation For Regression
Tiffany Sandoval
 
CAP and the Architectural Consequences by martin Schönert
CAP and the Architectural Consequences by martin SchönertCAP and the Architectural Consequences by martin Schönert
CAP and the Architectural Consequences by martin Schönert
ArangoDB Database
 

Similar to A Parallel Data Distribution Management Algorithm (20)

Fast optimization intevacoct6_3final
Fast optimization intevacoct6_3finalFast optimization intevacoct6_3final
Fast optimization intevacoct6_3final
 
R studio
R studio R studio
R studio
 
Lec1
Lec1Lec1
Lec1
 
Distributed Streams
Distributed StreamsDistributed Streams
Distributed Streams
 
Colfax-Winograd-Summary _final (1)
Colfax-Winograd-Summary _final (1)Colfax-Winograd-Summary _final (1)
Colfax-Winograd-Summary _final (1)
 
09 accelerators
09 accelerators09 accelerators
09 accelerators
 
Questions On The Equation For Regression
Questions On The Equation For RegressionQuestions On The Equation For Regression
Questions On The Equation For Regression
 
50120130406023
5012013040602350120130406023
50120130406023
 
My Postdoctoral Research
My Postdoctoral ResearchMy Postdoctoral Research
My Postdoctoral Research
 
DAOR - Bridging the Gap between Community and Node Representations: Graph Emb...
DAOR - Bridging the Gap between Community and Node Representations: Graph Emb...DAOR - Bridging the Gap between Community and Node Representations: Graph Emb...
DAOR - Bridging the Gap between Community and Node Representations: Graph Emb...
 
Parallel In-Memory Processing and Data Virtualization Redefine Analytics Arch...
Parallel In-Memory Processing and Data Virtualization Redefine Analytics Arch...Parallel In-Memory Processing and Data Virtualization Redefine Analytics Arch...
Parallel In-Memory Processing and Data Virtualization Redefine Analytics Arch...
 
FAST ALGORITHMS FOR UNSUPERVISED LEARNING IN LARGE DATA SETS
FAST ALGORITHMS FOR UNSUPERVISED LEARNING IN LARGE DATA SETSFAST ALGORITHMS FOR UNSUPERVISED LEARNING IN LARGE DATA SETS
FAST ALGORITHMS FOR UNSUPERVISED LEARNING IN LARGE DATA SETS
 
Malstone KDD 2010
Malstone KDD 2010Malstone KDD 2010
Malstone KDD 2010
 
Data Analytics and Simulation in Parallel with MATLAB*
Data Analytics and Simulation in Parallel with MATLAB*Data Analytics and Simulation in Parallel with MATLAB*
Data Analytics and Simulation in Parallel with MATLAB*
 
vega
vegavega
vega
 
Master's Thesis - climateprediction.net: A Cloudy Approach
Master's Thesis - climateprediction.net: A Cloudy ApproachMaster's Thesis - climateprediction.net: A Cloudy Approach
Master's Thesis - climateprediction.net: A Cloudy Approach
 
My Other Computer is a Data Center: The Sector Perspective on Big Data
My Other Computer is a Data Center: The Sector Perspective on Big DataMy Other Computer is a Data Center: The Sector Perspective on Big Data
My Other Computer is a Data Center: The Sector Perspective on Big Data
 
CAP and the Architectural Consequences by martin Schönert
CAP and the Architectural Consequences by martin SchönertCAP and the Architectural Consequences by martin Schönert
CAP and the Architectural Consequences by martin Schönert
 
Smart buildings
Smart buildingsSmart buildings
Smart buildings
 
From Cloud to Fog: the Tao of IT Infrastructure Decentralization
From Cloud to Fog: the Tao of IT Infrastructure DecentralizationFrom Cloud to Fog: the Tao of IT Infrastructure Decentralization
From Cloud to Fog: the Tao of IT Infrastructure Decentralization
 

More from Gabriele D'Angelo

Parallel and Distributed Simulation of Coalition Structure Generation in Coop...
Parallel and Distributed Simulation of Coalition Structure Generation in Coop...Parallel and Distributed Simulation of Coalition Structure Generation in Coop...
Parallel and Distributed Simulation of Coalition Structure Generation in Coop...
Gabriele D'Angelo
 

More from Gabriele D'Angelo (10)

Time Warp on the Go
Time Warp on the GoTime Warp on the Go
Time Warp on the Go
 
Parallel and Distributed Simulation from Many Cores to the Public Cloud
Parallel and Distributed Simulation from Many Cores to the Public CloudParallel and Distributed Simulation from Many Cores to the Public Cloud
Parallel and Distributed Simulation from Many Cores to the Public Cloud
 
From Simulation to Online Gaming: the need for adaptive solutions
From Simulation to Online Gaming: the need for adaptive solutions From Simulation to Online Gaming: the need for adaptive solutions
From Simulation to Online Gaming: the need for adaptive solutions
 
Multiplayer Online Games over Scale-Free Networks: a Viable Solution?
Multiplayer Online Games over Scale-Free Networks: a Viable Solution?Multiplayer Online Games over Scale-Free Networks: a Viable Solution?
Multiplayer Online Games over Scale-Free Networks: a Viable Solution?
 
Proximity Detection in Distributed Simulation of Wireless Mobile Systems
Proximity Detection in Distributed Simulation of Wireless Mobile SystemsProximity Detection in Distributed Simulation of Wireless Mobile Systems
Proximity Detection in Distributed Simulation of Wireless Mobile Systems
 
Simulation of Scale-Free Networks
Simulation of Scale-Free NetworksSimulation of Scale-Free Networks
Simulation of Scale-Free Networks
 
Parallel and Distributed Simulation of Coalition Structure Generation in Coop...
Parallel and Distributed Simulation of Coalition Structure Generation in Coop...Parallel and Distributed Simulation of Coalition Structure Generation in Coop...
Parallel and Distributed Simulation of Coalition Structure Generation in Coop...
 
Detailed Simulation of Large-Scale Wireless Networks
Detailed Simulation of Large-Scale Wireless NetworksDetailed Simulation of Large-Scale Wireless Networks
Detailed Simulation of Large-Scale Wireless Networks
 
An Adaptive Load Balancing Middleware for Distributed Simulation
An Adaptive Load Balancing Middleware for Distributed SimulationAn Adaptive Load Balancing Middleware for Distributed Simulation
An Adaptive Load Balancing Middleware for Distributed Simulation
 
Concurrent Replication of Parallel and Distributed Simulations
Concurrent Replication of Parallel and Distributed SimulationsConcurrent Replication of Parallel and Distributed Simulations
Concurrent Replication of Parallel and Distributed Simulations
 

Recently uploaded

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

A Parallel Data Distribution Management Algorithm

  • 1. A Parallel Data Distribution Management Algorithm Gabriele D’Angelo <g.dangelo@unibo.it> http://www.cs.unibo.it/gdangelo/ joint work with: Moreno Marzolla and Marco Mandrioli Delft, Netherlands Distributed Simulation and Real Time Applications (DS-RT), 2013
  • 2. Presentation outline  Data Distribution Management (DDM)  DDM algorithms  Parallel Data Distribution Management  Parallel Matching Algorithms  Interval Tree Matching (ITM)  Experimental Evaluation  Conclusions A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 2 / 36
  • 3. Data Distribution Management (DDM)  DDM services are part of the IEEE 1516 “High Level Architecture” (HLA) specification  DDM is about forwarding events generated on update regions to a set of subscription regions  A region is a d-dimensional rectangle (d-rectangle) in a ddimensional routing space  The goal is to find all the couples of update and subscription regions that overlap  We assume that each region corresponds to a single extent A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 3 / 36
  • 4. DDM: simple example in 2 dimensions dimension 2 S1 U1 S3 U2 S2 dimension 1  The problem of identifying whether two d-rectangles intersect can be reduced to d independent intersection problems among one-dimensional segments  Two d-rectangles intersect if and only if they intersect among all their projections A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 4 / 36
  • 5. DDM algorithms: from simple to complex  No DDM: all updates are broadcasted, the filtering is on receivers. CONS: communication inefficiency  Region-based matching (Brute Force, BF): it tests all the subscription-update pairs. CONS: computational inefficiency  Grid-based matching: it partitions the routing space into a grid of d-dimensional cells and finds matches CONS: S1  U1 S3 S2 false positives  which cell size is the best? U2 A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 5 / 36
  • 6. DDM algorithms: from simple to complex  Sort-Based Matching (SBM): before matching, the extents are sorted. In this way, the overlaps can be found efficiently. In many cases SBM does better than grid-based [Raczy et al. 2005].  CONS: are there drawbacks? Binary partition-based: recursive binary partitioning of the extents. CONS: (more than) quadratic worst case cost A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 6 / 36
  • 7. DDM algorithms: from simple to complex  Sort-Based Matching (SBM): before matching, the extents are sorted. In this way, the overlaps can be found efficiently. In many cases SBM does better than grid-based [Raczy et al. 2005].  CONS: are there drawbacks? Binary partition-based: recursive binary partitioning of the extents. CONS: (more than) quadratic worst case cost  … and so, what's the problem? A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 7 / 36
  • 8. DDM algorithms: from simple to complex  Sort-Based Matching (SBM): before matching, the extents are sorted. In this way, the overlaps can be found efficiently. In many cases SBM does better than grid-based [Raczy et al. 2005].  CONS: are there drawbacks? Binary partition-based: recursive binary partitioning of the extents. CONS: (more than) quadratic worst case cost  … and so, what's the problem?  Even smartphones are multi-core and we're still dealing with sequential algorithms  The future of computing is very likely to be many-core A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 8 / 36
  • 9. Parallel Data Distribution Management  Easy solution: each core (or CPU) is responsible of a specific dimension. The “master” core computes the final result dimension 2 S1 U1 S3 S2 U2 dimension 1 A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 9 / 36
  • 10. Parallel Data Distribution Management  Easy solution: each core (or CPU) is responsible of a specific dimension. The “master” core computes the final result dimension 2 S1 U1 S3 core 1 → result 1 A Parallel Data Distribution Management Algoriithm S2 U2 dimension 1 DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 10 / 36
  • 11. Parallel Data Distribution Management  Easy solution: each core (or CPU) is responsible of a specific dimension. The “master” core computes the final result dimension 2 core 2 → result 2 S1 U1 S3 core 1 → result 1 A Parallel Data Distribution Management Algoriithm S2 U2 dimension 1 DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 11 / 36
  • 12. Parallel Data Distribution Management  Easy solution: each core (or CPU) is responsible of a specific dimension. The “master” core computes the final result dimension 2 core 2 → result 2 S1 ∩ core 1 → core 1 → U1 S3 result 1 S2 U2 dimension 1 final result A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 12 / 36
  • 13. Parallel Data Distribution Management  Easy solution: each core (or CPU) is responsible of a specific dimension. The “master” core computes the final result  PRO: it can be applied to every DDM algorithm  CONS: what if the number of cores/CPUs is larger than the number of dimensions? This solution is not adequate for “many core” environments We need parallel matching algorithms A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 13 / 36
  • 14. Parallel matching algorithms  Brute Force (BF): inefficient, embarrassingly parallel  Sort-Based Matching (SBM): efficient, not easy to parallelize  DESIDERATA:  efficient  easy to parallelize  based on a simple data structure  that allows the efficient update/add/delete of extents (dynamic interval management) A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 14 / 36
  • 15. Our proposal: Interval Tree Matching (ITM)  Based on the simple Interval Tree data structure  It can be implemented using priority search trees or augmented AVL trees. For simplicity we've used the last one [9, 15] 0 – 19 [1, 13] 0 – 13 [16,18] 11 – 19 interval [0, 8] 0–8 [2, 7] 2–7 [11, 14] 11 – 14 min lower bound 0 [17, 19] 17 – 19 max upper bound 8 1 13 2 7 9 15 11 14 16 18 17 A Parallel Data Distribution Management Algoriithm DS-RT 2013 19 Gabriele D'Angelo <g.dangelo@unibo.it> 15 / 36
  • 16. Our proposal: Interval Tree Matching (ITM)  Based on the simple Interval Tree data structure  It can be implemented using priority search trees or upper bound of the subtree augmented AVL trees. For simplicity we've used the last one maximum value of the rooted in this node minimum value of the [9, 15] 0 – 19 lower bound of the subtree rooted in this node13] [1, 0 – 13 [16,18] 11 – 19 interval [0, 8] 0–8 [2, 7] 2–7 [11, 14] 11 – 14 min lower bound 0 [17, 19] 17 – 19 max upper bound 8 1 13 2 7 9 15 11 14 16 18 17 A Parallel Data Distribution Management Algoriithm DS-RT 2013 19 Gabriele D'Angelo <g.dangelo@unibo.it> 16 / 36
  • 17. Our proposal: Interval Tree Matching (ITM)  Based on the simple Interval Tree data structure  It can be implemented using priority search trees or augmented AVL trees. For simplicity we've used the last one [9, 15] 0 – 19 balanced tree [1, 13] 0 – 13 interval [0, 8] 0–8 insertion and delete [16,18] 11 – 19 [2, 7] 2–7 [11, 14] 11 – 14 [17, 19] 17 – 19 are efficient min lower bound 0 max upper bound 8 1 13 2 7 9 15 it contains all the subscription (or the update) regions 11 14 16 18 17 A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 17 / 36
  • 18. Interval Tree Matching (ITM): algorithm description  Support function INTERVAL-QUERY: returns the list of intervals intersecting a given extent  Main function: 1) create the Interval Tree with all the subscription extents 2) for every update extent perform an INTERVAL-QUERY A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 18 / 36
  • 19. Interval Tree Matching (ITM): comparison  Support function INTERVAL-QUERY: returns the list of intervals intersecting a given extent  Main function: 1) create the Interval Tree with all the subscription extents 2) for every update extent perform an INTERVAL-QUERY Algorithm Computational cost Additional space O(n·m) Brute force with n subscription extents, none m update extents Sort-based O((n+m)log(n+m)+n·m) O(n+m) O(min{n·m, (K+1)log n}) Interval tree with K ≤ n·m that is the total number of O(n) intersections A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 19 / 36
  • 20. Interval Tree Matching (ITM): comparison  Support function INTERVAL-QUERY: returns the list of intervals intersecting a given extent  Main function: 1) create the Interval Tree with all the subscription extents 2) for every update extent perform an INTERVAL-QUERY Algorithm Brute force Computational cost Additional space Parallelization: the queries at O(n·m) point 2) are independent → it is none with n subscription extents, trivial to parallelize m update extents Sort-based O((n+m)log(n+m)+n·m) O(n+m) O(min{n·m, (K+1)log n}) Interval tree with K ≤ n·m that is the total number of O(n) intersections A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 20 / 36
  • 21. Interval Tree Matching (ITM): comparison  Support function INTERVAL-QUERY: returns the list of intervals intersecting a given extent  Main function: 1) create the Interval Tree with all the subscription extents 2) for every update extent perform an INTERVAL-QUERY Dynamic interval management: updates are efficient Algorithm Brute force Computational cost Additional space Parallelization: the queries at O(n·m) point 2) are independent → it is none with n subscription extents, trivial to parallelize m update extents Sort-based O((n+m)log(n+m)+n·m) O(n+m) O(min{n·m, (K+1)log n}) Interval tree with K ≤ n·m that is the total number of O(n) intersections A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 21 / 36
  • 22. Experimental evaluation  The very same methodology used in [Raczy et al. 2005]  Instances with a single dimension are considered  Main parameters:  = number of extents = [50x103, 500x103] with 50% of update extents   N α = overlapping degree = Execution platform: ∑ area of extents area of the routing space = {0.01, 1, 100} Intel® Core© i7-2600 3.40 GHz CPU with 4 physical cores and Hyper-Threading (HT), 16 GB RAM, Ubuntu 11.04 A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 22 / 36
  • 23. Experimental evaluation  The very same methodology used in [Raczy et al. 2005]  Instances with a single dimension are considered  Main parameters:  = number of extents = [50x103, 500x103] with 50% of update extents   N α = overlapping degree = Execution platform: ∑ area of extents area of the routing space = {0.01, 1, 100} Intel® Core© i7-2600 3.40 GHz CPU with 4 physical cores and Hyper-Threading (HT), 16 GB RAM, Ubuntu 11.04 All the source code and scripts used for this performance evaluation are available with a Free Software license from: http://pads.cs.unibo.it A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 23 / 36
  • 24. Experimental evaluation: sequential execution α=0.01 α=1 α=100  BF is very slow  SBM is unaffected by  ITM has the best performance  Increasing α, the gap between SBM and ITM decreases  Note that α = 100 is a very high overlay degree A Parallel Data Distribution Management Algoriithm α DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 24 / 36
  • 25. Experimental evaluation: parallel execution A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 25 / 36
  • 26. Experimental evaluation: parallel execution A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 26 / 36
  • 27. Experimental evaluation: parallel execution Execution platform with 4 physical cores but with Hyper-Threading A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 27 / 36
  • 28. Experimental evaluation: parallel execution A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 28 / 36
  • 29. Experimental evaluation: parallel execution A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 29 / 36
  • 30. Experimental evaluation: parallel execution BF is embarrassingly parallel, in the range [1, 4] (physical cores) both algorithms obtain almost the same speedup A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 30 / 36
  • 31. Experimental evaluation: parallel execution In the range [5, 8] (Hyper-Threading logical cores) ITM is better than BF. HT provides a performance boost A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 31 / 36
  • 32. Experimental evaluation: parallel execution With more threads than logical cores there is a significant performance drop A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 32 / 36
  • 33. Experimental evaluation: parallel execution 8 threads As expected, the ITM depends on both the number of extents and the overlap degree α A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 33 / 36
  • 34. Conclusions  We've proposed a new parallel Data Distribution Management (DDM) mechanism called Interval Trees Matching (ITM)  Both sequential and parallel implementations of ITM show good results when compared to the state of the art  Since updates on the interval tree are efficient, the ITM can be easily extended to deal with the dynamic matching problem  All our source code is available with a Free Software license: we believe that all the published results have to be reproducible A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 34 / 36
  • 35. Further information Moreno Marzolla, Gabriele D'Angelo, Marco Mandrioli A Parallel Data Distribution Management Algorithm Proceedings of the 16-th ACM/IEEE International Symposium on Distributed Simulation and Real Time Applications (DS-RT 2013). Delft, Netherlands, 2013 An draft version of this paper is available on the open e-print archive All the source code used in this paper is available at http://pads.cs.unibo.it Gabriele D'Angelo  E-mail: <g.dangelo@unibo.it>  http://www.cs.unibo.it/gdangelo/ A Parallel Data Distribution Management Algoriithm DS-RT 2013 Gabriele D'Angelo <g.dangelo@unibo.it> 35 / 36
  • 36. A Parallel Data Distribution Management Algorithm Gabriele D’Angelo <g.dangelo@unibo.it> http://www.cs.unibo.it/gdangelo/ joint work with: Moreno Marzolla and Marco Mandrioli Delft, Netherlands Distributed Simulation and Real Time Applications (DS-RT), 2013