Skip to content

acts-project/algebra-plugins

Folders and files

NameName
Last commit message
Last commit date
Jul 23, 2024
Apr 24, 2024
Apr 12, 2024
Jan 22, 2024
Jul 24, 2024
Apr 24, 2024
Apr 24, 2024
Apr 24, 2024
Apr 24, 2024
Oct 20, 2021
Feb 3, 2023
Apr 12, 2024
Apr 12, 2024
Oct 14, 2023
May 12, 2021
May 2, 2023

Repository files navigation

algebra-plugins

This repository provides different algebra plugins with minimal functionality for the R&D projects detray and traccc.

Backend CPU CUDA SYCL
cmath
Eigen
SMatrix
VC
Fastor

Building

To build it standalone, run e.g.

git clone https://github.com/acts-project/algebra-plugins.git
cmake -DCMAKE_BUILD_TYPE=Release -S algebra-plugins -B algebra-plugins-build
cmake --build algebra-plugins-build

Available options:

  • ALGEBRA_PLUGINS_INCLUDE_<XXX>: Boolean to turn on/off the build of one of the following plugins:
    • EIGEN: Plugin using Eigen (OFF by default)
    • SMATRIX: Plugin using SMatrix (OFF by default)
    • VC: Plugin using Vc (OFF by default)
    • FASTOR: Plugin using Fastor (OFF by default)
    • VECMEM: Plugin using VecMem (OFF by default)
  • ALGEBRA_PLUGINS_USE_SYSTEM_LIBS: Boolean configuring whether to search for all external libraries "on the system" or not
  • ALGEBRA_PLUGINS_SETUP_<XXX>: Boolean to turn on/off the explicit "setup" of the external libraries (GOOGLETEST, BENCHMARK, EIGEN3, VC, FASTOR, and VECMEM)
  • ALGEBRA_PLUGINS_USE_SYSTEM_<XXX>: Boolean configuring how to set up a given external library
    • ON: The external library is searched for "on the system" using find_package;
    • OFF: The package is set up for build as part of this project, using FetchContent.
  • ALGEBRA_PLUGINS_BUILD_TESTING: Turn the build/setup of the unit tests on/off (ON by default)