Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feature: add RAJA kernel launches and basic CUDA support #1026

Open
wants to merge 100 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 27 commits
Commits
Show all changes
100 commits
Select commit Hold shift + click to select a range
b47db88
Clang format
johnbowen42 Oct 18, 2023
325f868
Cleanup print statements and commented code
johnbowen42 Oct 18, 2023
9c5d5b1
Refactor more raja for all loops
johnbowen42 Oct 25, 2023
4e9e7a9
Passing more tests
johnbowen42 Nov 29, 2023
a8c1dd6
tmp
johnbowen42 Dec 4, 2023
8b5dc3d
adding memcpy ops
johnbowen42 Dec 11, 2023
162052a
Add memcpy operations
johnbowen42 Dec 13, 2023
f35d677
Unit test passing for hexahedron
johnbowen42 Feb 8, 2024
bb181ec
enable more unit tests
johnbowen42 Feb 13, 2024
8d51959
Remove Cmakelists cruft
johnbowen42 Feb 13, 2024
dc9739f
Format RAJA launch kernels
johnbowen42 Feb 14, 2024
831ec04
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Feb 14, 2024
6aa995c
format RAJA kernels
johnbowen42 Feb 15, 2024
7c598cb
re-enable functional shape derivatives
johnbowen42 Feb 22, 2024
83f8bcd
Re-enable functional_basic_h1_vector
johnbowen42 Feb 22, 2024
fdb4b23
Fix more unit tests not compiling
johnbowen42 Feb 23, 2024
2480dc3
Convert lambda use to functors. Change signature of interpolate to a…
johnbowen42 Feb 26, 2024
96049f1
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Feb 26, 2024
61130b4
Refactor interpolate API for finite elements
johnbowen42 Feb 27, 2024
7838993
Change umpire usage
johnbowen42 Feb 27, 2024
0e02e98
Refactor boundary_integral_kernels to use CUDA. Make interpolate void
johnbowen42 Feb 28, 2024
e4224e2
Eliminate unused code
johnbowen42 Feb 28, 2024
bffae94
Fixing some unit tests
johnbowen42 Feb 29, 2024
4c1f6e5
Fix more unit tests
johnbowen42 Mar 4, 2024
274f432
Fix various solid unit tests
johnbowen42 Mar 5, 2024
fcbf4a8
fix thermal unit tests
johnbowen42 Mar 6, 2024
be9abc1
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Mar 6, 2024
72e6d30
TMP: use mfem vector/device to manage memory
johnbowen42 Mar 12, 2024
be05190
Fix functional with domain heap overflow
johnbowen42 Mar 14, 2024
caeec16
tmp
johnbowen42 Mar 14, 2024
865848e
Fix bug
johnbowen42 Mar 14, 2024
9836836
reenable test
johnbowen42 Mar 14, 2024
1bca89d
Fix compilation error
johnbowen42 Mar 14, 2024
f3d03f7
Fix unused variable and narrowing warnings
johnbowen42 Mar 18, 2024
10da80a
modify CMakeLists
johnbowen42 Mar 19, 2024
5dca932
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Mar 19, 2024
46bf790
fix compilation errors
johnbowen42 Mar 19, 2024
dddf080
Fix internal compiler error in functional shape derivatives. Add do…
johnbowen42 Mar 20, 2024
c47ded4
More docs and gcc build errors
johnbowen42 Mar 20, 2024
2c96666
add doc strings
johnbowen42 Mar 21, 2024
474d0bd
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Mar 21, 2024
da53cca
docs and format
johnbowen42 Mar 21, 2024
b4ec3c2
clang format
johnbowen42 Mar 21, 2024
25223b3
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Mar 22, 2024
7e823ff
remove headers
johnbowen42 Mar 22, 2024
e1014e7
delete more headers
johnbowen42 Mar 22, 2024
bec4cde
decrease level of optimization
johnbowen42 Mar 22, 2024
6a0a0d4
Merge branch 'develop' of github.com:LLNL/serac into feature/bowen/ra…
jamiebramwell Mar 25, 2024
e2165ea
Revert assemble()
jamiebramwell Mar 25, 2024
0f843d0
lower job slots to see if memory is the issue
white238 Mar 26, 2024
e5c91f6
remove unneeded options
white238 Mar 27, 2024
a6605b6
quiet warnings, unify defines
white238 Mar 27, 2024
84feae7
Merge branch 'develop' into feature/bowen/raja-for-all
white238 Mar 27, 2024
a9da335
style
white238 Mar 27, 2024
0c95469
remove using statements from elements
johnbowen42 Apr 9, 2024
7d58b5d
remove using statements from headers
johnbowen42 Apr 9, 2024
3545588
Move RAJA types into header, cleanup conditional compilation in evalu…
johnbowen42 Apr 10, 2024
5d7cdc7
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Apr 10, 2024
d77c24b
Format element headers
johnbowen42 Apr 10, 2024
5f4d580
increase parallelism in build script
johnbowen42 Apr 11, 2024
974d6c4
Add RAJA includes
johnbowen42 Apr 11, 2024
194f0c3
re-enable tests
johnbowen42 Apr 11, 2024
9d16d2c
Rename CUDA execution macro. Add comments. Remove unnecessary expli…
johnbowen42 Apr 11, 2024
2047461
Add cuda scalar unit test
johnbowen42 Apr 11, 2024
ced8b7b
clang style
johnbowen42 Apr 16, 2024
3665bdf
Add CUDA unit tests.
johnbowen42 Apr 29, 2024
d822b96
Merge branch 'develop' into feature/bowen/raja-for-all
white238 May 16, 2024
723062e
fix merge error
white238 May 16, 2024
98fc557
get bug_boundary_qoi to compile
white238 May 16, 2024
54d01c9
Merge branch 'develop' of github.com:LLNL/serac into feature/bowen/ra…
jamiebramwell May 28, 2024
4954a36
Merge branch 'develop' of github.com:LLNL/serac into feature/bowen/ra…
jamiebramwell May 28, 2024
13c7c20
Merge branch 'feature/bowen/raja-for-all' of github.com:LLNL/serac in…
johnbowen42 Aug 1, 2024
ea744ec
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Aug 1, 2024
27510b4
Enable functional comparisons unit test for CUDA
johnbowen42 Aug 29, 2024
6125197
Fix build issues
johnbowen42 Sep 6, 2024
e58dfab
blt submodule
johnbowen42 Sep 6, 2024
09f4282
Fix unit tests
johnbowen42 Sep 9, 2024
091ccf8
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Sep 9, 2024
1d8a6aa
fix compilation bug
johnbowen42 Sep 9, 2024
364b46a
fix compilation bug
johnbowen42 Sep 10, 2024
fa98c4c
Plum ExecutionSpace template parameter through more classes
johnbowen42 Sep 13, 2024
1e2f7dc
Add exec space parameter to finite elements
johnbowen42 Sep 13, 2024
7c4067f
attempt to fix ambiguous call error
johnbowen42 Sep 17, 2024
c062c52
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Sep 17, 2024
2ded3ec
delete whitespace changes
johnbowen42 Sep 17, 2024
e912aab
Merge branch 'feature/bowen/raja-v2' into feature/bowen/raja-for-all
johnbowen42 Sep 18, 2024
9721e45
tmp
johnbowen42 Sep 19, 2024
7ac6b25
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Sep 19, 2024
8995b61
Change cuda execution interface
johnbowen42 Sep 19, 2024
abac93d
remove whitespace changes
johnbowen42 Sep 19, 2024
bdafb37
Remove conditional compilation
johnbowen42 Sep 20, 2024
0a8b42e
Complete addition of execution space parameter to code
johnbowen42 Sep 24, 2024
17cd58c
Fix link error
johnbowen42 Sep 24, 2024
26b99de
Fix fit test
johnbowen42 Sep 25, 2024
151d793
Add docs and try to fix build error
johnbowen42 Sep 25, 2024
0dc4d88
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Sep 25, 2024
0a720b7
increase timeout
johnbowen42 Sep 25, 2024
7686463
Fix docs
johnbowen42 Sep 25, 2024
4b2916e
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Sep 26, 2024
01c8e6a
Merge branch 'develop' into feature/bowen/raja-for-all
johnbowen42 Sep 30, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,4 @@
*.orig
__pycache__/
view
*.cache*
14 changes: 12 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,17 @@ project(serac LANGUAGES CXX C)
# MPI is required in Serac.
set(ENABLE_MPI ON CACHE BOOL "")


