@@ -20,7 +20,6 @@ dgl_option(BUILD_TYPE "Type of the build: dev, dogfood or release" "dev")
20
20
message (STATUS "Build for ${BUILD_TYPE} " )
21
21
22
22
dgl_option(USE_CUDA "Build with CUDA" OFF )
23
- dgl_option(USE_LIBURING "Build with liburing" ON )
24
23
dgl_option(TORCH_PYTHON_INTERPS "Python interpreter for building sub-components" python3)
25
24
26
25
# Conda build related options.
@@ -129,11 +128,11 @@ if (${BUILD_TYPE} STREQUAL "dev")
129
128
endif ()
130
129
else ()
131
130
if (MSVC )
132
- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /O2" )
133
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /O2" )
131
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /O2 /DNDEBUG " )
132
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /O2 /DNDEBUG " )
134
133
else ()
135
- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2" )
136
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2" )
134
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2 -DNDEBUG " )
135
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -DNDEBUG " )
137
136
endif ()
138
137
endif ()
139
138
@@ -186,48 +185,11 @@ else(MSVC)
186
185
endif (NOT APPLE )
187
186
endif (MSVC )
188
187
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
188
if (NOT CMAKE_SYSTEM_PROCESSOR MATCHES "(x86)|(X86)|(amd64)|(AMD64)" )
199
189
message (STATUS "Disabling LIBXSMM on ${CMAKE_SYSTEM_PROCESSOR} ." )
200
190
set (USE_LIBXSMM OFF )
201
191
endif ()
202
192
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
193
# Source file lists
232
194
file (GLOB DGL_SRC
233
195
src/*.cc
@@ -256,6 +218,12 @@ else()
256
218
endif ()
257
219
list (APPEND DGL_SRC ${DGL_RPC_SRC} )
258
220
221
+ if (USE_OPENMP)
222
+ find_package (OpenMP REQUIRED)
223
+ list (APPEND DGL_LINKER_LIBS OpenMP::OpenMP_CXX)
224
+ message (STATUS "Build with OpenMP." )
225
+ endif (USE_OPENMP)
226
+
259
227
# Configure cuda
260
228
if (USE_CUDA)
261
229
file (GLOB_RECURSE DGL_CUDA_SRC
@@ -279,6 +247,16 @@ else(USE_CUDA)
279
247
add_library (dgl SHARED ${DGL_SRC} )
280
248
endif (USE_CUDA)
281
249
250
+ if ((NOT MSVC ) AND USE_EPOLL)
251
+ INCLUDE (CheckIncludeFile)
252
+ check_include_file("sys/epoll.h" EPOLL_AVAILABLE)
253
+ if (EPOLL_AVAILABLE)
254
+ target_compile_definitions (dgl PRIVATE USE_EPOLL)
255
+ else ()
256
+ message (WARNING "EPOLL is not available on this platform..." )
257
+ endif ()
258
+ endif ()
259
+
282
260
# include directories
283
261
target_include_directories (dgl PRIVATE "include" )
284
262
# check for conda includes
@@ -351,18 +329,26 @@ else(EXTERNAL_NANOFLANN_PATH)
351
329
endif (EXTERNAL_NANOFLANN_PATH)
352
330
353
331
if (USE_LIBXSMM)
332
+ target_compile_definitions (dgl PRIVATE USE_LIBXSMM DGL_CPU_LLC_SIZE=40000000 __BLAS=0)
354
333
target_include_directories (dgl PRIVATE "third_party/libxsmm/include" )
334
+ message (STATUS "Build with LIBXSMM optimization." )
355
335
endif ()
356
336
337
+ # To compile METIS correct for DGL.
338
+ add_compile_definitions (IDXTYPEWIDTH=64 REALTYPEWIDTH=32)
357
339
if (EXTERNAL_METIS_PATH)
340
+ # To compile METIS correct for DGL.
341
+ if (MSVC )
342
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /DIDXTYPEWIDTH=64 /DREALTYPEWIDTH=32" )
343
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DIDXTYPEWIDTH=64 /DREALTYPEWIDTH=32" )
344
+ else (MSVC )
345
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DIDXTYPEWIDTH=64 -DREALTYPEWIDTH=32" )
346
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DIDXTYPEWIDTH=64 -DREALTYPEWIDTH=32" )
347
+ endif (MSVC )
358
348
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 ()
349
+ message (STATUS "Found METIS library" )
350
+ target_include_directories (dgl SYSTEM PUBLIC ${METIS_INCLUDE_DIR} )
351
+ list (APPEND DGL_LINKER_LIBS ${METIS_LIBRARIES} )
366
352
else (EXTERNAL_METIS_PATH)
367
353
target_include_directories (dgl PRIVATE "third_party/METIS/include" )
368
354
# Compile METIS
@@ -391,8 +377,6 @@ endif()
391
377
392
378
# Compile gpu_cache
393
379
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
380
# Manually build gpu_cache because CMake always builds it as shared
397
381
file (GLOB gpu_cache_src
398
382
third_party/HugeCTR/gpu_cache/src/nv_gpu_cache.cu
@@ -406,7 +390,7 @@ endif(USE_CUDA)
406
390
407
391
# support PARALLEL_ALGORITHMS
408
392
if (LIBCXX_ENABLE_PARALLEL_ALGORITHMS)
409
- add_definitions (-DPARALLEL_ALGORITHMS )
393
+ target_compile_definitions (dgl PRIVATE PARALLEL_ALGORITHMS )
410
394
endif (LIBCXX_ENABLE_PARALLEL_ALGORITHMS)
411
395
412
396
target_link_libraries (dgl ${DGL_LINKER_LIBS} ${DGL_RUNTIME_LINKER_LIBS} )
0 commit comments