a parallelisation approach for multi-resolution grids based upon the peano space-filling curve...

29
A Parallelisation A Parallelisation Approach for Multi- Approach for Multi- Resolution Grids Based Resolution Grids Based Upon the Peano Space- Upon the Peano Space- Filling Curve Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Upload: collin-jennings

Post on 27-Dec-2015

212 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

A Parallelisation Approach A Parallelisation Approach for Multi-Resolution Grids for Multi-Resolution Grids

Based Upon the Peano Based Upon the Peano Space-Filling CurveSpace-Filling Curve

Student: Adriana BocoiAdvisor: Dipl.-Inf.Tobias Weinzierl

Page 2: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 2201.04.2007

Content

Domain discretisation

Trees [Computer representation]

Space-Filling Curves [Traversal]

Parallelisation

Page 3: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 3301.04.2007

Solving Real Life Problems

Model the real life problem Usually we end up with PDE

(Partial Differential Equations) Consider the domain Discretise (grid) Solve the discrete problem

Page 4: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 4401.04.2007

ParallelisationParallel computing is the division of one task into a set of subtasks

assigned to multiple processors in order to obtain results faster or to reduce memory requirements per processor.

Example: input: a={2,3,4}, b={5,6,1}result: c=a+b={7,9,5}

Serial Parallel (3 processors)

Page 5: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 5501.04.2007

Domain Partitioning

Domain partitioning is the process of dividing a domain into two or more

regions.

Page 6: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 6601.04.2007

Domain PartitioningWhich is better ?

hhh

hh

qualityPartition

hhh

hh

qualityPartition

volume

surface

surface

lengthdatalocal

dataedcommunicatqualityPartition

square

stripes

DD

8

22

222

10

4

42

32

Page 7: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 7701.04.2007

Domain Partitioning

We have (regarding partition quality):

stripes < square

Which is optimal ?

Minimum length/maximum surface -> circle

thus: stripes < square < circle

hh

hqualityPartition circle

222

Page 8: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 8801.04.2007

Domain Partitioning Types of structured grids:

Regular grids

Adaptive grids

Page 9: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 9901.04.2007

Pro’s and Con’s

Regular Grid Adaptive Grid

Generation Easy Difficult

Storage Scheme Easy Complicated

Algorithm Implementation Easy Difficult

PrecisionGreat memory and

computational effort

Good

Page 10: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 101001.04.2007

Conclusion Grids

If we can find a way to memorise and work with adaptive grids

efficiently, they can help us to make more precise

computations with less effort (memory and computation).

Page 11: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 111101.04.2007

Content

Domain discretisation

Trees [Computer representation]

Space-Filling Curves [Traversal]

Parallelisation

Page 12: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 121201.04.2007

Data structure - Trees !

Recursivity

=>

Tree data structure

Page 13: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 131301.04.2007

Data structure - Trees !

Terms that we encounter:

Quadtrees(2D)bipartition

Octrees (3D)

Space Trees Refinement trees – representation of the

refinement process that created the grid [1]

Page 14: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 141401.04.2007

How to read from that structure We have two traversals:

BFS DFS (Breadth First Search) (Depth First Search)

Page 15: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 151501.04.2007

Ordering

Deterministic algorithm(Where to go next ?)

Page 16: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 161601.04.2007

Content

Domain discretisation

Trees [Computer representation]

Space-Filling Curves [Traversal]

Parallelisation

Page 17: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 171701.04.2007

We need an unique ordering

We have space filling curves to

define the order of the children

The Peano Space - Filling Curve

Page 18: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 181801.04.2007

How does this actually help ?

We obtain a traversal of the tree given by the Peano

Space - Filling Curve.

Page 19: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 191901.04.2007

What do we have till now ?

Adaptive grids Methods to handle them on the

computer

Data Structure: Tree Structure

Ordering: Peano Space-Filling Curve

Page 20: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 202001.04.2007

Content

Domain discretisation

Trees [Computer representation]

Space-Filling Curves [Traversal]

Parallelisation

Page 21: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 212101.04.2007

Remember the domain partitioning

Adaptive grid

Regular grid

Page 22: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 222201.04.2007

Parallelisation

What is wrong?

Adaptive grids - One processor has to do more work than the other three!

[Load imbalance]

Regular grids – nothing

Page 23: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 232301.04.2007

We want a well-balanced workload distribution!

Load balancing is a technique to spread work between processors

in order to get better resource utilisation and, thus, decrease

computing time.

Page 24: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 242401.04.2007

Partition strategy

split the grid <=> split the tree One strategy [1]:

p processors n nodes in the treewe get approx. [n/p] nodes for each

processor

Page 25: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 252501.04.2007

How do we find it ? Example:

Page 26: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 262601.04.2007

How good is the partition ?

The papers in this field [2] tell us that actually domain partitioning

using Peano Space-Filling Curves is besides a constant as good as an

optimal partitioning (circle).

rectangle < square < peano SFC < circle

Page 27: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 272701.04.2007

Why Peano and not other SFC ?

Because of the 3D projection propriety:

Page 28: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Adriana Bocoi - Peano space filling curveAdriana Bocoi - Peano space filling curve 282801.04.2007

Conclusion

Partitioned Domain+

Trees as data structure+

Peano space filling curve for ordering+

Splitting strategy=

Good parallelisation

Page 29: A Parallelisation Approach for Multi-Resolution Grids Based Upon the Peano Space-Filling Curve Student: Adriana Bocoi Advisor: Dipl.-Inf.Tobias Weinzierl

Thank you for your attention !!!

Q & A