if (ENABLE_CUDA)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I dont think this is needed, if it is then probably only in the codevelop build.

set(SERAC_USE_CUDA ON CACHE BOOL "")
set(RAJA_ENABLE_CUDA ON CACHE BOOL "")
set(AXOM_USE_CUDA ON CACHE BOOL "")
set(MFEM_USE_CUDA ON CACHE BOOL "")
endif()


if (NOT MPI_C_COMPILER OR NOT MPI_CXX_COMPILER)
message(FATAL_ERROR
message(FATAL_ERROR
"Serac requires MPI. It is required to provide the MPI C/C++ "
"compiler wrappers via the CMake variables, "
"MPI_C_COMPILER and MPI_CXX_COMPILER.")
Expand Down Expand Up @@ -131,6 +140,7 @@ include(${PROJECT_SOURCE_DIR}/cmake/thirdparty/SetupSeracThirdParty.cmake)

set(CMAKE_C_FLAGS ${SERAC_CMAKE_C_FLAGS})
set(CMAKE_CXX_FLAGS ${SERAC_CMAKE_CXX_FLAGS})
string(REPLACE " -Werror" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
johnbowen42 marked this conversation as resolved.
Show resolved Hide resolved

include(${PROJECT_SOURCE_DIR}/cmake/SeracConfigHeader.cmake)

Expand Down Expand Up @@ -196,7 +206,7 @@ if (SERAC_ENABLE_CODEVELOP)
)
endif()

install(EXPORT serac-targets
install(EXPORT serac-targets
NAMESPACE serac::
DESTINATION lib/cmake
)
17 changes: 14 additions & 3 deletions cmake/SeracMacros.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
#------------------------------------------------------------------------------
# Adds code checks for all cpp/hpp files recursively under the current directory
# that regex match INCLUDES and excludes any files that regex match EXCLUDES
#
#
# This creates the following parent build targets:
# check - Runs a non file changing style check and CppCheck
# style - In-place code formatting
Expand Down Expand Up @@ -71,7 +71,7 @@ macro(serac_add_code_checks)
blt_add_clang_tidy_target(NAME ${arg_PREFIX}_guidelines_check_tests
CHECKS "clang-analyzer-*,clang-analyzer-cplusplus*,cppcoreguidelines-*,-cppcoreguidelines-avoid-magic-numbers"
SRC_FILES ${_test_sources})

if (ENABLE_COVERAGE)
blt_add_code_coverage_target(NAME ${arg_PREFIX}_coverage
RUNNER ${CMAKE_MAKE_PROGRAM} test
Expand Down Expand Up @@ -121,17 +121,20 @@ endmacro(serac_convert_to_native_escaped_file_path)

##------------------------------------------------------------------------------
## serac_add_tests( SOURCES [source1 [source2 ...]]
## USE_CUDA [use CUDA if set]
## DEPENDS_ON [dep1 [dep2 ...]]
## NUM_MPI_TASKS [num tasks]
## NUM_OMP_THREADS [num threads])
##
## Creates an executable per given source and then adds the test to CTest
## If USE_CUDA is set, this macro will compile a CUDA enabled version of
## of each unit test.
##------------------------------------------------------------------------------

macro(serac_add_tests)

set(options )
set(singleValueArgs NUM_MPI_TASKS NUM_OMP_THREADS)
set(singleValueArgs NUM_MPI_TASKS NUM_OMP_THREADS USE_CUDA)
set(multiValueArgs SOURCES DEPENDS_ON)

# Parse the arguments to the macro
Expand All @@ -148,13 +151,21 @@ macro(serac_add_tests)

foreach(filename ${arg_SOURCES})
get_filename_component(test_name ${filename} NAME_WE)
if (DEFINED arg_USE_CUDA)
set(test_name "${test_name}_cuda")
endif()

blt_add_executable(NAME ${test_name}
SOURCES ${filename}
OUTPUT_DIR ${TEST_OUTPUT_DIRECTORY}
DEPENDS_ON ${arg_DEPENDS_ON}
FOLDER serac/tests )

if (DEFINED arg_USE_CUDA)
target_compile_definitions(${test_name} PUBLIC ENABLE_CUDA)
johnbowen42 marked this conversation as resolved.
Show resolved Hide resolved
target_compile_definitions(${test_name} PUBLIC USE_CUDA)
endif()

blt_add_test(NAME ${test_name}
COMMAND ${test_name}
NUM_MPI_TASKS ${arg_NUM_MPI_TASKS}
Expand Down
30 changes: 15 additions & 15 deletions cmake/thirdparty/SetupSeracThirdParty.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)
# Manually set includes as system includes
foreach(_target cuda_runtime cuda)
get_target_property(_dirs ${_target} INTERFACE_INCLUDE_DIRECTORIES)
set_property(TARGET ${_target}
set_property(TARGET ${_target}
APPEND PROPERTY INTERFACE_SYSTEM_INCLUDE_DIRECTORIES
"${_dirs}")
endforeach()
Expand Down Expand Up @@ -59,7 +59,7 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)
#------------------------------------------------------------------------------
if(UMPIRE_DIR)
serac_assert_is_directory(VARIABLE_NAME UMPIRE_DIR)
find_package(umpire REQUIRED NO_DEFAULT_PATH
find_package(umpire REQUIRED NO_DEFAULT_PATH
PATHS ${UMPIRE_DIR})
message(STATUS "Umpire support is ON")
set(UMPIRE_FOUND TRUE)
Expand All @@ -73,7 +73,7 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)
#------------------------------------------------------------------------------
if(RAJA_DIR)
serac_assert_is_directory(VARIABLE_NAME RAJA_DIR)
find_package(RAJA REQUIRED NO_DEFAULT_PATH
find_package(RAJA REQUIRED NO_DEFAULT_PATH
PATHS ${RAJA_DIR})
message(STATUS "RAJA support is ON")
set(RAJA_FOUND TRUE)
Expand All @@ -100,7 +100,7 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)

# Manually set includes as system includes
get_target_property(_dirs conduit::conduit INTERFACE_INCLUDE_DIRECTORIES)
set_property(TARGET conduit::conduit
set_property(TARGET conduit::conduit
APPEND PROPERTY INTERFACE_SYSTEM_INCLUDE_DIRECTORIES
"${_dirs}")

Expand Down Expand Up @@ -154,10 +154,10 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)
message(FATAL_ERROR "Serac+Caliper+CUDA requires CMake > 3.17.")
else()
find_package(CUDAToolkit REQUIRED)
endif()
endif()
endif()

find_package(caliper REQUIRED NO_DEFAULT_PATH
find_package(caliper REQUIRED NO_DEFAULT_PATH
PATHS ${CALIPER_DIR})
message(STATUS "Caliper support is ON")
set(CALIPER_FOUND TRUE)
Expand All @@ -173,7 +173,7 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)
# Note: Sundials is currently only used via MFEM and MFEM's target contains it's information
serac_assert_is_directory(VARIABLE_NAME SUNDIALS_DIR)
set(SERAC_USE_SUNDIALS ON CACHE BOOL "")

# Note: MFEM sets SUNDIALS_FOUND itself
if (NOT SERAC_ENABLE_CODEVELOP)
set(SUNDIALS_FOUND TRUE)
Expand All @@ -195,7 +195,7 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)

#### Store Data that MFEM clears
set(tpls_to_save AMGX AXOM CALIPER CAMP CONDUIT HDF5
HYPRE LUA METIS MFEM NETCDF PARMETIS PETSC RAJA
HYPRE LUA METIS MFEM NETCDF PARMETIS PETSC RAJA
SUPERLU_DIST STRUMPACK SUNDIALS TRIBOL UMPIRE)
foreach(_tpl ${tpls_to_save})
set(${_tpl}_DIR_SAVE "${${_tpl}_DIR}")
Expand Down Expand Up @@ -285,7 +285,7 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)
else()
add_subdirectory(${PROJECT_SOURCE_DIR}/mfem ${CMAKE_BINARY_DIR}/mfem)
endif()

set(MFEM_FOUND TRUE CACHE BOOL "" FORCE)

# Patch the mfem target with the correct include directories
Expand All @@ -310,7 +310,7 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)
serac_assert_is_directory(VARIABLE_NAME AXOM_DIR)

