Skip to content
Snippets Groups Projects
Commit 698f704c authored by Frederik Hennig's avatar Frederik Hennig
Browse files

Prepare and test CUDA support

parent 8799550f
No related merge requests found
......@@ -15,18 +15,37 @@ foreach( TestID ${TestIDs} )
endforeach()
if( $CACHE{WALBERLA_BUILD_WITH_CUDA} )
find_package( CUDAToolkit )
# Workaround: CUDA headers are included in core/timing
target_link_libraries( TestBasicLbmScenariosCPU PRIVATE CUDA::cudart )
set( _codegen_suffixes hpp cu )
add_executable( TestBasicLbmScenariosCUDA TestBasicLbmScenarios.cpp )
walberla_generate_sources( TestBasicLbmScenariosCUDA SCRIPTS LbmAlgorithms.py SCRIPT_ARGS --target=cuda FILE_EXTENSIONS ${_codegen_suffixes} )
target_link_libraries( TestBasicLbmScenariosCUDA PRIVATE walberla::core walberla::blockforest walberla::field walberla::gpu walberla::geometry walberla::experimental CUDA::cudart )
add_dependencies( SfgTests TestBasicLbmScenariosCUDA )
foreach( TestID ${TestIDs} )
add_test( NAME "BasicLbmScenarios - CUDA - ${TestID}" COMMAND TestBasicLbmScenariosCUDA ${TestID} )
endforeach()
endif()
if( $CACHE{WALBERLA_BUILD_WITH_HIP} )
find_package(hip REQUIRED)
set( _codegen_suffixes hpp cpp )
add_executable( TestBasicLbmScenariosGPU TestBasicLbmScenarios.cpp )
walberla_generate_sources( TestBasicLbmScenariosGPU SCRIPTS LbmAlgorithms.py SCRIPT_ARGS --target=hip FILE_EXTENSIONS ${_codegen_suffixes} )
target_link_libraries( TestBasicLbmScenariosGPU PRIVATE walberla::core walberla::blockforest walberla::field walberla::gpu walberla::geometry walberla::experimental hip::host )
add_executable( TestBasicLbmScenariosHIP TestBasicLbmScenarios.cpp )
walberla_generate_sources( TestBasicLbmScenariosHIP SCRIPTS LbmAlgorithms.py SCRIPT_ARGS --target=hip FILE_EXTENSIONS ${_codegen_suffixes} )
target_link_libraries( TestBasicLbmScenariosHIP PRIVATE walberla::core walberla::blockforest walberla::field walberla::gpu walberla::geometry walberla::experimental hip::host )
add_dependencies( SfgTests TestBasicLbmScenariosGPU )
add_dependencies( SfgTests TestBasicLbmScenariosHIP )
foreach( TestID ${TestIDs} )
add_test( NAME "BasicLbmScenarios - HIP - ${TestID}" COMMAND TestBasicLbmScenariosGPU ${TestID} )
add_test( NAME "BasicLbmScenarios - HIP - ${TestID}" COMMAND TestBasicLbmScenariosHIP ${TestID} )
endforeach()
endif()
cmake_minimum_required( VERSION 3.24 )
project( sfg-walberla-testsuite )
project( sfg-walberla-testsuite LANGUAGES CXX CUDA )
set(WALBERLA_BUILD_TESTS OFF CACHE BOOL "")
set(WALBERLA_BUILD_BENCHMARKS OFF CACHE BOOL "")
......
......@@ -7,13 +7,24 @@
},
"configurePresets": [
{
"name": "testsuite-dbg",
"name": "testsuite-dbg-cpu",
"binaryDir": "${sourceDir}/build/${presetName}",
"generator": "Ninja",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug",
"WALBERLA_BUILD_TESTS": false
}
},
{
"name": "testsuite-dbg-cuda",
"binaryDir": "${sourceDir}/build/${presetName}",
"generator": "Ninja",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug",
"WALBERLA_BUILD_TESTS": false,
"WALBERLA_BUILD_WITH_CUDA": true,
"CMAKE_CUDA_ARCHITECTURES": "native"
}
}
]
}
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment