move NCCL to EXT_LIBS

This commit is contained in:
Marcin Junczys-Dowmunt 2018-12-06 16:35:33 -08:00
parent c7df914102
commit e327494e4d
4 changed files with 13 additions and 5 deletions

View File

@ -109,14 +109,22 @@ if(CUDA_FOUND)
LIST(APPEND CUDA_NVCC_FLAGS -DUSE_NCCL; )
# @TODO: Figure out how to set this to suppress PTXAS warning.
#set(CUDA8_GENCODE, "-gencode=arch=compute_35,code=sm_35 -gencode=arch=compute_50,code=sm_50 -gencode=arch=compute_60,code=sm_60 -gencode=arch=compute_61,code=sm_61")
# sets output to build, passes cuda location from FindCUDA, sets c++ compiler to the same one CMake uses.
add_custom_command(OUTPUT ${NCCL_STATIC}
COMMAND make src.build BUILDDIR="${CMAKE_CURRENT_BINARY_DIR}/nccl" CUDA_HOME="${CUDA_TOOLKIT_ROOT_DIR}" CXX="${CMAKE_CXX_COMPILER}"
COMMAND make src.build
BUILDDIR="${CMAKE_CURRENT_BINARY_DIR}/nccl"
CUDA_HOME="${CUDA_TOOLKIT_ROOT_DIR}"
#CUDA8_GENCODE="$CUDA8_GENCODE"
CXX="${CMAKE_CXX_COMPILER}"
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/src/3rd_party/nccl")
add_custom_target(nccl_target DEPENDS ${NCCL_STATIC})
add_library(nccl STATIC IMPORTED)
set_target_properties(nccl PROPERTIES IMPORTED_LOCATION ${NCCL_STATIC})
add_dependencies(nccl nccl_target)
set(EXT_LIBS ${EXT_LIBS} nccl)
# adds the resulting files to be removed by `make clean`
set_directory_properties(PROPERTY ADDITIONAL_MAKE_CLEAN_FILES ${CMAKE_CURRENT_BINARY_DIR}/nccl)

View File

@ -169,7 +169,7 @@ if(USE_STATIC_LIBS)
DEPENDS marian_train marian_decoder marian_scorer marian_vocab marian_conv)
add_custom_target(marian_tgz DEPENDS "${CMAKE_BINARY_DIR}/marian.tgz")
add_custom_target(philly DEPENDS marian_tgz marian_zip)
endif()
endif(USE_STATIC_LIBS)
if(COMPILE_SERVER)
add_executable(marian_server command/marian_server.cpp)
@ -181,7 +181,7 @@ endif(COMPILE_SERVER)
foreach(exec ${EXECUTABLES})
target_link_libraries(${exec} marian ${EXT_LIBS} ${EXT_LIBS} ${CMAKE_THREAD_LIBS_INIT})
if(CUDA_FOUND)
target_link_libraries(${exec} marian marian_cuda nccl ${EXT_LIBS} ${CMAKE_THREAD_LIBS_INIT})
target_link_libraries(${exec} marian marian_cuda ${EXT_LIBS} ${CMAKE_THREAD_LIBS_INIT})
cuda_add_cublas_to_target(${exec})
endif(CUDA_FOUND)
set_target_properties(${exec} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}")

View File

@ -4,7 +4,7 @@ add_executable(mnist_example mnist/mnist_ffnn.cpp)
foreach(exec iris_example mnist_example)
target_link_libraries(${exec} marian ${EXT_LIBS})
if(CUDA_FOUND)
target_link_libraries(${exec} marian marian_cuda nccl ${EXT_LIBS})
target_link_libraries(${exec} marian marian_cuda ${EXT_LIBS})
cuda_add_cublas_to_target(${exec})
endif(CUDA_FOUND)
set_target_properties(${exec} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}")

View File

@ -43,7 +43,7 @@ foreach(exec
)
target_link_libraries(${exec} marian ${EXT_LIBS} Catch)
if(CUDA_FOUND)
target_link_libraries(${exec} marian marian_cuda nccl ${EXT_LIBS} Catch)
target_link_libraries(${exec} marian marian_cuda ${EXT_LIBS} Catch)
cuda_add_cublas_to_target(${exec})
endif(CUDA_FOUND)