".github/git@developer.sourcefind.cn:OpenDAS/vision.git" did not exist on "704f831bdc9a0c7bb9f68f8b53a4ddedbf0b0846"
Unverified Commit 501b2b75 authored by Quan (Andy) Gan's avatar Quan (Andy) Gan Committed by GitHub
Browse files

[Bug] Multiple fixes for CUDA 11 support (#2333)



* multiple fixes

* fix CI

* fiddle

* revert stubs

* remove stubs

* poke

* remove linking of driver library

* minor
Co-authored-by: default avatarMinjie Wang <wmjlyjemaine@gmail.com>
parent d89f825d
......@@ -46,8 +46,8 @@ if(USE_CUDA)
# is fixed by https://github.com/NVIDIA/cub/commit/9143e47e048641aa0e6ddfd645bcd54ff1059939
# in 11.1.
message(STATUS "Detected CUDA of version ${CUDA_VERSION}. Use external CUB/Thrust library.")
list(INSERT CUDA_INCLUDE_DIRS 0 "${CMAKE_SOURCE_DIR}/third_party/thrust")
list(INSERT CUDA_INCLUDE_DIRS 0 "${CMAKE_SOURCE_DIR}/third_party/cub")
cuda_include_directories(BEFORE "${CMAKE_SOURCE_DIR}/third_party/thrust")
cuda_include_directories(BEFORE "${CMAKE_SOURCE_DIR}/third_party/cub")
endif()
endif(USE_CUDA)
......@@ -92,6 +92,7 @@ else(MSVC)
check_cxx_compiler_flag("-std=c++14" SUPPORT_CXX14)
set(CMAKE_C_FLAGS "-O2 -Wall -fPIC ${CMAKE_C_FLAGS}")
set(CMAKE_CXX_FLAGS "-O2 -Wall -fPIC -std=c++14 ${CMAKE_CXX_FLAGS}")
set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--warn-common ${CMAKE_SHARED_LINKER_FLAGS}")
endif(MSVC)
if(USE_OPENMP)
......
......@@ -30,6 +30,7 @@ def unpack_lib(name, libs) {
def build_dgl_linux(dev) {
init_git()
sh "bash tests/scripts/build_dgl.sh ${dev}"
sh "ls -lh /usr/lib/x86_64-linux-gnu/"
pack_lib("dgl-${dev}-linux", dgl_linux_libs)
}
......
......@@ -253,8 +253,9 @@ macro(dgl_config_cuda out_variable)
list(APPEND CMAKE_CUDA_FLAGS "${NVCC_FLAGS_EXTRA}")
list(APPEND DGL_LINKER_LIBS
${CUDA_CUDA_LIBRARY} ${CUDA_CUDART_LIBRARY}
${CUDA_CUBLAS_LIBRARIES} ${CUDA_cusparse_LIBRARY})
${CUDA_CUDART_LIBRARY}
${CUDA_CUBLAS_LIBRARIES}
${CUDA_cusparse_LIBRARY})
set(${out_variable} ${DGL_CUDA_SRC})
endmacro()
......@@ -41,28 +41,18 @@ macro(find_cuda use_cuda)
${CUDA_TOOLKIT_ROOT_DIR}/lib/x64
${CUDA_TOOLKIT_ROOT_DIR}/lib/Win32)
else(MSVC)
find_library(_CUDA_CUDA_LIBRARY cuda
PATHS ${CUDA_TOOLKIT_ROOT_DIR}
PATH_SUFFIXES lib lib64 targets/x86_64-linux/lib targets/x86_64-linux/lib/stubs lib64/stubs
NO_DEFAULT_PATH)
if(_CUDA_CUDA_LIBRARY)
set(CUDA_CUDA_LIBRARY ${_CUDA_CUDA_LIBRARY})
endif()
find_library(CUDA_NVRTC_LIBRARY nvrtc
PATHS ${CUDA_TOOLKIT_ROOT_DIR}
PATH_SUFFIXES lib lib64 targets/x86_64-linux/lib targets/x86_64-linux/lib/stubs lib64/stubs lib/x86_64-linux-gnu
NO_DEFAULT_PATH)
#find_library(CUDA_CUDNN_LIBRARY cudnn
# ${CUDA_TOOLKIT_ROOT_DIR}/lib64
# ${CUDA_TOOLKIT_ROOT_DIR}/lib)
#find_library(CUDA_CUDA_LIBRARY cuda
# PATHS ${CUDA_TOOLKIT_ROOT_DIR}
# PATH_SUFFIXES lib lib64 targets/x86_64-linux/lib
# NO_DEFAULT_PATH)
find_library(CUDA_CUBLAS_LIBRARY cublas
${CUDA_TOOLKIT_ROOT_DIR}/lib64
${CUDA_TOOLKIT_ROOT_DIR}/lib)
endif(MSVC)
message(STATUS "Found CUDA_TOOLKIT_ROOT_DIR=" ${CUDA_TOOLKIT_ROOT_DIR})
message(STATUS "Found CUDA_CUDA_LIBRARY=" ${CUDA_CUDA_LIBRARY})
#message(STATUS "Found CUDA_CUDA_LIBRARY=" ${CUDA_CUDA_LIBRARY})
message(STATUS "Found CUDA_CUDART_LIBRARY=" ${CUDA_CUDART_LIBRARY})
message(STATUS "Found CUDA_NVRTC_LIBRARY=" ${CUDA_NVRTC_LIBRARY})
#message(STATUS "Found CUDA_NVRTC_LIBRARY=" ${CUDA_NVRTC_LIBRARY})
#message(STATUS "Found CUDA_CUDNN_LIBRARY=" ${CUDA_CUDNN_LIBRARY})
message(STATUS "Found CUDA_CUBLAS_LIBRARY=" ${CUDA_CUBLAS_LIBRARY})
endif(CUDA_FOUND)
......
......@@ -222,26 +222,6 @@ IdArray Relabel_(const std::vector<IdArray>& arrays) {
template IdArray Relabel_<kDLCPU, int32_t>(const std::vector<IdArray>& arrays);
template IdArray Relabel_<kDLCPU, int64_t>(const std::vector<IdArray>& arrays);
///////////////////////////// NonZero /////////////////////////////
template <DLDeviceType XPU, typename IdType>
IdArray NonZero(BoolArray bool_arr) {
const IdType* bool_data = static_cast<IdType*>(bool_arr->data);
CHECK(bool_arr->ndim == 1) << "NonZero only supports 1D array";
std::vector<IdType> nonzero_indices;
for (int64_t i = 0; i < bool_arr->shape[0]; i++) {
if ((bool_data[i]) != 0) {
nonzero_indices.push_back(i);
}
}
return VecToIdArray(nonzero_indices, sizeof(IdType) * 8);
}
// TODO(Allen): Implement GPU version
template IdArray NonZero<kDLCPU, int32_t>(BoolArray bool_arr);
template IdArray NonZero<kDLCPU, int64_t>(BoolArray bool_arr);
} // namespace impl
} // namespace aten
} // namespace dgl
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment