contour forests: fast multi-threaded augmented …contour forests: fast multi-threaded augmented...

61
Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMC Julien Jomier, Kitware Julien Tierny, UPMC Journée Visu 2017

Upload: others

Post on 04-Aug-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Contour Forests: Fast Multi-threaded Augmented Contour Trees

Charles Gueunet, UPMC and KitwarePierre Fortin, UPMCJulien Jomier, KitwareJulien Tierny, UPMC

Journée Visu 2017

Page 2: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Topological analysis: classical approach in Sci Viz• Contour Trees, Reeb Graphs, Morse-Smale Complexes...

Introduction

[DoraiswamyTVCG13] [LandgeSC14] [MaadasamyHiPC12]

Context Related Works Challenges Contributions

Page 3: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Topological analysis: classical approach in Sci Viz• Contour Trees, Reeb Graphs, Morse-Smale Complexes...

• Increasing data size and complexity• Challenge for interactive exploration• Multi-core architectures are common

Introduction

[DoraiswamyTVCG13] [LandgeSC14] [MaadasamyHiPC12]

Context Related Works Challenges Contributions

Motivation for multi-threaded parallelism

Page 4: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Introduction Context Related Works Challenges Contributions

Sequential:• [CarrSODA00,ChiangCG05]

Page 5: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Introduction• [PascucciAlgorithmica04]

Parallel: Context Related Works Challenges Contributions

Sequential:• [CarrSODA00,ChiangCG05]

Ref CT Tet. mesh Augmented Combination

Pascucci ✓ ~ ✓ ✗

Page 6: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Introduction• [PascucciAlgorithmica04]• [MaadasamyHiPC12]

Parallel: Context Related Works Challenges Contributions

Sequential:• [CarrSODA00,ChiangCG05]

Ref CT Tet. mesh Augmented Combination

Pascucci ✓ ~ ✓ ✗Maadasamy ✓ ✓ ✗ ✗

Page 7: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Introduction• [PascucciAlgorithmica04]• [MaadasamyHiPC12]• [NatarajanPV15]

Parallel: Context Related Works Challenges Contributions

Sequential:• [CarrSODA00,ChiangCG05]

Ref CT Tet. mesh Augmented Combination

Pascucci ✓ ~ ✓ ✗Maadasamy ✓ ✓ ✗ ✗Natarajan ✓ ✗ ✗ ✗

Page 8: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Introduction• [PascucciAlgorithmica04]• [MaadasamyHiPC12]• [NatarajanPV15]

Parallel:

Distributed:

• [MorozovPPoPP13]

Context Related Works Challenges Contributions

Sequential:• [CarrSODA00,ChiangCG05]

Ref CT Tet. mesh Augmented Combination

Pascucci ✓ ~ ✓ ✗Maadasamy ✓ ✓ ✗ ✗Natarajan ✓ ✗ ✗ ✗Morozov MT ✗ ~ ✓ -

Page 9: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Introduction• [PascucciAlgorithmica04]• [MaadasamyHiPC12]• [NatarajanPV15]

Parallel:

Distributed:

• [MorozovPPoPP13]• [MorozovTopoInVis13]

Context Related Works Challenges Contributions

Sequential:• [CarrSODA00,ChiangCG05]

Ref CT Tet. mesh Augmented Combination

Pascucci ✓ ~ ✓ ✗Maadasamy ✓ ✓ ✗ ✗Natarajan ✓ ✗ ✗ ✗Morozov MT ✗ ~ ✓ -Morozov CT ✓ ~ ✓ ✗

Page 10: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Introduction• [PascucciAlgorithmica04]• [MaadasamyHiPC12]• [NatarajanPV15]

Sequential:

Parallel:

Distributed:

• [MorozovPPoPP13]• [MorozovTopoInVis13]• [LandgeTopoInVis15]

Context Related Works Challenges Contributions

• [CarrSODA00,ChiangCG05]Ref CT Tet. mesh Augmented Combination

Pascucci ✓ ~ ✓ ✗Maadasamy ✓ ✓ ✗ ✗Natarajan ✓ ✗ ✗ ✗Morozov MT ✗ ~ ✓ -Morozov CT ✓ ~ ✓ ✗Landge ✗ ✗ ✓ -

Page 11: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Topological data analysis algorithms• Intrinsically sequential approaches• Challenging parallelization

Introduction Context Related Works Challenges Contributions

Page 12: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Topological data analysis algorithms• Intrinsically sequential approaches• Challenging parallelization