find_package(axom REQUIRED
NO_DEFAULT_PATH
NO_DEFAULT_PATH
PATHS ${AXOM_DIR}/lib/cmake)

message(STATUS "Axom support is ON")
Expand Down Expand Up @@ -431,7 +431,7 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)
serac_assert_is_directory(VARIABLE_NAME TRIBOL_DIR)

find_package(tribol REQUIRED
NO_DEFAULT_PATH
NO_DEFAULT_PATH
PATHS ${TRIBOL_DIR}/lib/cmake)

if(TARGET tribol)
Expand All @@ -449,7 +449,7 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)
else()
set(TRIBOL_FOUND OFF)
endif()

message(STATUS "Tribol support is " ${TRIBOL_FOUND})
else()
set(ENABLE_FORTRAN OFF CACHE BOOL "" FORCE)
Expand All @@ -468,7 +468,7 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)
endif()

add_subdirectory(${tribol_repo_dir} ${CMAKE_BINARY_DIR}/tribol)

target_include_directories(redecomp PUBLIC
$<BUILD_INTERFACE:${tribol_repo_dir}/src>
)
Expand All @@ -477,7 +477,7 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)
$<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/tribol/include>
$<INSTALL_INTERFACE:include>
)

set(TRIBOL_FOUND TRUE CACHE BOOL "" FORCE)
set(ENABLE_FORTRAN ON CACHE BOOL "" FORCE)
endif()
Expand Down Expand Up @@ -509,7 +509,7 @@ if (NOT SERAC_THIRD_PARTY_LIBRARIES_FOUND)
# This flag is empty due to us not enabling fortran but we need to strip it
# so it doesn't propagate in our project
if("${OpenMP_Fortran_FLAGS}" STREQUAL "")
set(OpenMP_Fortran_FLAGS "$<$<NOT:$<COMPILE_LANGUAGE:Fortran>>:-fopenmp=libomp>;$<$<COMPILE_LANGUAGE:Fortran>:-fopenmp>")
set(OpenMP_Fortran_FLAGS "-fopenmp")#"$<$<NOT:$<COMPILE_LANGUAGE:Fortran>>:-fopenmp=libomp>;$<$<COMPILE_LANGUAGE:Fortran>:-fopenmp>")
johnbowen42 marked this conversation as resolved.
Show resolved Hide resolved
endif()

