Stable Version
Related Software
- Armadillo - CPU focused C++ library for linear algebra & scientific computing
- ensmallen - fast library for non-linear numerical optimisation
Installation Notes
- See the README file in the .tar.xz package for full installation instructions
- If you encounter any bugs or regressions, please report them
-
If you use Bandicoot in your research and/or software, please cite the associated papers;
citations are useful for the continued development and maintenance of the library
-
Linux based operating systems (eg. Fedora, Ubuntu, Red Hat, SUSE, Debian, etc)
-
Before installing Bandicoot, first install:
- OpenBLAS along with the corresponding development/header files
- the CUDA toolkit, if using the CUDA backend
- OpenCL libraries and runtime, if using the OpenCL backend (consult your system package manager)
- clBLAS along with the corresponding development/header files, if using the OpenCL backend
-
Recommended packages to install before installing Bandicoot:
- Fedora & Red Hat:
- Install the cmake and openblas-devel packages
- For the OpenCL backend, install opencl-headers, and one of: intel-opencl, rocm-opencl, or another OpenCL runtime
- For the OpenCL backend, clBLAS is not available and will need to be installed manually
- For the CUDA backend, enable the non-free RPM Fusion repository, and install the xorg-x11-drv-nvidia-cuda, xorg-x11-drv-nvidia-cuda-libs, and xorg-x11-nvidia-cuda-devel packages
- Ubuntu & Debian:
- Install the cmake and libopenblas-dev packages
- For the OpenCL backend, install opencl-headers, libclblas-dev, and one of: intel-opencl-icd, beignet-opencl-icd, nvidia-opencl-icd, or pocl-opencl-icd
- For the CUDA backend, install nvidia-cuda-toolkit and nvidia-cuda-dev
-
macOS
-
The "Accelerate" framework is used for accessing BLAS and LAPACK functions;
see the README file in the package for more information
-
OpenCL support is installed automatically with Xcode
-
clBLAS can be installed via the Homebrew package manager: brew install clblas
-
CUDA support can be installed via the NVIDIA-provided installers
-
Windows
-
Bandicoot has so far not been thoroughly tested on Windows.
Contributions to improve Windows support are appreciated.
-
Caveat:
for any high performance scientific/engineering workloads, we strongly recommend using a Linux based operating system