Hydra: a C++11 framework for data analysis in massively parallel platforms
A. A. Alves Jr, M. D. Sokoloff

TL;DR
Hydra is a C++11 framework optimized for high-performance data analysis on massively parallel platforms, leveraging modern C++ features and libraries to improve efficiency in high-energy physics computations.
Contribution
It introduces a header-only, templated C++11 framework that integrates with Thrust, OpenMP, CUDA, and TBB for efficient parallel data analysis in high-energy physics.
Findings
Demonstrates performance improvements in HEP data analysis tasks.
Provides a flexible, user-friendly interface for parallel computing.
Achieves compatibility across Linux systems with various parallel hardware.
Abstract
Hydra is a header-only, templated and C++11-compliant framework designed to perform the typical bottleneck calculations found in common HEP data analyses on massively parallel platforms. The framework is implemented on top of the C++11 Standard Library and a variadic version of the Thrust library and is designed to run on Linux systems, using OpenMP, CUDA and TBB enabled devices. This contribution summarizes the main features of Hydra. A basic description of the overall design, functionality and user interface is provided, along with some code examples and measurements of performance.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed and Parallel Computing Systems · Computational Physics and Python Applications · Parallel Computing and Optimization Techniques
