PoissonSolver3DCylindricalGPU adalah pustaka yang dikembangkan untuk menyelesaikan persamaan Poisson 3 dimensi dalam sistem koordinat silinder dengan akselerator GPU
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

82 lines
2.2 KiB

6 years ago
# MakeLists files in this project can
# refer to the root source directory of the project as ${HELLO_SOURCE_DIR} and
# to the root binary directory of the project as ${HELLO_BINARY_DIR}.
cmake_minimum_required (VERSION 2.8.11)
project (3DPoissonSolverGPUTest)
find_package(CUDA)
if(NOT CUDA_FOUND)
message( FATAL_ERROR "NVIDIA CUDA package not found" )
else()
find_library(LIBCUDA_SO_PATH libcuda.so)
string(FIND ${LIBCUDA_SO_PATH} "-NOTFOUND" LIBCUDA_SO_PATH_NOTFOUND )
endif(NOT CUDA_FOUND)
message( STATUS "Building Poisson Solver with CUDA support" )
if(LIBCUDA_SO_PATH_NOTFOUND GREATER -1)
message( FATAL_ERROR "NVIDIA CUDA libcuda.so not found" )
endif(LIBCUDA_SO_PATH_NOTFOUND GREATER -1)
#set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/CMake/cuda" ${CMAKE_MODULE_PATH})
#find_package(CUDA QUIET REQUIRED)
6 years ago
set(PSLIBNAME libPoissonSolver3DGPU.so)
find_library(PSLIB ${PSLIBNAME})
6 years ago
string(FIND ${PSLIB} "-NOTFOUND" PSLIB_NOTFOUND )
if(PSLIB_NOTFOUND GREATER -1)
message( FATAL_ERROR "Poisson Solver Cuda Library libPoissonSolver3DGPU.so not found" )
endif(PSLIB_NOTFOUND GREATER -1)
#set(CUDA_ATTACH_VS_BUILD_RULE_TO_CUDA_FILE OFF)
# set(BUILD_SHARED_LIBS ON)
#list(APPEND CUDA_NVCC_FLAGS)
#cuda_add_executable(poissonsolvertest
# PoissonSolver3DGPUTest.cpp
#i)
# add_executable(poissonsolvergputest PoissonSolver3DGPUTest.cpp ${PSLIB})
# install(TARGETS poissonsolvergputest DESTINATION bin)
INCLUDE_DIRECTORIES(
${CMAKE_PREFIX_PATH}/include
)
6 years ago
set(CPP_SOURCE PoissonSolver3DGPUTest.cpp)
set(HEADERS PoissonSolver3DGPUTest.h)
enable_testing()
set(TARGET_NAME poissonsolvergputest)
#set(UNIT_TEST_LIST
# poissonsolver)
#foreach(NAME IN LISTS UNIT_TEST_LIST)
# list(APPEND UNIT_TEST_SOURCE_LIST ${NAME}.test.cpp)
#endforeach()
add_executable(${TARGET_NAME}
PoissonSolver3DGPUTest.cpp
#main.cpp
#${UNIT_TEST_SOURCE_LIST}
)
target_link_libraries(${TARGET_NAME} ${PSLIB} ${LIBCUDA_SO_PATH})
install(TARGETS ${TARGET_NAME} DESTINATION bin)
#target_link_libraries(${TARGET_NAME}
# PUBLIC string_utils)i
#target_include_directories(${TARGET_NAME}
# PUBLIC external/catch2/)
#add_test(
# NAME ${TARGET_NAME}
# COMMAND ${TARGET_NAME} -o report.xml -r junit)