foreach(_target axom)
Expand Down
19 changes: 13 additions & 6 deletions host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.cmake
johnbowen42 marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -30,13 +30,15 @@ if(DEFINED ENV{SPACK_CC})
else()

set(CMAKE_C_COMPILER "/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/bin/clang" CACHE PATH "")
#set(CMAKE_C_COMPILER "/usr/tce/packages/clang/clang-13.0.1-gcc-8.3.1/bin/clang" CACHE PATH "")

set(CMAKE_CXX_COMPILER "/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/bin/clang++" CACHE PATH "")
#set(CMAKE_CXX_COMPILER "/usr/tce/packages/clang/clang-13.0.1-gcc-8.3.1/bin/clang++" CACHE PATH "")

set(CMAKE_Fortran_COMPILER "/usr/tce/packages/gcc/gcc-8.3.1/bin/gfortran" CACHE PATH "")

endif()

#-fopenmp -gdwarf-4 -fgpu-rdc
set(CMAKE_C_STANDARD_LIBRARIES "-lgfortran" CACHE STRING "")

set(CMAKE_CXX_STANDARD_LIBRARIES "-lgfortran" CACHE STRING "")
Expand Down Expand Up @@ -69,29 +71,34 @@ set(BLT_MPI_COMMAND_APPEND "mpibind" CACHE STRING "")
# Cuda
#------------------------------------------------

