Skip to content

acts-project/algebra-plugins

Folders and files

NameName
Last commit message
Last commit date
Mar 24, 2022
Feb 3, 2022
Nov 26, 2021
Feb 3, 2022
Apr 26, 2022
Apr 24, 2022
Apr 8, 2022
Apr 8, 2022
Oct 20, 2021
May 12, 2021
Feb 4, 2022
May 12, 2021
Apr 1, 2022

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

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_CUSTOM_SCALARTYPE: Scalar value type (float or double, double by default)
  • 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)
    • VECMEM: Plugin using VecMem (OFF by default)
  • ALGEBRA_PLUGINS_SETUP_<XXX>: Boolean to turn on/off the explicit "setup" of the externals (GOOGLETEST, EIGEN3, VC and VECMEM)
  • ALGEBRA_PLUGINS_USE_SYSTEM_<XXX>: Boolean configuring how to set up a given external
    • ON: The external 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)