High performance level-set based topological data analysis
Calcul haute performance pour l'analyse topologique de données par ensembles de niveaux
Résumé
Topological Data Analysis requires efficient algorithms to deal with the continuously increasing size and level of details of data sets. In this manuscript, we focus on three fundamental topological abstractions based on level sets: merge trees, contour trees and Reeb graphs. We propose three new efficient parallel algorithms for the computation of these abstractions on multi-core shared memory workstations. The first algorithm developed in the context of this thesis is based on multi-thread parallelism for the contour tree computation. A second algorithm revisits the reference sequential algorithm to compute this abstraction and is based on local propagations expressible as parallel tasks. This new algorithm is in practice twice faster in sequential than the reference algorithm designed in 2000 and offers one order of magnitude speedups in parallel. A last algorithm also relying on task-based local propagations is presented, computing a more generic abstraction: the Reeb graph. Contrary to concurrent approaches, these methods provide the augmented version of these structures, hence enabling the full extend of level-set based analysis. Algorithms presented in this manuscript result today in the fastest implementations available to compute these abstractions. This work has been integrated into the open-source platform: the Topology Toolkit (TTK).
L'analyse de données topologique nécessite des algorithmes de plus en plus efficaces pour être capable de traiter des jeux de données dont la taille et le niveau de détail augmente continûment. Dans cette thèse, nous nous concentrons sur trois abstractions topologiques fondamentales dérivées des ensembles de niveaux : l'arbre de jointure, l'arbre de contour et le graphe de Reeb. Nous proposons trois nouveaux algorithmes parallèles efficaces pour leur calcul sur des stations de travail composées de processeurs multi-cœur en mémoire partagée. Le premier algorithme élaboré durant cette thèse se base sur du parallélisme multi-thread pour le calcul de l'arbre de contour. Une seconde approche revisite l'algorithme séquentiel de référence pour le calcul de cette structure et se base sur des propagations locales exprimables en tâches parallèles. Ce nouvel algorithme est en pratique deux fois plus rapide en séquentiel que l'algorithme de référence élaboré en 2000 et offre une accélération d'un ordre de grandeur en parallèle. Un dernier algorithme basé sur une approche locale par tâches est également présenté pour une abstraction plus générique : le graphe de Reeb. Contrairement aux approches concurrentes, nos algorithmes construisent les versions augmentées de ces structures, permettant de supporter l'ensemble des applications pour l'analyse de données par ensembles de niveaux. Les méthodes présentées dans ce manuscrit ont donné lieu à des implémentations qui sont les plus rapides parmi celles disponibles pour le calcul de ces abstractions. Ce travail a été intégré à la bibliothèque libre : Topology Toolkit (TTK).
Origine | Version validée par le jury (STAR) |
---|
Loading...