Accelerating massive data processing in Python with Heat

Processing massive scientific datasets is challenging. In astrophysics as in the vast majority of research communities, the standard approach involves breaking up and analyzing data in smaller chunks, an inefficient and very prone-to-errors process. The problem is exacerbated on GPUs, because of the smaller available memory. Popular solutions to distribute NumPy/SciPy computations are based on task parallelism, introducing significant runtime overhead, complicating implementation, and often limiting GPU support to one vendor. In this talk, I will present an alternative based on data parallelism. The open-source library Heat [https://github.com/helmholtz-analytics/heat] builds on PyTorch and the Message Passing Interface protocol to simplify porting of NumPy/SciPy-based code to multi-CPU, multi-GPU clusters. From a user perspective, Heat can be used seamlessly in the Python array ecosystem (numpy, scipy, xarray etc.). Under the hood, massive memory-intensive operations are distributed transparently via MPI communication. I will not bore you with technical details, but rather show you practical situations in which your Python pipeline could benefit from using Heat as a backend for massive array manipulations, statistics, signal processing, machine learning, etc.

Institutions

Publication Details

Journal
Zenodo (CERN European Organization for Nuclear Research)
Published
2024-09-04
DOI
https://doi.org/10.5281/zenodo.13681472
Primary Topic
Computational Physics and Python Applications
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Accelerating massive data processing in Python with Heat

Zenodo (CERN European Organization for Nuclear Research)
Computational Physics and Python Applications
article

Accelerating massive data processing in Python with Heat

article en

Abstract

Processing massive scientific datasets is challenging. In astrophysics as in the vast majority of research communities, the standard approach involves breaking up and analyzing data in smaller chunks, an inefficient and very prone-to-errors process. The problem is exacerbated on GPUs, because of the smaller available memory. Popular solutions to distribute NumPy/SciPy computations are based on task parallelism, introducing significant runtime overhead, complicating implementation, and often limiting GPU support to one vendor. In this talk, I will present an alternative based on data parallelism. The open-source library Heat [https://github.com/helmholtz-analytics/heat] builds on PyTorch and the Message Passing Interface protocol to simplify porting of NumPy/SciPy-based code to multi-CPU, multi-GPU clusters. From a user perspective, Heat can be used seamlessly in the Python array ecosystem (numpy, scipy, xarray etc.). Under the hood, massive memory-intensive operations are distributed transparently via MPI communication. I will not bore you with technical details, but rather show you practical situations in which your Python pipeline could benefit from using Heat as a backend for massive array manipulations, statistics, signal processing, machine learning, etc.

Zenodo (CERN European Organization for Nuclear Research)
Forschungszentrum Jülich (DE), Dienstleistungszentrum Ländlicher Raum (DE), Kentucky imaging Technologies (United States) (US)
Openalex Percentile: Top 59%
Computational Physics and Python Applications
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

Accelerating massive data processing in Python with Heat · Zenodo (CERN European Organization for Nuclear Research) (2024) | TGRS Research Map | TGRS