• Contour Tree:• No complete parallelization (only subroutines)• No efficient parallel algorithm for augmented trees

Introduction Context Related Works Challenges Contributions

Page 13: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Efficient multi-threaded algorithm for contour tree computation• Simple approach • Good parallel efficiency on workstations

Introduction Context Related Works Challenges Contributions

Page 14: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Efficient multi-threaded algorithm for contour tree computation• Simple approach • Good parallel efficiency on workstations

• Ready-to-use VTK-based C++ implementation: in TTK• Generic input (VTU/VTI, 2D/3D)• Generic output (augmented trees)

Introduction Context Related Works Challenges Contributions

Page 15: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

1) Introduction2) Preliminaries

Background Overview

3) Algorithm Domain partitioning Local computation Contour forest stitching

Summary

4) Experimental results Scalability Efficiency Limitations

5) Application6) Conclusion

Recall Perspective

Page 16: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Preliminaries

Page 17: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Input data:

Preliminaries Background Overview

• Piecewise linear scalar field

2D Example 3D Example

Page 18: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Level set:

Preliminaries Background Overview

• Preimage of a scalar value• Isovalue: onto

2D Example 3D Example

Page 19: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Contour tree:

Preliminaries Background Overview

• Simply connected input domain• 1-dimensional simplicial complex

Regular vertices in augmented tree

2D Example 3D Example

Page 20: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Contour tree:

Preliminaries Background Overview

• Quotient space: • Equivalence relation:

2D Example 3D Example

Page 21: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

1) Sort vertices2) Create partitions using level sets3) Compute local trees4) Stitch local trees

Main steps of our approach:

Preliminaries Background Overview

Page 22: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

1) Sort vertices2) Create partitions using level sets3) Compute local trees4) Stitch local trees

• Simple approach• Local computation of CT• Augmented trees• Simple stitching of the forests

Main steps of our approach:

Preliminaries Background Overview Pros:

Page 23: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

1) Sort vertices2) Create partitions using level sets3) Compute local trees4) Stitch local trees

• Simple approach• Local computation of CT• Augmented trees• Simple stitching of the forests

Main steps of our approach:

Preliminaries Background Overview Pros:

• Depends on interface level sets

Cons:

Page 24: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Algorithm

Page 25: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Range driven partitions• Sorted scalars ⇒ balanced partitions• Use partitions

Algorithm Domain partitioning Local computation Contour forest stitching

Page 26: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Range driven partitions• Sorted scalars ⇒ balanced partitions• Use partitions

Algorithm Domain partitioning Local computation Contour forest stitching

Page 27: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Range driven partitions• Sorted scalars ⇒ balanced partitions• Use partitions

Algorithm Domain partitioning Local computation Contour forest stitching

3D Example

Page 28: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Range driven partitions• Sorted scalars ⇒ balanced partitions• Use partitions

Algorithm Domain partitioning Local computation Contour forest stitching

3D Example

Page 29: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Range driven partitions• Sorted scalars ⇒ balanced partitions• Use partitions

Algorithm Domain partitioning Local computation Contour forest stitching

noise

2D Example 3D Example

Page 30: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Extended partition: initial partition + boundary vertices

• Correct tree in initial partition• Visit all edges in parallel

Algorithm Domain partitioning Local computation Contour forest stitching

extended green + red

Redundant computations:

2D Example 3D Example

Page 31: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• In extended partitions• Using Carr et al. Algorithm:

• Join Tree • Split Tree• Combination

• Union-Find [CormenItA01]

Algorithm Domain partitioning Local computation Contour forest stitching

Independent

2D Example 3D Example

Page 32: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Join and Split trees: 2 threads• Combine: 1 thread• O(|σi|×α(|σi|)) + O(|S|)• Keep arcs on the boundary (n-h)

Algorithm Domain partitioning Local computation Contour forest stitching

Each partition:

2D Example 3D Example

Page 33: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Simple step• Visit crossing arcs• Cut interface arcs

• Segmentation: fast lookup

Algorithm Domain partitioning Local computation Contour forest stitching

2D Example 3D Example

Page 34: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• New super-arc: • Union of the two facing halves

• Once per connected component of level set (∼ crossing arc)

Algorithm Domain partitioning Local computation Contour forest stitching

2D Example 3D Example

Page 35: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Repeat for each interface• Fast in practice

Algorithm Domain partitioning Local computation Contour forest stitching

2D Example 3D Example

