diff --git a/GPU/GPUTracking/Standalone/cmake/build.sh b/GPU/GPUTracking/Standalone/cmake/build.sh new file mode 100755 index 0000000000000..d2e4ae08c1575 --- /dev/null +++ b/GPU/GPUTracking/Standalone/cmake/build.sh @@ -0,0 +1,18 @@ +#!/bin/bash +if [[ -z $1 ]]; then + echo "Please provide Sourcedir as command line argument" + exit 1 +fi +mkdir -p standalone/build +pushd standalone/build +cp $1/GPU/GPUTracking/Standalone/cmake/config.cmake . +cat >> config.cmake << "EOF" +set(ENABLE_CUDA 1) +set(ENABLE_HIP 1) +set(ENABLE_OPENCL 1) +set(GPUCA_CONFIG_ONNX 1) +set(GPUCA_BUILD_EVENT_DISPLAY 0) +EOF +cmake -DCMAKE_INSTALL_PREFIX=../ $1/GPU/GPUTracking/Standalone +make ${JOBS+-j $JOBS} install +popd diff --git a/GPU/documentation/build-standalone.md b/GPU/documentation/build-standalone.md index d6aa45d749568..451ce659dc7f0 100644 --- a/GPU/documentation/build-standalone.md +++ b/GPU/documentation/build-standalone.md @@ -35,6 +35,8 @@ And there are plenty of additional settings to enable/disable event display, qa, This will create the `ca` binary in `~/standalone`, which is basically the same as the `o2-gpu-standalone-benchmark`, but built outside of O2. +As an exacmple you can also have a look at [build.sh](https://github.com/AliceO2Group/AliceO2/blob/dev/GPU/GPUTracking/Standalone/cmake/build.sh), which is used by the CI. + # Running The following command lines will use `./ca`, in case you use the executable from the O2 build, please replace by `o2-gpu-standalone-benchmark`. diff --git a/GPU/documentation/deterministic-mode.md b/GPU/documentation/deterministic-mode.md index 9c8db2930ceaa..53f8a1eb27711 100644 --- a/GPU/documentation/deterministic-mode.md +++ b/GPU/documentation/deterministic-mode.md @@ -12,6 +12,7 @@ This is steered by 3 options: - The `--PROCdeterministicGPUReconstruction` command line option / `GPU_proc.deterministicGPUReconstruction` `--configKeyValue` setting : Run time setting. - The `--RTCdeterministic` command line option / `GPU_proc_rtc.deterministic` `--configKeyValue` setting. (Auto-enabled by the `deterministicGPUReconstruction` setting.) : Compile-time setting for RTC code. +Note that enabling a single setting will not result in fully deterministic behavior! Each setting enables different deterministic aspects! In order to be fully deterministic, all settings must be enabled, where the RTC setting is automatically enabled if not explicitly disabled. `GPUCA_DETERMINISTIC_MODE` has multiple levels, which are described here: [FindO2GPU.cmake](https://github.com/AliceO2Group/AliceO2/blob/80a80a17f5a1d9cb77743e2a39b15b653fe1a4f9/dependencies/FindO2GPU.cmake#L72).