-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
69 lines (51 loc) · 2.19 KB
/
CMakeLists.txt
File metadata and controls
69 lines (51 loc) · 2.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
cmake_minimum_required(VERSION 3.10)
# Project Details
project(GASPI)
enable_language(Fortran C CXX)
FIND_PACKAGE(MPI REQUIRED)
# Enable c++11 standard since we use Lambdas
set(CMAKE_CXX_STANDARD 11)
link_directories(external/DIST/lib64)
set(libSources
external/collectives/allreduceButterfly.cpp
external/collectives/allreduceButterflyDoubleBuffer.cpp
external/collectives/broadcast.cpp
external/collectives/counter.cpp
external/collectives/mailBoxGaspi.cpp
external/collectives/mailBoxLocal.cpp
external/collectives/queues.cpp
external/collectives/reduce.cpp
external/collectives/writer.cpp
)
add_library(collectives SHARED ${libSources})
target_include_directories(collectives PUBLIC
external/DIST/include
external/collectives
${MPI_INCLUDE_PATH})
target_link_libraries(collectives GPI2 ${MPI_C_LIBRARIES})
add_executable(testcoll run/benchmark.cpp)
target_include_directories(testcoll PUBLIC
external/DIST/include
external/collectives
${MPI_INCLUDE_PATH})
target_link_libraries(testcoll collectives GPI2 ${MPI_C_LIBRARIES})
add_executable(fwrap run/benchmark.f90
run/fortran_gaspi.f90
run/fortran_wrap.cpp)
target_include_directories(fwrap PUBLIC
external/DIST/include
external/collectives
${MPI_INCLUDE_PATH})
target_link_libraries(fwrap collectives GPI2 ${MPI_Fortran_LIBRARIES})
add_executable(broadcast run/benchmarkBroadcast.cpp)
target_include_directories(broadcast PUBLIC
external/DIST/include
external/collectives
${MPI_INCLUDE_PATH})
target_link_libraries(broadcast collectives GPI2 ${MPI_C_LIBRARIES})
add_executable(simplering run/simplering.cpp)
target_include_directories(simplering PUBLIC
external/DIST/include
external/collectives
${MPI_INCLUDE_PATH})
target_link_libraries(simplering collectives GPI2 ${MPI_C_LIBRARIES})