A Distributed Approach for Persistent Homology Computation on a Large Scale
Riccardo Ceccaroni, Lorenzo Di Rocco, Umberto Ferraro Petrillo, Pierpaolo Brutti
TL;DR
This work introduces PixHomology, a memory-efficient algorithm for computing $0$-dimensional persistent homology on large 2D images, and couples it with a Spark-based distributed pipeline to process massive batches of images. By avoiding adjacency matrices and leveraging max-pooling operations, PixHomology achieves substantial reductions in memory usage and competitive runtimes, especially on large-scale data. The authors conduct extensive experiments against Ripser and DIPHA across a 24-node cluster with a 36 GB image dataset, demonstrating superior scalability and efficiency for large images. The proposed approach enables scalable topological analysis in high-throughput imaging domains such as astronomy and biology, and outlines future enhancements like out-of-core processing and distributed per-image partitions. Overall, PixHomology offers a practical, scalable solution for persistent homology on big image datasets with clear advantages in memory footprint and parallel throughput.
Abstract
Persistent homology (PH) is a powerful mathematical method to automatically extract relevant insights from images, such as those obtained by high-resolution imaging devices like electron microscopes or new-generation telescopes. However, the application of this method comes at a very high computational cost, that is bound to explode more because new imaging devices generate an ever-growing amount of data. In this paper we present PixHomology, a novel algorithm for efficiently computing $0$-dimensional PH on 2D images, optimizing memory and processing time. By leveraging the Apache Spark framework, we also present a distributed version of our algorithm with several optimized variants, able to concurrently process large batches of astronomical images. Finally, we present the results of an experimental analysis showing that our algorithm and its distributed version are efficient in terms of required memory, execution time, and scalability, consistently outperforming existing state-of-the-art PH computation tools when used to process large datasets.
