当前位置: X-MOL 学术arXiv.cs.CG › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Giotto-ph: A Python Library for High-Performance Computation of Persistent Homology of Vietoris--Rips Filtrations
arXiv - CS - Computational Geometry Pub Date : 2021-07-12 , DOI: arxiv-2107.05412
Julián Burella Pérez, Sydney Hauke, Umberto Lupo, Matteo Caorsi, Alberto Dassatti

We introduce giotto-ph, a high-performance, open-source software package for the computation of Vietoris--Rips barcodes. giotto-ph is based on Morozov and Nigmetov's lockfree (multicore) implementation of Ulrich Bauer's Ripser package. It also contains a re-implementation of Boissonnat and Pritam's "Edge Collapser", implemented so far only in the GUDHI library. Our contribution is twofold: on the one hand, we integrate existing state-of-the-art ideas coherently in a single library and provide Python bindings to the C++ code. On the other hand, we increase parallelization opportunities and improve overall performance by adopting higher performance data structures. The final implementation of our persistent homology backend establishes a new state of the art, surpassing even GPU-accelerated implementations such as Ripser++ when using as few as 5--10 CPU cores. Furthermore, our implementation of the edge collapser algorithm has reduced dependencies and significantly improved run-times.

中文翻译:

Giotto-ph:用于高性能计算 Vietoris 持久同源性的 Python 库--Rips Filtrations

我们介绍了 giotto-ph,这是一种用于计算 Vietoris--Rips 条码的高性能开源软件包。giotto-ph 基于 Morozov 和 Nigmetov 对 Ulrich Bauer 的 Ripser 包的无锁(多核)实现。它还包含对 Boissonnat 和 Pritam 的“Edge Collapser”的重新实现,目前仅在 GUDHI 库中实现。我们的贡献是双重的:一方面,我们将现有的最先进的想法连贯地集成到一个库中,并提供与 C++ 代码的 Python 绑定。另一方面,我们通过采用更高性能的数据结构来增加并行化机会并提高整体性能。我们持久同源后端的最终实现建立了一个新的技术状态,当使用少至 5--10 个 CPU 内核时,甚至超过 GPU 加速的实现,例如 Ripser++。此外,我们对边缘折叠器算法的实现减少了依赖性并显着改善了运行时间。
更新日期:2021-07-13
down
wechat
bug