set(CUDAToolkit_ROOT "/usr/tce/packages/cuda/cuda-11.2.0" CACHE PATH "")
set(CUDAToolkit_ROOT "/usr/tce/packages/cuda/cuda-12.0.0" CACHE PATH "")
johnbowen42 marked this conversation as resolved.
Show resolved Hide resolved
#set(CUDAToolkit_ROOT "/usr/tce/packages/cuda/cuda-10.1.105" CACHE PATH "")

set(CMAKE_CUDA_COMPILER "${CUDAToolkit_ROOT}/bin/nvcc" CACHE PATH "")

set(CMAKE_CUDA_HOST_COMPILER "${CMAKE_CXX_COMPILER}" CACHE PATH "")

set(CUDA_TOOLKIT_ROOT_DIR "/usr/tce/packages/cuda/cuda-11.2.0" CACHE PATH "")
set(CUDA_TOOLKIT_ROOT_DIR "/usr/tce/packages/cuda/cuda-12.0.0" CACHE PATH "")
#set(CUDA_TOOLKIT_ROOT_DIR "/usr/tce/packages/cuda/cuda-10.1.105" CACHE PATH "")

set(CMAKE_CUDA_ARCHITECTURES "70" CACHE STRING "")

set(ENABLE_OPENMP ON CACHE BOOL "")

