30143

Bandicoot: A Templated C++ Library for GPU Linear Algebra

Ryan R. Curtin, Marcus Edel, Conrad Sanderson
NumFOCUS, USA
arXiv:2508.11385 [cs.MS], (15 Aug 2025)

@misc{curtin2025bandicoottemplatedclibrary,

   title={Bandicoot: A Templated C++ Library for GPU Linear Algebra},

   author={Ryan R. Curtin and Marcus Edel and Conrad Sanderson},

   year={2025},

   eprint={2508.11385},

   archivePrefix={arXiv},

   primaryClass={cs.MS},

   url={https://arxiv.org/abs/2508.11385}

}

We introduce the Bandicoot C++ library for linear algebra and scientific computing on GPUs, overviewing its user interface and performance characteristics, as well as the technical details of its internal design. Bandicoot is the GPU-enabled counterpart to the well-known Armadillo C++ linear algebra library, aiming to allow users to take advantage of GPU-accelerated computation for their existing codebases without significant changes. Exploiting similar internal template meta-programming techniques that Armadillo uses, Bandicoot is able to provide compile-time optimisation of mathematical expressions within user code, leading to more efficient execution. Empirical evaluations show that Bandicoot can provide significant speedups over Armadillo-based CPU-only computation. Bandicoot is available and is distributed as open-source software under the permissive Apache 2.0 license.
No votes yet.
Please wait...

You must be logged in to post a comment.

* * *

* * *

HGPU group © 2010-2025 hgpu.org

All rights belong to the respective authors

Contact us: