The Morse-Smale complex is a well studied topological structure that represents the gradient flow behavior between critical points of a scalar function. It supports multi-scale topological analysis and visualization of feature-rich scientific data. Several parallel algorithms have been proposed towards the fast computation of the 3D Morse-Smale complex. Its computation continues to pose significant algorithmic challenges. In particular, the non-trivial structure of the connections between the saddle critical points are not amenable to parallel computation. This paper describes a fine grained parallel algorithm for computing the Morse-Smale complex and a GPU implementation gMSC. The algorithm first determines the saddle-saddle reachability via a transformation into a sequence of vector operations, and next computes the paths between saddles by transforming it into a sequence of matrix operations. Computational experiments show that the method achieves up to 8.6x speedup over pyms3d and 6x speedup over TTK, the current shared memory implementations. The paper also presents a comprehensive experimental analysis of different steps of the algorithm and reports on their contribution towards runtime performance. Finally, it introduces a CPU based data parallel algorithm for simplifying the Morse-Smale complex via iterative critical point pair cancellation.
翻译:Morse-Smale复形是一种被广泛研究的拓扑结构,用于表示标量函数临界点之间的梯度流行为。它支持富含特征的科学数据的多尺度拓扑分析与可视化。目前已提出多种并行算法以实现三维Morse-Smale复形的高速计算,但其计算过程仍面临重大算法挑战。特别是鞍点临界点之间非平凡的连接结构难以通过并行计算实现。本文描述了一种用于计算Morse-Smale复形的细粒度并行算法及其GPU实现gMSC。该算法首先通过将问题转化为向量操作序列来确定鞍点间的可达性,继而通过将其转化为矩阵操作序列计算鞍点间的路径。计算实验表明,该方法相比当前共享内存实现pyms3d和TTK分别实现了最高8.6倍和6倍的加速比。本文还对算法不同步骤进行了全面的实验分析,报告了它们对运行时性能的贡献。最后,本文引入了一种基于CPU的数据并行算法,通过迭代消去临界点对来简化Morse-Smale复形。