Loading graph_framework/CMakeLists.txt +1 −0 Original line number Diff line number Diff line Loading @@ -13,6 +13,7 @@ target_compile_definitions (rays $<$<PLATFORM_ID:Linux>:CXX="${CMAKE_CXX_COMPILER} -I${CMAKE_CURRENT_SOURCE_DIR} -std=gnu++2a"> $<$<PLATFORM_ID:Linux>:CXX_FLAGS="-g -fsanitize=undefined -fsanitize=float-divide-by-zero"> NC_FILE="${CMAKE_CURRENT_SOURCE_DIR}/../graph_tests/efit.nc" $<$<BOOL:${USE_CUDA}>:HEADERS=$<BUILD_INTERFACE:"${CMAKE_CURRENT_SOURCE_DIR}/special_functions.hpp">> ) target_include_directories (rays INTERFACE Loading graph_framework/cuda_context.hpp +19 −4 Original line number Diff line number Diff line Loading @@ -160,10 +160,25 @@ namespace gpu { } nvrtcProgram kernel_program; if constexpr (jit::is_complex<T> ()) { std::array<char *, 1> headers = { HEADERS }; std::array<char *, 1> includeNames = { "special_functions.hpp" }; check_nvrtc_error(nvrtcCreateProgram(&kernel_program, kernel_source.c_str(), NULL, headers.size(), headers.data(), includeNames.data()), "nvrtcCreateProgram"); } else { check_nvrtc_error(nvrtcCreateProgram(&kernel_program, kernel_source.c_str(), NULL, 0, NULL, NULL), "nvrtcCreateProgram"); } for (std::string &name : names) { check_nvrtc_error(nvrtcAddNameExpression(kernel_program, Loading Loading
graph_framework/CMakeLists.txt +1 −0 Original line number Diff line number Diff line Loading @@ -13,6 +13,7 @@ target_compile_definitions (rays $<$<PLATFORM_ID:Linux>:CXX="${CMAKE_CXX_COMPILER} -I${CMAKE_CURRENT_SOURCE_DIR} -std=gnu++2a"> $<$<PLATFORM_ID:Linux>:CXX_FLAGS="-g -fsanitize=undefined -fsanitize=float-divide-by-zero"> NC_FILE="${CMAKE_CURRENT_SOURCE_DIR}/../graph_tests/efit.nc" $<$<BOOL:${USE_CUDA}>:HEADERS=$<BUILD_INTERFACE:"${CMAKE_CURRENT_SOURCE_DIR}/special_functions.hpp">> ) target_include_directories (rays INTERFACE Loading
graph_framework/cuda_context.hpp +19 −4 Original line number Diff line number Diff line Loading @@ -160,10 +160,25 @@ namespace gpu { } nvrtcProgram kernel_program; if constexpr (jit::is_complex<T> ()) { std::array<char *, 1> headers = { HEADERS }; std::array<char *, 1> includeNames = { "special_functions.hpp" }; check_nvrtc_error(nvrtcCreateProgram(&kernel_program, kernel_source.c_str(), NULL, headers.size(), headers.data(), includeNames.data()), "nvrtcCreateProgram"); } else { check_nvrtc_error(nvrtcCreateProgram(&kernel_program, kernel_source.c_str(), NULL, 0, NULL, NULL), "nvrtcCreateProgram"); } for (std::string &name : names) { check_nvrtc_error(nvrtcAddNameExpression(kernel_program, Loading