giotto-ph: 用于高效计算Vietoris-Rips过滤持续同调的Python库
计算几何
2021-08-04 v2 数学软件
摘要
我们介绍giotto-ph,一个用于计算Vietoris-Rips条形码的高性能开源软件包。giotto-ph基于Morozov和Nigmetov对Ulrich Bauer的Ripser包的无锁(多核)实现。它还包含对GUDHI库中Boissonnat和Pritam的Edge Collapser实现的重构,可用作预处理步骤以在特定场景下大幅减少总运行时间。我们的贡献有两方面:一方面,我们将现有的最先进思想连贯地集成到单一库中,并为C++代码提供Python绑定。另一方面,我们通过采用更高效的数据结构来增加并行化机会并提升整体性能。我们的持续同调后端确立了新的最先进水平,在使用少至5-10个CPU核心时甚至超越了Ripser++等GPU加速实现。此外,我们对Edge Collapser的实现具有更少的软件依赖,且相对于GUDHI的原始实现改进了运行时间。
引用
@article{arxiv.2107.05412,
title = {giotto-ph: A Python Library for High-Performance Computation of Persistent Homology of Vietoris-Rips Filtrations},
author = {Julián Burella Pérez and Sydney Hauke and Umberto Lupo and Matteo Caorsi and Alberto Dassatti},
journal= {arXiv preprint arXiv:2107.05412},
year = {2021}
}
备注
18 pages, 7 figures