set(ENABLE_CUDA ON CACHE BOOL "")

set(CMAKE_CUDA_SEPARABLE_COMPILATION ON CACHE BOOL "")
set(ENABLE_CLANG_CUDA OFF CACHE BOOL "")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please remove any setting of clang cuda


set(CMAKE_CUDA_FLAGS " --expt-extended-lambda --expt-relaxed-constexpr " CACHE STRING "")

set(CMAKE_CUDA_ARCHITECTURES "70" CACHE STRING "")
set(CMAKE_CUDA_SEPARABLE_COMPILATION ON CACHE BOOL "")

#set(CMAKE_CUDA_FLAGS " --expt-extended-lambda --expt-relaxed-constexpr " CACHE STRING "")
#set(CMAKE_CUDA_FLAGS "-fopenmp" CACHE STRING "")

# nvcc does not like gtest's 'pthreads' flag

set(gtest_disable_pthreads ON CACHE BOOL "")
set(gtest_disable_pthreads OFF CACHE BOOL "")
johnbowen42 marked this conversation as resolved.
Show resolved Hide resolved

set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3/lib64;/usr/tce/packages/gcc/gcc-4.9.3/lib64/gcc/powerpc64le-unknown-linux-gnu/4.9.3;/usr/tce/packages/gcc/gcc-4.9.3/gnu/lib64;/usr/tce/packages/gcc/gcc-4.9.3/gnu/lib64/gcc/powerpc64le-unknown-linux-gnu/4.9.3" CACHE STRING "")

Expand Down
Loading