Awkward Arrays in Python, C++, and Numba

Jim Pivarski,Peter Elmer,David Lange
DOI: https://doi.org/10.1051/epjconf/202024505023
2020-07-03
Abstract:The Awkward Array library has been an important tool for physics analysis in Python since September 2018. However, some interface and implementation issues have been raised in Awkward Array's first year that argue for a reimplementation in C++ and Numba. We describe those issues, the new architecture, and present some examples of how the new interface will look to users. Of particular importance is the separation of kernel functions from data structure management, which allows a C++ implementation and a Numba implementation to share kernel functions, and the algorithm that transforms record-oriented data into columnar Awkward Arrays.
Mathematical Software,High Energy Physics - Experiment
What problem does this paper attempt to address?