Daily Shaarli

All links of one day in a single page.

March 24, 2023

Apache Arrow, A cross-language development platform for in-memory analytics
thumbnail

Apache Arrow est un projet qui développe des SDK dans la plupart des langages afin de manipuler efficacement des données tabulaires (vecteurs, matrices) en RAM.

Ils ont notamment des optimisations des calculs spécialement conçues pour les CPU et les GPU.

Par exemple, les données sont regroupées pour éviter les "jump" CPU et tenter de les faire tenir dans les différents caches.

Pour les GPU, Arrow utilise CUDA afin de paralléliser les calculs.

C'est utilisé dans la nouvelle version 2.0 de Pandas, la lib de référence en Python pour manipuler les données.

Les performances peuvent être jusqu'à 25x supérieurs (!)

(Merci Ocav pour le partage)