From 212018db05557d921bb390593abf3814a0d38347 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A9ter=20Kardos?= Date: Tue, 26 Jul 2022 17:01:35 +0200 Subject: [PATCH 1/7] add a dummy file to perftests --- tests/regression/CMakeLists.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/regression/CMakeLists.txt b/tests/regression/CMakeLists.txt index 2bc679863..beb41a63a 100644 --- a/tests/regression/CMakeLists.txt +++ b/tests/regression/CMakeLists.txt @@ -1,5 +1,11 @@ add_executable(perftests) +file(WRITE + "${CMAKE_BINARY_DIR}/perftests_dummy.cpp" + "// This file is needed in some cases because CMake targets must have at least one .cpp source." +) +target_sources(perftests PRIVATE "${CMAKE_BINARY_DIR}/perftests_dummy.cpp") + target_link_libraries(perftests regression_main) if(TARGET threadpool_hpx) From b243748d684cca7daad82e7f8eaa2eb6f9ab2d7d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A9ter=20Kardos?= Date: Wed, 27 Jul 2022 10:34:07 +0200 Subject: [PATCH 2/7] use current binary directory instead of root dir Co-authored-by: Hannes Vogt --- tests/regression/CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/regression/CMakeLists.txt b/tests/regression/CMakeLists.txt index beb41a63a..bc4510c49 100644 --- a/tests/regression/CMakeLists.txt +++ b/tests/regression/CMakeLists.txt @@ -1,10 +1,10 @@ add_executable(perftests) file(WRITE - "${CMAKE_BINARY_DIR}/perftests_dummy.cpp" + "${CMAKE_CURRENT_BINARY_DIR}/dummy.cpp" "// This file is needed in some cases because CMake targets must have at least one .cpp source." ) -target_sources(perftests PRIVATE "${CMAKE_BINARY_DIR}/perftests_dummy.cpp") +target_sources(perftests PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/dummy.cpp") target_link_libraries(perftests regression_main) From c0dfae8c12cfa088032342b91300657b399911b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A9ter=20Kardos?= Date: Wed, 10 Aug 2022 18:51:12 +0200 Subject: [PATCH 3/7] setup perftests itself as a gridtools target --- tests/regression/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/regression/CMakeLists.txt b/tests/regression/CMakeLists.txt index bc4510c49..1e2c56380 100644 --- a/tests/regression/CMakeLists.txt +++ b/tests/regression/CMakeLists.txt @@ -5,6 +5,8 @@ file(WRITE "// This file is needed in some cases because CMake targets must have at least one .cpp source." ) target_sources(perftests PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/dummy.cpp") +target_link_libraries(perftests GridToolsTest) +gridtools_setup_target(perftests CUDA_ARCH ${GT_CUDA_ARCH}) target_link_libraries(perftests regression_main) From 4d0007964ed8c160b15aae22c0ea013c5fa28e99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A9ter=20Kardos?= Date: Wed, 10 Aug 2022 20:29:12 +0200 Subject: [PATCH 4/7] lets try this? --- tests/regression/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/regression/CMakeLists.txt b/tests/regression/CMakeLists.txt index 1e2c56380..85fbc83e3 100644 --- a/tests/regression/CMakeLists.txt +++ b/tests/regression/CMakeLists.txt @@ -5,7 +5,7 @@ file(WRITE "// This file is needed in some cases because CMake targets must have at least one .cpp source." ) target_sources(perftests PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/dummy.cpp") -target_link_libraries(perftests GridToolsTest) +target_link_libraries(perftests gridtools GridToolsTest) gridtools_setup_target(perftests CUDA_ARCH ${GT_CUDA_ARCH}) target_link_libraries(perftests regression_main) From d1166928d6675c84b235dbcca6b4afc25c8844f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A9ter=20Kardos?= Date: Thu, 11 Aug 2022 17:40:10 +0200 Subject: [PATCH 5/7] link to gridtools cuda to force change of cuda arch flags --- tests/regression/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/regression/CMakeLists.txt b/tests/regression/CMakeLists.txt index 85fbc83e3..98724f1a5 100644 --- a/tests/regression/CMakeLists.txt +++ b/tests/regression/CMakeLists.txt @@ -5,7 +5,7 @@ file(WRITE "// This file is needed in some cases because CMake targets must have at least one .cpp source." ) target_sources(perftests PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/dummy.cpp") -target_link_libraries(perftests gridtools GridToolsTest) +target_link_libraries(perftests gridtools _gridtools_cuda) gridtools_setup_target(perftests CUDA_ARCH ${GT_CUDA_ARCH}) target_link_libraries(perftests regression_main) From 1aff41cf68f215adf7e91d92655c228fcbd385a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A9ter=20Kardos?= Date: Thu, 11 Aug 2022 17:52:28 +0200 Subject: [PATCH 6/7] set only cuda arch but not setup target --- tests/regression/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/regression/CMakeLists.txt b/tests/regression/CMakeLists.txt index 98724f1a5..924522a77 100644 --- a/tests/regression/CMakeLists.txt +++ b/tests/regression/CMakeLists.txt @@ -6,7 +6,7 @@ file(WRITE ) target_sources(perftests PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/dummy.cpp") target_link_libraries(perftests gridtools _gridtools_cuda) -gridtools_setup_target(perftests CUDA_ARCH ${GT_CUDA_ARCH}) +gridtools_set_gpu_arch_on_target(perftests "${GT_CUDA_ARCH}") target_link_libraries(perftests regression_main) From 97a6631db1087c569b6371c1bf64dc6ecd6b2724 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A9ter=20Kardos?= Date: Thu, 11 Aug 2022 18:23:07 +0200 Subject: [PATCH 7/7] don't link to cuda on cpu targets --- tests/regression/CMakeLists.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/regression/CMakeLists.txt b/tests/regression/CMakeLists.txt index 924522a77..6602e9ef9 100644 --- a/tests/regression/CMakeLists.txt +++ b/tests/regression/CMakeLists.txt @@ -5,7 +5,9 @@ file(WRITE "// This file is needed in some cases because CMake targets must have at least one .cpp source." ) target_sources(perftests PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/dummy.cpp") -target_link_libraries(perftests gridtools _gridtools_cuda) +if (TARGET _gridtools_cuda) + target_link_libraries(perftests gridtools _gridtools_cuda) +endif() gridtools_set_gpu_arch_on_target(perftests "${GT_CUDA_ARCH}") target_link_libraries(perftests regression_main)