Warning, /acts/Detray/tests/benchmarks/cuda/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # This file is part of the ACTS project.
0002 #
0003 # Copyright (C) 2016 CERN for the benefit of the ACTS project
0004 #
0005 # This Source Code Form is subject to the terms of the Mozilla Public
0006 # License, v. 2.0. If a copy of the MPL was not distributed with this
0007 # file, You can obtain one at https://mozilla.org/MPL/2.0/.
0008
0009 # C++17 support for CUDA requires CMake 3.18.
0010 cmake_minimum_required(VERSION 3.18)
0011
0012 # Enable CUDA as a language.
0013 enable_language(CUDA)
0014
0015 # Set the CUDA build flags.
0016 include(detray-compiler-options-cuda)
0017
0018 # Build benchmarks for multiple algebra plugins
0019 # Currently vc and smatrix is not supported on device
0020 set(algebra_plugins "array")
0021 if(DETRAY_EIGEN_PLUGIN)
0022 list(APPEND algebra_plugins "eigen")
0023 endif()
0024
0025 foreach(algebra ${algebra_plugins})
0026 message(STATUS "Building 'detray::benchmark_cuda_${algebra}' component")
0027
0028 detray_add_executable(benchmark_cuda_propagation_${algebra}
0029 "propagation.cpp"
0030 LINK_LIBRARIES detray::benchmark_cuda_${algebra} detray::core_${algebra} vecmem::cuda detray::test_common
0031 )
0032
0033 target_compile_definitions(
0034 detray_benchmark_cuda_propagation_${algebra}
0035 PRIVATE ${algebra}=${algebra}
0036 )
0037
0038 target_compile_options(
0039 detray_benchmark_cuda_propagation_${algebra}
0040 PRIVATE "-march=native" "-ftree-vectorize"
0041 )
0042 endforeach()