mirror of
https://github.com/slsdetectorgroup/aare.git
synced 2026-06-04 15:58:42 +02:00
e894bdac9bbf8b74dbb9ead85025128e9567bd02
- Add bind_ClusterFinderCUDA.hpp with pybind11 bindings for ClusterFinderCUDA - Build CUDA bindings as separate _aare_cuda.so to avoid segfaults from mixing nvcc and gcc compiled code in the same shared object - Re-export CUDA classes onto _aare in __init__.py so user code uses `from aare import ClusterFinderCUDA` regardless of which .so hosts the class - Factory in ClusterFinder.py selects backend; RuntimeError if GPU requested on CPU-only build - Update python/CMakeLists.txt: _aare_cuda module gated behind AARE_CUDA and AARE_PYTHON_BINDINGS - Add validation notebook: ~20x speedup vs sequential ClusterFinder
aare
Data analysis library for PSI hybrid detectors
Documentation
Detailed documentation including installation can be found in Documentation
License
This project is licensed under the MPL-2.0 license. See the LICENSE file or https://www.mozilla.org/en-US/MPL/ for details.
Build and install
Prerequisites
- cmake >= 3.14
- C++17 compiler (gcc >= 8)
- python >= 3.10
Development install (for Python)
git clone git@github.com:slsdetectorgroup/aare.git --branch=v1 #or using http...
mkdir build
cd build
#configure using cmake
cmake ../aare -DAARE_PYTHON_BINDINGS=ON
#build (replace 4 with the number of threads you want to use)
make -j4
Now you can use the Python module from your build directory
import aare
f = aare.File('Some/File/I/Want_to_open_master_0.json')
To run from other folders either add the path to your conda environment using conda-build or add the module to your PYTHONPATH
export PYTHONPATH=path_to_aare/aare/build:$PYTHONPATH
Install using conda/mamba
#enable your env first!
conda install aare -c slsdetectorgroup # installs latest version
Install to a custom location and use in your project
Working example in: https://github.com/slsdetectorgroup/aare-examples
#build and install aare
git clone git@github.com:slsdetectorgroup/aare.git --branch=v1 #or using http...
mkdir build
cd build
#configure using cmake
cmake ../aare -DCMAKE_INSTALL_PREFIX=/where/to/put/aare
#build (replace 4 with the number of threads you want to use)
make -j4
#install
make install
#Now configure your project
cmake .. -DCMAKE_PREFIX_PATH=SOME_PATH
Local build of conda pkgs
conda build . --variants="{python: [3.11, 3.12, 3.13]}"
Languages
Jupyter Notebook
77.4%
C++
20%
Python
1.9%
CMake
0.7%