@@ -129,11 +129,11 @@ if (${BUILD_TYPE} STREQUAL "dev")
129
129
endif ()
130
130
else ()
131
131
if (MSVC )
132
- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /O2" )
133
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /O2" )
132
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /O2 /DNDEBUG " )
133
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /O2 /DNDEBUG " )
134
134
else ()
135
- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2" )
136
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2" )
135
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2 -DNDEBUG " )
136
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -DNDEBUG " )
137
137
endif ()
138
138
endif ()
139
139
@@ -186,48 +186,11 @@ else(MSVC)
186
186
endif (NOT APPLE )
187
187
endif (MSVC )
188
188
189
- if (USE_OPENMP)
190
- include (FindOpenMP)
191
- if (OPENMP_FOUND)
192
- set (CMAKE_C_FLAGS "${OpenMP_C_FLAGS} ${CMAKE_C_FLAGS} " )
193
- set (CMAKE_CXX_FLAGS "${OpenMP_CXX_FLAGS} ${CMAKE_CXX_FLAGS} " )
194
- endif (OPENMP_FOUND)
195
- message (STATUS "Build with OpenMP." )
196
- endif (USE_OPENMP)
197
-
198
189
if (NOT CMAKE_SYSTEM_PROCESSOR MATCHES "(x86)|(X86)|(amd64)|(AMD64)" )
199
190
message (STATUS "Disabling LIBXSMM on ${CMAKE_SYSTEM_PROCESSOR} ." )
200
191
set (USE_LIBXSMM OFF )
201
192
endif ()
202
193
203
- if (USE_LIBXSMM)
204
- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DUSE_LIBXSMM -DDGL_CPU_LLC_SIZE=40000000 -D__BLAS=0" )
205
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DUSE_LIBXSMM -DDGL_CPU_LLC_SIZE=40000000 -D__BLAS=0" )
206
- message (STATUS "Build with LIBXSMM optimization." )
207
- endif (USE_LIBXSMM)
208
-
209
- if ((NOT MSVC ) AND USE_EPOLL)
210
- INCLUDE (CheckIncludeFile)
211
- check_include_file("sys/epoll.h" EPOLL_AVAILABLE)
212
- if (EPOLL_AVAILABLE)
213
- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DUSE_EPOLL" )
214
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DUSE_EPOLL" )
215
- else ()
216
- message (WARNING "EPOLL is not available on this platform..." )
217
- endif ()
218
- endif ()
219
-
220
- # To compile METIS correct for DGL.
221
- if (MSVC )
222
- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /DIDXTYPEWIDTH=64 /DREALTYPEWIDTH=32" )
223
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DIDXTYPEWIDTH=64 /DREALTYPEWIDTH=32" )
224
- else (MSVC )
225
- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DIDXTYPEWIDTH=64 -DREALTYPEWIDTH=32" )
226
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DIDXTYPEWIDTH=64 -DREALTYPEWIDTH=32" )
227
- endif (MSVC )
228
-
229
- # configure minigun
230
- add_definitions (-DENABLE_PARTIAL_FRONTIER=0) # disable minigun partial frontier compile
231
194
# Source file lists
232
195
file (GLOB DGL_SRC
233
196
src/*.cc
@@ -256,6 +219,12 @@ else()
256
219
endif ()
257
220
list (APPEND DGL_SRC ${DGL_RPC_SRC} )
258
221
222
+ if (USE_OPENMP)
223
+ find_package (OpenMP REQUIRED)
224
+ list (APPEND DGL_LINKER_LIBS OpenMP::OpenMP_CXX)
225
+ message (STATUS "Build with OpenMP." )
226
+ endif (USE_OPENMP)
227
+
259
228
# Configure cuda
260
229
if (USE_CUDA)
261
230
file (GLOB_RECURSE DGL_CUDA_SRC
@@ -279,6 +248,16 @@ else(USE_CUDA)
279
248
add_library (dgl SHARED ${DGL_SRC} )
280
249
endif (USE_CUDA)
281
250
251
+ if ((NOT MSVC ) AND USE_EPOLL)
252
+ INCLUDE (CheckIncludeFile)
253
+ check_include_file("sys/epoll.h" EPOLL_AVAILABLE)
254
+ if (EPOLL_AVAILABLE)
255
+ target_compile_definitions (dgl PRIVATE USE_EPOLL)
256
+ else ()
257
+ message (WARNING "EPOLL is not available on this platform..." )
258
+ endif ()
259
+ endif ()
260
+
282
261
# include directories
283
262
target_include_directories (dgl PRIVATE "include" )
284
263
# check for conda includes
@@ -351,18 +330,26 @@ else(EXTERNAL_NANOFLANN_PATH)
351
330
endif (EXTERNAL_NANOFLANN_PATH)
352
331
353
332
if (USE_LIBXSMM)
333
+ target_compile_definitions (dgl PRIVATE USE_LIBXSMM DGL_CPU_LLC_SIZE=40000000 __BLAS=0)
354
334
target_include_directories (dgl PRIVATE "third_party/libxsmm/include" )
335
+ message (STATUS "Build with LIBXSMM optimization." )
355
336
endif ()
356
337
338
+ # To compile METIS correct for DGL.
339
+ add_compile_definitions (IDXTYPEWIDTH=64 REALTYPEWIDTH=32)
357
340
if (EXTERNAL_METIS_PATH)
341
+ # To compile METIS correct for DGL.
342
+ if (MSVC )
343
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /DIDXTYPEWIDTH=64 /DREALTYPEWIDTH=32" )
344
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DIDXTYPEWIDTH=64 /DREALTYPEWIDTH=32" )
345
+ else (MSVC )
346
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DIDXTYPEWIDTH=64 -DREALTYPEWIDTH=32" )
347
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DIDXTYPEWIDTH=64 -DREALTYPEWIDTH=32" )
348
+ endif (MSVC )
358
349
find_package (METIS REQUIRED)
359
- if (NOT METIS_FOUND)
360
- message (FATAL_ERROR "Failed to find METIS library" )
361
- else ()
362
- message (STATUS "Found METIS library" )
363
- target_include_directories (dgl SYSTEM PUBLIC ${METIS_INCLUDE_DIR} )
364
- list (APPEND DGL_LINKER_LIBS ${METIS_LIBRARIES} )
365
- endif ()
350
+ message (STATUS "Found METIS library" )
351
+ target_include_directories (dgl SYSTEM PUBLIC ${METIS_INCLUDE_DIR} )
352
+ list (APPEND DGL_LINKER_LIBS ${METIS_LIBRARIES} )
366
353
else (EXTERNAL_METIS_PATH)
367
354
target_include_directories (dgl PRIVATE "third_party/METIS/include" )
368
355
# Compile METIS
@@ -391,8 +378,6 @@ endif()
391
378
392
379
# Compile gpu_cache
393
380
if (USE_CUDA)
394
- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DUSE_GPU_CACHE" )
395
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DUSE_GPU_CACHE" )
396
381
# Manually build gpu_cache because CMake always builds it as shared
397
382
file (GLOB gpu_cache_src
398
383
third_party/HugeCTR/gpu_cache/src/nv_gpu_cache.cu
@@ -406,7 +391,7 @@ endif(USE_CUDA)
406
391
407
392
# support PARALLEL_ALGORITHMS
408
393
if (LIBCXX_ENABLE_PARALLEL_ALGORITHMS)
409
- add_definitions (-DPARALLEL_ALGORITHMS )
394
+ target_compile_definitions (dgl PRIVATE PARALLEL_ALGORITHMS )
410
395
endif (LIBCXX_ENABLE_PARALLEL_ALGORITHMS)
411
396
412
397
target_link_libraries (dgl ${DGL_LINKER_LIBS} ${DGL_RUNTIME_LINKER_LIBS} )
0 commit comments