Page 36: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Experimental resultsIntel Xeon CPU E5-2630 v3 (2.4 Ghz, 8 cores)64GB of RAMC++ (GCC-4.9), VTK, OpenMP (additional material)

Page 37: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Exp. Results Efficiency Comparison Speed Pros & cons

8 threads, 4 partitions

• Uniform sampling

Page 38: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Exp. Results Efficiency Comparison Speed Pros & cons

8 threads, 4 partitions

• Foot: fast computation

Page 39: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Exp. Results Efficiency Comparison Speed Pros & cons

8 threads, 4 partitions

• Overlap and Stitching: efficient

Page 40: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Exp. Results Efficiency Comparison Speed Pros & cons

8 threads, 4 partitions

• High range of value

Page 41: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Exp. Results Efficiency Comparison Speed Pros & cons

8 threads, 4 partitions

• About ten seconds

Page 42: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Exp. Results Efficiency Comparison Speed Pros & cons

8 threads, 4 partitions

• Parallel efficiency max: 67% (speedup / )• Parallel efficiency: 40 ~ 55 % (except extrema)

Page 43: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Exp. Results Efficiency Comparison Speed Pros & cons

• Open-source reference implementation

• pTourtre: naive parallel version

Libtourtre:

Page 44: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Exp. Results Efficiency Comparison Speed Pros & cons

• Open-source reference implementation

• pTourtre: naive parallel version

• Always better than sequential libtourtre for big data sets

• Better than parallel except for the foot data set

Libtourtre:

Page 45: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Exp. Results Efficiency Comparison Speed Pros & cons

• Different slopes• Few arithmetic operations per

memory access

Page 46: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Exp. Results Efficiency Comparison Speed Pros & cons

Computational speed: vertices/second

• Different slopes• Few arithmetic operations per

memory access• Load imbalance

Page 47: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Exp. Results Efficiency Comparison Speed Pros & cons

Computational speed: vertices/second

• Different slopes• Few arithmetic operations per

memory access• Load imbalance• Memory congestion

Page 48: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Exp. Results Efficiency Comparison Speed Pros & cons

Partitions sizes in vertices

• Different slopes• Few arithmetic operations per

memory access• Load imbalance• Memory congestion• Redundant computations

Page 49: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

• Redundant computation• Load imbalance• Memory congestion (augmented

tree)

Pros: Cons:

Efficiency Comparison Speed Pros & cons

Exp. Results

• Good parallel efficiency• Faster than reference

implementation• Large spectrum of data

Page 50: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Application

Page 51: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Application

• Highlight features• Allows features grouping

Exploration:

Page 52: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Application

• Remove noise• Keep the most important features

Occlusion reduction:

Page 53: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Conclusion

Page 54: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Take home message:

Recall PerspectiveConclusion

• Efficient algorithm:• Multi-threaded• Augmented• Simple approach, subtle details

Page 55: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Take home message:

Recall PerspectiveConclusion

• Efficient algorithm:• Multi-threaded• Augmented• Simple approach, subtle details

• VTK-based implementation:• Generic input – VTU,VTI– 2D/3D

• Generic output (augmented trees)• Ready-to-use• Integrated in TTK

Page 56: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Take home message:

Recall PerspectiveConclusion

• Efficient algorithm:• Multi-threaded• Augmented• Simple approach, subtle details

• VTK-based implementation:• Generic input – VTU,VTI– 2D/3D

• Generic output (augmented trees)• Ready-to-use• Integrated in TTK

• Lesson learned• Memory bound• Memory congestion: price to pay

for augmented trees• Efficient implementation: hard

Page 57: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Recall PerspectiveConclusion

• Improve partitioning: ● Better cutting isovalue selection● Contour Spectrum

• Distributed systems

Page 58: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

The end

Thank you for your attention,Do you have any question ?

This work is partially supported by the Bpifrance grant “AVIDO” (Programme d’Investissements d’Avenir, referenceP112017-2661376/DOS0021427) and by the French National Association for Research and Technology (ANRT), in theframework of the LIP6 - Kitware SAS CIFRE partnership reference 2015/1039.

Paper at: http://www-pequan.lip6.fr/~tierny/Code at: https://github.com/topology-tool-kit/ttk

Page 59: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Appendice

Page 60: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Seq. Approaches

Monotone paths:Union find:

Page 61: Contour Forests: Fast Multi-threaded Augmented …Contour Forests: Fast Multi-threaded Augmented Contour Trees Charles Gueunet, UPMC and Kitware Pierre Fortin, UPMCJulien Jomier, KitwareJulien

Critical points