forked from mindspore-Ecosystem/mindspore
support all cuda version in a whl package
Signed-off-by: zhoufeng <zhoufeng54@huawei.com>
This commit is contained in:
parent
8af9d7c038
commit
b25cc0256f
|
@ -19,45 +19,18 @@ set(CPACK_PYTHON_VERSION ${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR})
|
||||||
|
|
||||||
if(ENABLE_GPU)
|
if(ENABLE_GPU)
|
||||||
set(CPACK_MS_BACKEND "ms")
|
set(CPACK_MS_BACKEND "ms")
|
||||||
set(CPACK_MS_TARGET "gpu or cpu")
|
|
||||||
if(BUILD_DEV_MODE)
|
|
||||||
# providing cuda11 version of dev package only
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore-cuda11-dev")
|
|
||||||
else()
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore-gpu")
|
|
||||||
endif()
|
|
||||||
elseif(ENABLE_D)
|
elseif(ENABLE_D)
|
||||||
set(CPACK_MS_BACKEND "ms")
|
set(CPACK_MS_BACKEND "ms")
|
||||||
set(CPACK_MS_TARGET "ascend or cpu")
|
|
||||||
if(BUILD_DEV_MODE)
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore-ascend-dev")
|
|
||||||
else()
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore-ascend")
|
|
||||||
endif()
|
|
||||||
elseif(ENABLE_CPU)
|
elseif(ENABLE_CPU)
|
||||||
set(CPACK_MS_BACKEND "ms")
|
set(CPACK_MS_BACKEND "ms")
|
||||||
set(CPACK_MS_TARGET "cpu")
|
|
||||||
if(BUILD_DEV_MODE)
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore-dev")
|
|
||||||
else()
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore")
|
|
||||||
endif()
|
|
||||||
elseif(ENABLE_ACL)
|
|
||||||
set(CPACK_MS_BACKEND "debug")
|
|
||||||
set(CPACK_MS_TARGET "ascend or gpu or cpu")
|
|
||||||
if(BUILD_DEV_MODE)
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore-ascend-dev")
|
|
||||||
else()
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore-ascend")
|
|
||||||
endif()
|
|
||||||
else()
|
else()
|
||||||
set(CPACK_MS_BACKEND "debug")
|
set(CPACK_MS_BACKEND "debug")
|
||||||
set(CPACK_MS_TARGET "ascend or gpu or cpu")
|
endif()
|
||||||
if(BUILD_DEV_MODE)
|
if(BUILD_DEV_MODE)
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore-dev")
|
# providing cuda11 version of dev package only
|
||||||
else()
|
set(CPACK_MS_PACKAGE_NAME "mindspore-dev")
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore")
|
else()
|
||||||
endif()
|
set(CPACK_MS_PACKAGE_NAME "mindspore")
|
||||||
endif()
|
endif()
|
||||||
include(CPack)
|
include(CPack)
|
||||||
|
|
||||||
|
@ -114,9 +87,10 @@ endif()
|
||||||
|
|
||||||
if(ENABLE_GPU)
|
if(ENABLE_GPU)
|
||||||
install(
|
install(
|
||||||
TARGETS mindspore_gpu
|
TARGETS mindspore_gpu LIBRARY
|
||||||
DESTINATION ${INSTALL_PLUGIN_DIR}
|
DESTINATION ${INSTALL_PLUGIN_DIR}
|
||||||
COMPONENT mindspore
|
COMPONENT mindspore
|
||||||
|
NAMELINK_SKIP
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@ -201,17 +175,17 @@ if(ENABLE_GPU)
|
||||||
if(ENABLE_MPI)
|
if(ENABLE_MPI)
|
||||||
install(
|
install(
|
||||||
TARGETS nvidia_collective
|
TARGETS nvidia_collective
|
||||||
DESTINATION ${INSTALL_LIB_DIR}
|
DESTINATION ${INSTALL_PLUGIN_DIR}/gpu${CUDA_VERSION}
|
||||||
COMPONENT mindspore
|
COMPONENT mindspore
|
||||||
)
|
)
|
||||||
if(CMAKE_SYSTEM_NAME MATCHES "Linux" AND GPU_BACKEND_CUDA)
|
if(CMAKE_SYSTEM_NAME MATCHES "Linux" AND GPU_BACKEND_CUDA)
|
||||||
install(FILES ${nccl_LIBPATH}/libnccl.so.2.7.6 DESTINATION ${INSTALL_LIB_DIR}
|
install(FILES ${nccl_LIBPATH}/libnccl.so.2.7.6 DESTINATION ${INSTALL_PLUGIN_DIR}/gpu${CUDA_VERSION}
|
||||||
RENAME libnccl.so.2 COMPONENT mindspore)
|
RENAME libnccl.so.2 COMPONENT mindspore)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
install(
|
install(
|
||||||
TARGETS cuda_ops
|
TARGETS cuda_ops
|
||||||
DESTINATION ${INSTALL_LIB_DIR}
|
DESTINATION ${INSTALL_PLUGIN_DIR}/gpu${CUDA_VERSION}
|
||||||
COMPONENT mindspore
|
COMPONENT mindspore
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
@ -220,7 +194,7 @@ if(ENABLE_D)
|
||||||
if(ENABLE_MPI)
|
if(ENABLE_MPI)
|
||||||
install(
|
install(
|
||||||
TARGETS ascend_collective
|
TARGETS ascend_collective
|
||||||
DESTINATION ${INSTALL_LIB_DIR}
|
DESTINATION ${INSTALL_PLUGIN_DIR}/ascend
|
||||||
COMPONENT mindspore
|
COMPONENT mindspore
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
@ -245,14 +219,14 @@ if(ENABLE_D OR ENABLE_ACL)
|
||||||
if(ENABLE_D)
|
if(ENABLE_D)
|
||||||
install(
|
install(
|
||||||
TARGETS hccl_plugin
|
TARGETS hccl_plugin
|
||||||
DESTINATION ${INSTALL_LIB_DIR}
|
DESTINATION ${INSTALL_PLUGIN_DIR}/ascend
|
||||||
COMPONENT mindspore
|
COMPONENT mindspore
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(ENABLE_ACL)
|
if(ENABLE_ACL)
|
||||||
install(
|
install(
|
||||||
TARGETS dvpp_utils
|
TARGETS dvpp_utils
|
||||||
DESTINATION ${INSTALL_LIB_DIR}
|
DESTINATION ${INSTALL_PLUGIN_DIR}/ascend
|
||||||
COMPONENT mindspore
|
COMPONENT mindspore
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
@ -329,6 +303,29 @@ if(ENABLE_AKG AND CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
DESTINATION ${INSTALL_PY_DIR}/
|
DESTINATION ${INSTALL_PY_DIR}/
|
||||||
COMPONENT mindspore
|
COMPONENT mindspore
|
||||||
)
|
)
|
||||||
|
if(ENABLE_CPU AND NOT ENABLE_GPU AND NOT ENABLE_D)
|
||||||
|
install(
|
||||||
|
TARGETS akg
|
||||||
|
DESTINATION ${INSTALL_PLUGIN_DIR}/cpu
|
||||||
|
COMPONENT mindspore
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_GPU)
|
||||||
|
install(
|
||||||
|
TARGETS akg
|
||||||
|
DESTINATION ${INSTALL_PLUGIN_DIR}/gpu${CUDA_VERSION}
|
||||||
|
COMPONENT mindspore
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_D)
|
||||||
|
install(
|
||||||
|
TARGETS akg
|
||||||
|
DESTINATION ${INSTALL_PLUGIN_DIR}/ascend
|
||||||
|
COMPONENT mindspore
|
||||||
|
)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(EXISTS ${CMAKE_SOURCE_DIR}/mindspore/python/mindspore/dataset)
|
if(EXISTS ${CMAKE_SOURCE_DIR}/mindspore/python/mindspore/dataset)
|
||||||
|
|
|
@ -18,23 +18,15 @@ set(CPACK_PYTHON_EXE ${Python3_EXECUTABLE})
|
||||||
set(CPACK_PYTHON_VERSION ${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR})
|
set(CPACK_PYTHON_VERSION ${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR})
|
||||||
set(CPACK_OSX_DEPLOYMENT_TARGET ${CMAKE_OSX_DEPLOYMENT_TARGET})
|
set(CPACK_OSX_DEPLOYMENT_TARGET ${CMAKE_OSX_DEPLOYMENT_TARGET})
|
||||||
|
|
||||||
|
|
||||||
if(ENABLE_CPU)
|
if(ENABLE_CPU)
|
||||||
set(CPACK_MS_BACKEND "ms")
|
set(CPACK_MS_BACKEND "ms")
|
||||||
set(CPACK_MS_TARGET "cpu")
|
|
||||||
if(BUILD_DEV_MODE)
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore-dev")
|
|
||||||
else()
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore")
|
|
||||||
endif()
|
|
||||||
else()
|
else()
|
||||||
set(CPACK_MS_BACKEND "debug")
|
set(CPACK_MS_BACKEND "debug")
|
||||||
set(CPACK_MS_TARGET "ascend or gpu or cpu")
|
endif()
|
||||||
if(BUILD_DEV_MODE)
|
if(BUILD_DEV_MODE)
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore-dev")
|
set(CPACK_MS_PACKAGE_NAME "mindspore-dev")
|
||||||
else()
|
else()
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore")
|
set(CPACK_MS_PACKAGE_NAME "mindspore")
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
include(CPack)
|
include(CPack)
|
||||||
|
|
||||||
|
|
|
@ -70,7 +70,6 @@ execute_process(
|
||||||
string(REPLACE " " "" GIT_COMMIT_ID ${GIT_COMMIT_ID})
|
string(REPLACE " " "" GIT_COMMIT_ID ${GIT_COMMIT_ID})
|
||||||
|
|
||||||
set(ENV{BACKEND_POLICY} ${CPACK_MS_BACKEND})
|
set(ENV{BACKEND_POLICY} ${CPACK_MS_BACKEND})
|
||||||
set(ENV{BACKEND_TARGET} ${CPACK_MS_TARGET})
|
|
||||||
set(ENV{MS_PACKAGE_NAME} ${CPACK_MS_PACKAGE_NAME})
|
set(ENV{MS_PACKAGE_NAME} ${CPACK_MS_PACKAGE_NAME})
|
||||||
set(ENV{COMMIT_ID} ${GIT_COMMIT_ID})
|
set(ENV{COMMIT_ID} ${GIT_COMMIT_ID})
|
||||||
|
|
||||||
|
|
|
@ -100,7 +100,7 @@ if(ENABLE_MINDDATA)
|
||||||
if(ENABLE_ACL)
|
if(ENABLE_ACL)
|
||||||
install(
|
install(
|
||||||
TARGETS dvpp_utils
|
TARGETS dvpp_utils
|
||||||
DESTINATION ${INSTALL_LIB_DIR}
|
DESTINATION ${INSTALL_PLUGIN_DIR}
|
||||||
COMPONENT mindspore
|
COMPONENT mindspore
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -17,29 +17,15 @@ set(CPACK_PYTHON_VERSION ${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR})
|
||||||
|
|
||||||
if(ENABLE_GPU)
|
if(ENABLE_GPU)
|
||||||
set(CPACK_MS_BACKEND "ms")
|
set(CPACK_MS_BACKEND "ms")
|
||||||
set(CPACK_MS_TARGET "gpu or cpu")
|
|
||||||
if(BUILD_DEV_MODE)
|
|
||||||
# providing cuda11 version of dev package only
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore_cuda11_dev")
|
|
||||||
else()
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore_gpu")
|
|
||||||
endif()
|
|
||||||
elseif(ENABLE_CPU)
|
elseif(ENABLE_CPU)
|
||||||
set(CPACK_MS_BACKEND "ms")
|
set(CPACK_MS_BACKEND "ms")
|
||||||
set(CPACK_MS_TARGET "cpu")
|
|
||||||
if(BUILD_DEV_MODE)
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore_dev")
|
|
||||||
else()
|
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore")
|
|
||||||
endif()
|
|
||||||
else()
|
else()
|
||||||
set(CPACK_MS_BACKEND "debug")
|
set(CPACK_MS_BACKEND "debug")
|
||||||
set(CPACK_MS_TARGET "ascend or gpu or cpu")
|
endif()
|
||||||
if(BUILD_DEV_MODE)
|
if(BUILD_DEV_MODE)
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore_dev")
|
set(CPACK_MS_PACKAGE_NAME "mindspore_dev")
|
||||||
else()
|
else()
|
||||||
set(CPACK_MS_PACKAGE_NAME "mindspore")
|
set(CPACK_MS_PACKAGE_NAME "mindspore")
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
include(CPack)
|
include(CPack)
|
||||||
|
|
||||||
|
@ -213,9 +199,10 @@ if(ENABLE_GPU)
|
||||||
COMPONENT mindspore
|
COMPONENT mindspore
|
||||||
)
|
)
|
||||||
install(
|
install(
|
||||||
TARGETS mindspore_gpu
|
TARGETS mindspore_gpu LIBRARY
|
||||||
DESTINATION ${INSTALL_PLUGIN_DIR}
|
DESTINATION ${INSTALL_PLUGIN_DIR}
|
||||||
COMPONENT mindspore
|
COMPONENT mindspore
|
||||||
|
NAMELINK_SKIP
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
|
@ -162,7 +162,6 @@ if(ENABLE_GPU AND GPU_BACKEND_CUDA)
|
||||||
if(NOT CUPTI_INCLUDE_DIRS OR CUPTI_INCLUDE_DIRS STREQUAL "")
|
if(NOT CUPTI_INCLUDE_DIRS OR CUPTI_INCLUDE_DIRS STREQUAL "")
|
||||||
set(CUPTI_INCLUDE_DIRS ${CUDA_PATH}/extras/CUPTI/include)
|
set(CUPTI_INCLUDE_DIRS ${CUDA_PATH}/extras/CUPTI/include)
|
||||||
endif()
|
endif()
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:${CUDA_PATH}/lib64)
|
|
||||||
message("CUDA_PATH: ${CUDA_PATH}")
|
message("CUDA_PATH: ${CUDA_PATH}")
|
||||||
message("CUDA_INCLUDE_DIRS: ${CUDA_INCLUDE_DIRS}")
|
message("CUDA_INCLUDE_DIRS: ${CUDA_INCLUDE_DIRS}")
|
||||||
message("CUDNN_INCLUDE_PATH: ${CUDNN_INCLUDE_PATH}")
|
message("CUDNN_INCLUDE_PATH: ${CUDNN_INCLUDE_PATH}")
|
||||||
|
@ -512,7 +511,6 @@ elseif(CMAKE_SYSTEM_NAME MATCHES "Windows")
|
||||||
else()
|
else()
|
||||||
MESSAGE(FATAL_ERROR "other platform: ${CMAKE_SYSTEM_NAME}")
|
MESSAGE(FATAL_ERROR "other platform: ${CMAKE_SYSTEM_NAME}")
|
||||||
endif()
|
endif()
|
||||||
set(MINDSPORE_RPATH ${ORIGIN_PATH}/lib:${ORIGIN_PATH}/lib/plugin:${ORIGIN_PATH}/..:${MINDSPORE_RPATH})
|
|
||||||
|
|
||||||
if(ENABLE_D)
|
if(ENABLE_D)
|
||||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/plugin/device/ascend)
|
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/plugin/device/ascend)
|
||||||
|
@ -553,7 +551,7 @@ else()
|
||||||
target_link_libraries(_c_expression PRIVATE mindspore::pybind11_module)
|
target_link_libraries(_c_expression PRIVATE mindspore::pybind11_module)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set_target_properties(_c_expression PROPERTIES INSTALL_RPATH ${MINDSPORE_RPATH})
|
set_target_properties(_c_expression PROPERTIES INSTALL_RPATH ${ORIGIN_PATH}/lib:${ORIGIN_PATH}/lib/plugin)
|
||||||
if(USE_GLOG)
|
if(USE_GLOG)
|
||||||
target_link_libraries(_c_expression PRIVATE mindspore::glog)
|
target_link_libraries(_c_expression PRIVATE mindspore::glog)
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -54,7 +54,7 @@ if(ENABLE_D OR ENABLE_GPU)
|
||||||
list(APPEND MSLIB_SRC ${CMAKE_CURRENT_SOURCE_DIR}/akg_kernel_register.cc)
|
list(APPEND MSLIB_SRC ${CMAKE_CURRENT_SOURCE_DIR}/akg_kernel_register.cc)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(ENABLE_ACL AND NOT BUILD_LITE)
|
if(NOT BUILD_LITE)
|
||||||
list(APPEND MSLIB_SRC_DEPEND
|
list(APPEND MSLIB_SRC_DEPEND
|
||||||
${CMAKE_SOURCE_DIR}/mindspore/ccsrc/frontend/parallel/strategy_checkpoint/parallel_strategy_checkpoint.cc)
|
${CMAKE_SOURCE_DIR}/mindspore/ccsrc/frontend/parallel/strategy_checkpoint/parallel_strategy_checkpoint.cc)
|
||||||
list(APPEND MSLIB_SRC_DEPEND ${CMAKE_SOURCE_DIR}/mindspore/ccsrc/frontend/parallel/tensor_layout/array.cc)
|
list(APPEND MSLIB_SRC_DEPEND ${CMAKE_SOURCE_DIR}/mindspore/ccsrc/frontend/parallel/tensor_layout/array.cc)
|
||||||
|
@ -108,33 +108,34 @@ elseif(MODE_ASCEND_ACL)
|
||||||
if(MS_BUILD_GRPC)
|
if(MS_BUILD_GRPC)
|
||||||
target_link_libraries(mindspore_shared_lib PRIVATE mindspore::grpc++)
|
target_link_libraries(mindspore_shared_lib PRIVATE mindspore::grpc++)
|
||||||
endif()
|
endif()
|
||||||
|
set_target_properties(mindspore_shared_lib PROPERTIES OUTPUT_NAME mindspore)
|
||||||
|
else()
|
||||||
|
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
|
# wheel package and ut
|
||||||
|
add_library(api_lib SHARED ${CMAKE_CURRENT_SOURCE_DIR}/types.cc
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/context.cc
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/cell.cc
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/serialization.cc
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/graph/graph.cc
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/graph/graph_data.cc
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/model/model.cc
|
||||||
|
${CMAKE_SOURCE_DIR}/mindspore/core/utils/status.cc
|
||||||
|
)
|
||||||
|
target_link_libraries(api_lib PRIVATE mindspore_shared_lib -Wl,--no-as-needed ${PYTHON_LIBRARIES})
|
||||||
|
set_target_properties(api_lib PROPERTIES OUTPUT_NAME mindspore)
|
||||||
|
set_target_properties(api_lib PROPERTIES INSTALL_RPATH "$ORIGIN")
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(ENABLE_D OR ENABLE_GPU)
|
if(ENABLE_D OR ENABLE_GPU)
|
||||||
target_link_libraries(mindspore_shared_lib PRIVATE -Wl,--as-needed ${SECUREC_LIBRARY}
|
target_link_libraries(mindspore_shared_lib PRIVATE -Wl,--as-needed ${SECUREC_LIBRARY}
|
||||||
mindspore_backend mindspore_core mindspore_common proto_input mindspore::protobuf)
|
mindspore_backend mindspore_core mindspore_common proto_input mindspore::protobuf)
|
||||||
|
|
||||||
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
|
||||||
add_library(api_lib SHARED ${CMAKE_CURRENT_SOURCE_DIR}/types.cc
|
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/context.cc
|
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/cell.cc
|
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/serialization.cc
|
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/graph/graph.cc
|
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/graph/graph_data.cc
|
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/model/model.cc
|
|
||||||
${CMAKE_SOURCE_DIR}/mindspore/core/utils/status.cc
|
|
||||||
)
|
|
||||||
target_link_libraries(api_lib PRIVATE mindspore_shared_lib -Wl,--no-as-needed ${PYTHON_LIBRARIES})
|
|
||||||
set_target_properties(api_lib PROPERTIES OUTPUT_NAME mindspore)
|
|
||||||
set_target_properties(api_lib PROPERTIES INSTALL_RPATH "$ORIGIN")
|
|
||||||
endif()
|
|
||||||
else()
|
else()
|
||||||
if(BUILD_LITE)
|
if(BUILD_LITE)
|
||||||
target_link_libraries(mindspore_shared_lib PRIVATE mindspore_core ${SECUREC_LIBRARY})
|
target_link_libraries(mindspore_shared_lib PRIVATE mindspore_core ${SECUREC_LIBRARY})
|
||||||
else()
|
else()
|
||||||
target_link_libraries(mindspore_shared_lib PRIVATE ${PY3_LIBG} ${SECUREC_LIBRARY}
|
target_link_libraries(mindspore_shared_lib PRIVATE ${PY3_LIBG} ${SECUREC_LIBRARY}
|
||||||
mindspore_backend mindspore mindspore_core mindspore_common proto_input mindspore::protobuf)
|
mindspore_backend mindspore mindspore_core mindspore_common proto_input mindspore::protobuf)
|
||||||
set_target_properties(mindspore_shared_lib PROPERTIES OUTPUT_NAME mindspore)
|
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@ -175,20 +176,23 @@ endif()
|
||||||
|
|
||||||
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
# duplicate, should be remove after backend decoupling is done
|
# duplicate, should be remove after backend decoupling is done
|
||||||
set(MINDSPORE_RPATH $ORIGIN)
|
set(MINDSPORE_SHARED_LIB_RPATH $ORIGIN)
|
||||||
if(MODE_ASCEND_ACL)
|
if(MODE_ASCEND_ACL)
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/nnae/latest/lib64)
|
set(MINDSPORE_SHARED_LIB_RPATH ${MINDSPORE_SHARED_LIB_RPATH}:/usr/local/Ascend/nnae/latest/lib64)
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/ascend-toolkit/latest/lib64)
|
set(MINDSPORE_SHARED_LIB_RPATH ${MINDSPORE_SHARED_LIB_RPATH}:/usr/local/Ascend/ascend-toolkit/latest/lib64)
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/latest/lib64)
|
set(MINDSPORE_SHARED_LIB_RPATH ${MINDSPORE_SHARED_LIB_RPATH}:/usr/local/Ascend/latest/lib64)
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
set(MINDSPORE_SHARED_LIB_RPATH
|
||||||
set(MINDSPORE_RPATH
|
${MINDSPORE_SHARED_LIB_RPATH}:/usr/local/Ascend/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
||||||
${MINDSPORE_RPATH}:/usr/local/Ascend/nnae/latest/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
set(MINDSPORE_SHARED_LIB_RPATH
|
||||||
set(MINDSPORE_RPATH
|
${MINDSPORE_SHARED_LIB_RPATH}:/usr/local/Ascend/nnae/latest/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
||||||
${MINDSPORE_RPATH}:/usr/local/Ascend/ascend-toolkit/latest/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
set(MINDSPORE_SHARED_LIB_RPATH "${MINDSPORE_SHARED_LIB_RPATH}\
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/latest/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
:/usr/local/Ascend/ascend-toolkit/latest/opp/op_impl/built-in/ai_core/tbe/op_tiling")
|
||||||
set(MINDSPORE_RPATH
|
set(MINDSPORE_SHARED_LIB_RPATH
|
||||||
${MINDSPORE_RPATH}:/usr/local/Ascend/ascend-toolkit/latest/opp/built-in/op_impl/ai_core/tbe/op_tiling)
|
${MINDSPORE_SHARED_LIB_RPATH}:/usr/local/Ascend/latest/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/latest/opp/built-in/op_impl/ai_core/tbe/op_tiling)
|
set(MINDSPORE_SHARED_LIB_RPATH "${MINDSPORE_SHARED_LIB_RPATH}\
|
||||||
|
:/usr/local/Ascend/ascend-toolkit/latest/opp/built-in/op_impl/ai_core/tbe/op_tiling")
|
||||||
|
set(MINDSPORE_SHARED_LIB_RPATH
|
||||||
|
${MINDSPORE_SHARED_LIB_RPATH}:/usr/local/Ascend/latest/opp/built-in/op_impl/ai_core/tbe/op_tiling)
|
||||||
endif()
|
endif()
|
||||||
set_target_properties(mindspore_shared_lib PROPERTIES INSTALL_RPATH ${MINDSPORE_RPATH})
|
set_target_properties(mindspore_shared_lib PROPERTIES INSTALL_RPATH ${MINDSPORE_SHARED_LIB_RPATH})
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -70,10 +70,6 @@ endif()
|
||||||
|
|
||||||
if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-delete-abstract-non-virtual-dtor")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-delete-abstract-non-virtual-dtor")
|
||||||
else()
|
|
||||||
if(NOT MSVC)
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,-rpath,$ORIGIN:$ORIGIN/lib")
|
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(MINDDATA_LOG_ADAPTER_SRC ${CMAKE_SOURCE_DIR}/mindspore/ccsrc/minddata/dataset/util/md_log_adapter.cc)
|
set(MINDDATA_LOG_ADAPTER_SRC ${CMAKE_SOURCE_DIR}/mindspore/ccsrc/minddata/dataset/util/md_log_adapter.cc)
|
||||||
|
@ -295,7 +291,8 @@ if(MS_BUILD_GRPC)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT CMAKE_SYSTEM_NAME MATCHES "Darwin" AND NOT MSLITE_ENABLE_CLOUD_MIND_DATA)
|
if(NOT CMAKE_SYSTEM_NAME MATCHES "Darwin" AND NOT MSLITE_ENABLE_CLOUD_MIND_DATA)
|
||||||
set_target_properties(_c_dataengine PROPERTIES INSTALL_RPATH ${MINDSPORE_RPATH})
|
set_target_properties(_c_dataengine PROPERTIES INSTALL_RPATH
|
||||||
|
${ORIGIN_PATH}:${ORIGIN_PATH}/lib:${ORIGIN_PATH}/lib/plugin)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||||
|
|
|
@ -117,8 +117,8 @@ if(ENABLE_CACHE)
|
||||||
|
|
||||||
add_dependencies(engine-cache-server generated_engine_files)
|
add_dependencies(engine-cache-server generated_engine_files)
|
||||||
|
|
||||||
set_target_properties(cache_admin PROPERTIES INSTALL_RPATH ${MINDSPORE_RPATH})
|
set_target_properties(cache_admin PROPERTIES INSTALL_RPATH ${ORIGIN_PATH}/..:${ORIGIN_PATH}/../lib)
|
||||||
set_target_properties(cache_server PROPERTIES INSTALL_RPATH ${MINDSPORE_RPATH})
|
set_target_properties(cache_server PROPERTIES INSTALL_RPATH ${ORIGIN_PATH}/..:${ORIGIN_PATH}/../lib)
|
||||||
else()
|
else()
|
||||||
ms_protobuf_generate(CACHE_PROTO_SRCS CACHE_PROTO_HDRS cache_grpc.proto)
|
ms_protobuf_generate(CACHE_PROTO_SRCS CACHE_PROTO_HDRS cache_grpc.proto)
|
||||||
target_sources(engine-cache-client PUBLIC ${CACHE_PROTO_SRCS})
|
target_sources(engine-cache-client PUBLIC ${CACHE_PROTO_SRCS})
|
||||||
|
|
|
@ -61,5 +61,5 @@ else()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT CMAKE_SYSTEM_NAME MATCHES "Darwin" AND NOT MSLITE_ENABLE_CLOUD_MIND_DATA)
|
if(NOT CMAKE_SYSTEM_NAME MATCHES "Darwin" AND NOT MSLITE_ENABLE_CLOUD_MIND_DATA)
|
||||||
set_target_properties(_c_mindrecord PROPERTIES INSTALL_RPATH ${MINDSPORE_RPATH})
|
set_target_properties(_c_mindrecord PROPERTIES INSTALL_RPATH ${ORIGIN_PATH}:${ORIGIN_PATH}/lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -3,17 +3,17 @@ include_directories(${CMAKE_BINARY_DIR})
|
||||||
include_directories(${CMAKE_SOURCE_DIR})
|
include_directories(${CMAKE_SOURCE_DIR})
|
||||||
include_directories(${CMAKE_SOURCE_DIR}/mindspore/ccsrc/minddata/dataset)
|
include_directories(${CMAKE_SOURCE_DIR}/mindspore/ccsrc/minddata/dataset)
|
||||||
|
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/nnae/latest/lib64)
|
set(ASCEND_RPATH ${ASCEND_RPATH}:/usr/local/Ascend/nnae/latest/lib64)
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/ascend-toolkit/latest/lib64)
|
set(ASCEND_RPATH ${ASCEND_RPATH}:/usr/local/Ascend/ascend-toolkit/latest/lib64)
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/latest/lib64)
|
set(ASCEND_RPATH ${ASCEND_RPATH}:/usr/local/Ascend/latest/lib64)
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
set(ASCEND_RPATH ${ASCEND_RPATH}:/usr/local/Ascend/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/nnae/latest/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
set(ASCEND_RPATH ${ASCEND_RPATH}:/usr/local/Ascend/nnae/latest/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
||||||
set(MINDSPORE_RPATH
|
set(ASCEND_RPATH
|
||||||
${MINDSPORE_RPATH}:/usr/local/Ascend/ascend-toolkit/latest/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
${ASCEND_RPATH}:/usr/local/Ascend/ascend-toolkit/latest/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/latest/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
set(ASCEND_RPATH ${ASCEND_RPATH}:/usr/local/Ascend/latest/opp/op_impl/built-in/ai_core/tbe/op_tiling)
|
||||||
set(MINDSPORE_RPATH
|
set(ASCEND_RPATH
|
||||||
${MINDSPORE_RPATH}:/usr/local/Ascend/ascend-toolkit/latest/opp/built-in/op_impl/ai_core/tbe/op_tiling)
|
${ASCEND_RPATH}:/usr/local/Ascend/ascend-toolkit/latest/opp/built-in/op_impl/ai_core/tbe/op_tiling)
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/latest/opp/built-in/op_impl/ai_core/tbe/op_tiling)
|
set(ASCEND_RPATH ${ASCEND_RPATH}:/usr/local/Ascend/latest/opp/built-in/op_impl/ai_core/tbe/op_tiling)
|
||||||
|
|
||||||
### cxx api need file ###
|
### cxx api need file ###
|
||||||
if(ENABLE_ACL)
|
if(ENABLE_ACL)
|
||||||
|
@ -58,7 +58,8 @@ target_link_libraries(mindspore_ascend PRIVATE proto_input mindspore::protobuf)
|
||||||
target_link_libraries(mindspore_ascend PRIVATE securec d_collective)
|
target_link_libraries(mindspore_ascend PRIVATE securec d_collective)
|
||||||
target_link_libraries(mindspore_ascend PRIVATE mindspore::dnnl mindspore::mkldnn mindspore::ssl
|
target_link_libraries(mindspore_ascend PRIVATE mindspore::dnnl mindspore::mkldnn mindspore::ssl
|
||||||
mindspore::crypto nnacl)
|
mindspore::crypto nnacl)
|
||||||
set_target_properties(mindspore_ascend PROPERTIES INSTALL_RPATH ${MINDSPORE_RPATH})
|
set_target_properties(mindspore_ascend PROPERTIES INSTALL_RPATH
|
||||||
|
${ORIGIN_PATH}:${ORIGIN_PATH}/ascend:${ORIGIN_PATH}/../:${ASCEND_RPATH})
|
||||||
|
|
||||||
if(ENABLE_DEBUGGER)
|
if(ENABLE_DEBUGGER)
|
||||||
# debugger: link grpc
|
# debugger: link grpc
|
||||||
|
@ -100,7 +101,8 @@ endif()
|
||||||
|
|
||||||
if(ENABLE_D)
|
if(ENABLE_D)
|
||||||
if(ENABLE_MPI)
|
if(ENABLE_MPI)
|
||||||
set_target_properties(_ascend_mpi PROPERTIES INSTALL_RPATH ${MINDSPORE_RPATH})
|
set_target_properties(_ascend_mpi PROPERTIES INSTALL_RPATH
|
||||||
|
${ORIGIN_PATH}:${ORIGIN_PATH}/lib:${ORIGIN_PATH}/lib/plugin/:${ASCEND_RPATH})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
|
@ -2,11 +2,11 @@ add_library(hccl_plugin SHARED hccl_plugin.cc)
|
||||||
target_include_directories(hccl_plugin PRIVATE ${CMAKE_BINARY_DIR}/proto/ge)
|
target_include_directories(hccl_plugin PRIVATE ${CMAKE_BINARY_DIR}/proto/ge)
|
||||||
add_dependencies(hccl_plugin graph)
|
add_dependencies(hccl_plugin graph)
|
||||||
|
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/nnae/latest/lib64/plugin/opskernel)
|
set(HCCL_RPATH ${HCCL_RPATH}:/usr/local/Ascend/nnae/latest/lib64/plugin/opskernel)
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/ascend-toolkit/latest/lib64/plugin/opskernel)
|
set(HCCL_RPATH ${HCCL_RPATH}:/usr/local/Ascend/ascend-toolkit/latest/lib64/plugin/opskernel)
|
||||||
set(MINDSPORE_RPATH ${MINDSPORE_RPATH}:/usr/local/Ascend/latest/lib64/plugin/opskernel)
|
set(HCCL_RPATH ${HCCL_RPATH}:/usr/local/Ascend/latest/lib64/plugin/opskernel)
|
||||||
|
|
||||||
set_target_properties(hccl_plugin PROPERTIES INSTALL_RPATH ${MINDSPORE_RPATH})
|
set_target_properties(hccl_plugin PROPERTIES INSTALL_RPATH ${HCCL_RPATH})
|
||||||
|
|
||||||
find_library(HCCL hccl ${ASCEND_CANN_RUNTIME_PATH} ${ASCEND_TOOLKIT_RUNTIME_PATH})
|
find_library(HCCL hccl ${ASCEND_CANN_RUNTIME_PATH} ${ASCEND_TOOLKIT_RUNTIME_PATH})
|
||||||
find_library(REGISTER register ${ASCEND_CANN_RUNTIME_PATH} ${ASCEND_TOOLKIT_RUNTIME_PATH})
|
find_library(REGISTER register ${ASCEND_CANN_RUNTIME_PATH} ${ASCEND_TOOLKIT_RUNTIME_PATH})
|
||||||
|
|
|
@ -30,7 +30,6 @@
|
||||||
|
|
||||||
namespace mindspore {
|
namespace mindspore {
|
||||||
namespace kernel {
|
namespace kernel {
|
||||||
constexpr size_t kPluginSuffix = 6;
|
|
||||||
bool AicpuOpKernelLoad::GetBinaryFileName(const std::string &so_name, const std::string &bin_folder_path,
|
bool AicpuOpKernelLoad::GetBinaryFileName(const std::string &so_name, const std::string &bin_folder_path,
|
||||||
std::string *bin_file_path) {
|
std::string *bin_file_path) {
|
||||||
MS_EXCEPTION_IF_NULL(bin_file_path);
|
MS_EXCEPTION_IF_NULL(bin_file_path);
|
||||||
|
@ -106,7 +105,7 @@ bool AicpuOpKernelLoad::GetSoNeedLoadPath(std::string *file_path) const {
|
||||||
MS_LOG(ERROR) << "Current path [" << cust_kernel_so_path << "] is invalid.";
|
MS_LOG(ERROR) << "Current path [" << cust_kernel_so_path << "] is invalid.";
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
auto real_cust_kernel_so_path = cust_kernel_so_path.substr(0, pos - kPluginSuffix);
|
auto real_cust_kernel_so_path = cust_kernel_so_path.substr(0, pos);
|
||||||
if (real_cust_kernel_so_path.size() > PATH_MAX) {
|
if (real_cust_kernel_so_path.size() > PATH_MAX) {
|
||||||
MS_LOG(ERROR) << "Current path [" << real_cust_kernel_so_path << "] is too long.";
|
MS_LOG(ERROR) << "Current path [" << real_cust_kernel_so_path << "] is too long.";
|
||||||
return false;
|
return false;
|
||||||
|
@ -126,7 +125,7 @@ bool AicpuOpKernelLoad::PackageBinaryFile(const std::string &so_name,
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string bin_file_path;
|
std::string bin_file_path;
|
||||||
ret = GetBinaryFileName(so_name, bin_folder_path, &bin_file_path);
|
ret = GetBinaryFileName(so_name, bin_folder_path + "/ascend", &bin_file_path);
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
MS_LOG(ERROR) << "GetBinaryFileName failed.";
|
MS_LOG(ERROR) << "GetBinaryFileName failed.";
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -73,10 +73,10 @@ if(EXISTS ${CMAKE_C_COMPILER} AND EXISTS ${CMAKE_CXX_COMPILER})
|
||||||
-pthread
|
-pthread
|
||||||
)
|
)
|
||||||
|
|
||||||
set(INSTALL_LIBRARY_DIR lib)
|
set(INSTALL_LIBRARY_DIR lib/plugin)
|
||||||
install(TARGETS mindspore_aicpu_kernels OPTIONAL
|
install(TARGETS mindspore_aicpu_kernels OPTIONAL
|
||||||
EXPORT mindspore_aicpu_kernels-targets
|
EXPORT mindspore_aicpu_kernels-targets
|
||||||
LIBRARY DESTINATION ${INSTALL_LIBRARY_DIR}
|
LIBRARY DESTINATION ${INSTALL_LIBRARY_DIR}/ascend
|
||||||
)
|
)
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -37,6 +37,7 @@ add_library(mindspore_axx_api_gpu_obj OBJECT ${API_INFER_GPU})
|
||||||
list(APPEND GPU_SUB_OBJECTS_SRC $<TARGET_OBJECTS:mindspore_axx_api_gpu_obj>)
|
list(APPEND GPU_SUB_OBJECTS_SRC $<TARGET_OBJECTS:mindspore_axx_api_gpu_obj>)
|
||||||
|
|
||||||
add_library(mindspore_gpu SHARED ${GPU_SUB_OBJECTS_SRC})
|
add_library(mindspore_gpu SHARED ${GPU_SUB_OBJECTS_SRC})
|
||||||
|
set_target_properties(mindspore_gpu PROPERTIES SOVERSION ${CUDA_VERSION})
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
target_link_options(mindspore_gpu PRIVATE /FORCE:UNRESOLVED)
|
target_link_options(mindspore_gpu PRIVATE /FORCE:UNRESOLVED)
|
||||||
endif()
|
endif()
|
||||||
|
@ -44,7 +45,8 @@ target_link_libraries(mindspore_gpu PRIVATE mindspore_backend mindspore_core min
|
||||||
target_link_libraries(mindspore_gpu PRIVATE mindspore_shared_lib)
|
target_link_libraries(mindspore_gpu PRIVATE mindspore_shared_lib)
|
||||||
target_link_libraries(mindspore_gpu PRIVATE proto_input mindspore::protobuf)
|
target_link_libraries(mindspore_gpu PRIVATE proto_input mindspore::protobuf)
|
||||||
target_link_libraries(mindspore_gpu PRIVATE securec)
|
target_link_libraries(mindspore_gpu PRIVATE securec)
|
||||||
set_target_properties(mindspore_gpu PROPERTIES INSTALL_RPATH ${MINDSPORE_RPATH})
|
set_target_properties(mindspore_gpu PROPERTIES INSTALL_RPATH
|
||||||
|
${ORIGIN_PATH}:${ORIGIN_PATH}/gpu${CUDA_VERSION}:${ORIGIN_PATH}/../:/usr/local/cuda/lib64)
|
||||||
target_link_libraries(mindspore_gpu PRIVATE mindspore::dnnl mindspore::mkldnn nnacl)
|
target_link_libraries(mindspore_gpu PRIVATE mindspore::dnnl mindspore::mkldnn nnacl)
|
||||||
if(NOT WIN32)
|
if(NOT WIN32)
|
||||||
target_link_libraries(mindspore_gpu PRIVATE mindspore::ssl mindspore::crypto)
|
target_link_libraries(mindspore_gpu PRIVATE mindspore::ssl mindspore::crypto)
|
||||||
|
@ -63,7 +65,9 @@ if(ENABLE_GPU)
|
||||||
${CUDA_PATH}/lib/x64/cuda.lib
|
${CUDA_PATH}/lib/x64/cuda.lib
|
||||||
${CUDA_PATH}/lib/x64/cusolver.lib
|
${CUDA_PATH}/lib/x64/cusolver.lib
|
||||||
${CUDA_PATH}/lib/x64/cufft.lib
|
${CUDA_PATH}/lib/x64/cufft.lib
|
||||||
${CUDA_PATH}/lib/x64/cusparse.lib)
|
${CUDA_PATH}/lib/x64/cusparse.lib
|
||||||
|
${CUDA_PATH}/lib/x64/libnvrtc.so
|
||||||
|
)
|
||||||
else()
|
else()
|
||||||
target_link_libraries(mindspore_gpu PRIVATE cuda_ops
|
target_link_libraries(mindspore_gpu PRIVATE cuda_ops
|
||||||
${CUBLAS_LIBRARY_PATH}
|
${CUBLAS_LIBRARY_PATH}
|
||||||
|
@ -73,7 +77,9 @@ if(ENABLE_GPU)
|
||||||
${CUDA_PATH}/lib64/stubs/libcuda.so
|
${CUDA_PATH}/lib64/stubs/libcuda.so
|
||||||
${CUDA_PATH}/lib64/libcusolver.so
|
${CUDA_PATH}/lib64/libcusolver.so
|
||||||
${CUDA_PATH}/lib64/libcufft.so
|
${CUDA_PATH}/lib64/libcufft.so
|
||||||
${CUDA_PATH}/lib64/libcusparse.so)
|
${CUDA_PATH}/lib64/libcusparse.so
|
||||||
|
${CUDA_PATH}/lib64/libnvrtc.so
|
||||||
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CMAKE_SYSTEM_NAME MATCHES "Linux" AND ${CUDA_VERSION} VERSION_GREATER "11.0")
|
if(CMAKE_SYSTEM_NAME MATCHES "Linux" AND ${CUDA_VERSION} VERSION_GREATER "11.0")
|
||||||
|
|
|
@ -15,6 +15,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "plugin/device/gpu/hal/device/cuda_driver.h"
|
#include "plugin/device/gpu/hal/device/cuda_driver.h"
|
||||||
|
#include <nvrtc.h>
|
||||||
#include "utils/log_adapter.h"
|
#include "utils/log_adapter.h"
|
||||||
#include "include/common/utils/convert_utils.h"
|
#include "include/common/utils/convert_utils.h"
|
||||||
|
|
||||||
|
@ -271,6 +272,12 @@ bool CudaDriver::SetDevice(int index) {
|
||||||
"number 4.";
|
"number 4.";
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
int major = 0;
|
||||||
|
int minor = 0;
|
||||||
|
auto curtc_ret = nvrtcVersion(&major, &minor);
|
||||||
|
if (curtc_ret == nvrtcResult::NVRTC_SUCCESS) {
|
||||||
|
MS_LOG(DEBUG) << "NVRTC version is " << major << "." << minor;
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
} // namespace gpu
|
} // namespace gpu
|
||||||
|
|
|
@ -68,6 +68,21 @@
|
||||||
namespace mindspore {
|
namespace mindspore {
|
||||||
namespace device {
|
namespace device {
|
||||||
namespace gpu {
|
namespace gpu {
|
||||||
|
namespace {
|
||||||
|
std::string GetCurrentDir() {
|
||||||
|
#ifndef _WIN32
|
||||||
|
Dl_info dl_info;
|
||||||
|
if (dladdr(reinterpret_cast<void *>(GetCurrentDir), &dl_info) == 0) {
|
||||||
|
MS_LOG(WARNING) << "Get dladdr error";
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
std::string cur_so_path = dl_info.dli_fname;
|
||||||
|
return dirname(cur_so_path.data());
|
||||||
|
#else
|
||||||
|
return "";
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
} // namespace
|
||||||
using KernelGraph = mindspore::session::KernelGraph;
|
using KernelGraph = mindspore::session::KernelGraph;
|
||||||
|
|
||||||
static thread_local bool cur_thread_device_inited{false};
|
static thread_local bool cur_thread_device_inited{false};
|
||||||
|
@ -759,7 +774,8 @@ uint32_t GPUKernelExecutor::GetRankID() const {
|
||||||
|
|
||||||
bool GPUDeviceResManager::LoadCollectiveCommLib() {
|
bool GPUDeviceResManager::LoadCollectiveCommLib() {
|
||||||
#ifdef ENABLE_MPI
|
#ifdef ENABLE_MPI
|
||||||
std::string nvidia_comm_lib_name = "libnvidia_collective.so";
|
std::string nvidia_comm_lib_name = GetCurrentDir() + "/gpu" + std::to_string(CUDA_VERSION / 1000) + "." +
|
||||||
|
std::to_string(CUDA_VERSION / 10 % 10) + "/libnvidia_collective.so";
|
||||||
auto loader = std::make_shared<CollectiveCommLibLoader>(nvidia_comm_lib_name);
|
auto loader = std::make_shared<CollectiveCommLibLoader>(nvidia_comm_lib_name);
|
||||||
MS_EXCEPTION_IF_NULL(loader);
|
MS_EXCEPTION_IF_NULL(loader);
|
||||||
if (!loader->Initialize()) {
|
if (!loader->Initialize()) {
|
||||||
|
|
|
@ -20,7 +20,7 @@ from mindspore import context
|
||||||
from mindspore.parallel._ps_context import _is_role_worker, _is_role_pserver, _is_role_sched, _is_ps_mode,\
|
from mindspore.parallel._ps_context import _is_role_worker, _is_role_pserver, _is_role_sched, _is_ps_mode,\
|
||||||
_get_ps_context
|
_get_ps_context
|
||||||
from mindspore import log as logger
|
from mindspore import log as logger
|
||||||
from mindspore._c_expression import CollectiveManager, set_cluster_exit_with_exception
|
from mindspore._c_expression import CollectiveManager, set_cluster_exit_with_exception, MSContext
|
||||||
|
|
||||||
HCCL_LIB = 'libhccl_plugin.so'
|
HCCL_LIB = 'libhccl_plugin.so'
|
||||||
|
|
||||||
|
@ -29,7 +29,7 @@ def hccl_load_lib():
|
||||||
"""load hccl lib"""
|
"""load hccl lib"""
|
||||||
try:
|
try:
|
||||||
base_dir = os.path.dirname(os.path.realpath(__file__))
|
base_dir = os.path.dirname(os.path.realpath(__file__))
|
||||||
lib_path = os.path.join(base_dir, "../lib", HCCL_LIB)
|
lib_path = os.path.join(base_dir, "../lib/plugin", HCCL_LIB)
|
||||||
ctypes.CDLL(lib_path)
|
ctypes.CDLL(lib_path)
|
||||||
except Exception:
|
except Exception:
|
||||||
raise RuntimeError('Get hccl lib error.')
|
raise RuntimeError('Get hccl lib error.')
|
||||||
|
@ -37,7 +37,8 @@ def hccl_load_lib():
|
||||||
_HCCL_TEST_AVAILABLE = False
|
_HCCL_TEST_AVAILABLE = False
|
||||||
|
|
||||||
try:
|
try:
|
||||||
hccl_load_lib()
|
if MSContext.get_instance().is_ascend_plugin_loaded():
|
||||||
|
hccl_load_lib()
|
||||||
except RuntimeError:
|
except RuntimeError:
|
||||||
_HCCL_TEST_AVAILABLE = True
|
_HCCL_TEST_AVAILABLE = True
|
||||||
|
|
||||||
|
|
|
@ -82,7 +82,7 @@ def load_lib():
|
||||||
"""load hccl lib"""
|
"""load hccl lib"""
|
||||||
try:
|
try:
|
||||||
base_dir = os.path.dirname(os.path.realpath(__file__))
|
base_dir = os.path.dirname(os.path.realpath(__file__))
|
||||||
lib_path = os.path.join(base_dir, "../lib", HCCL_LIB)
|
lib_path = os.path.join(base_dir, "../lib/plugin/ascend", HCCL_LIB)
|
||||||
hccl_lib = ctypes.CDLL(lib_path)
|
hccl_lib = ctypes.CDLL(lib_path)
|
||||||
except Exception:
|
except Exception:
|
||||||
raise RuntimeError('Get hccl lib error.')
|
raise RuntimeError('Get hccl lib error.')
|
||||||
|
|
|
@ -33,7 +33,6 @@ do
|
||||||
if [ -d "./$i/mindspore/lib/plugin" ]; then
|
if [ -d "./$i/mindspore/lib/plugin" ]; then
|
||||||
\cp -rf ./$i/mindspore/lib/plugin/* $BSAE_PACKAGE_UNZIP_DIR/mindspore/lib/plugin
|
\cp -rf ./$i/mindspore/lib/plugin/* $BSAE_PACKAGE_UNZIP_DIR/mindspore/lib/plugin
|
||||||
fi;
|
fi;
|
||||||
find ./$i/mindspore/_ms_mpi.*.so -print0 | xargs -0 -I {} \cp -f {} $BSAE_PACKAGE_UNZIP_DIR/mindspore/
|
|
||||||
if [ -f "./$i/mindspore/lib/libmpi_collective.so" ]; then
|
if [ -f "./$i/mindspore/lib/libmpi_collective.so" ]; then
|
||||||
\cp -rf ./$i/mindspore/lib/libmpi_collective.so $BSAE_PACKAGE_UNZIP_DIR/mindspore/lib/
|
\cp -rf ./$i/mindspore/lib/libmpi_collective.so $BSAE_PACKAGE_UNZIP_DIR/mindspore/lib/
|
||||||
fi;
|
fi;
|
||||||
|
|
14
setup.py
14
setup.py
|
@ -24,7 +24,6 @@ from setuptools.command.egg_info import egg_info
|
||||||
from setuptools.command.build_py import build_py
|
from setuptools.command.build_py import build_py
|
||||||
|
|
||||||
backend_policy = os.getenv('BACKEND_POLICY')
|
backend_policy = os.getenv('BACKEND_POLICY')
|
||||||
device_target = os.getenv('BACKEND_TARGET')
|
|
||||||
commit_id = os.getenv('COMMIT_ID').replace("\n", "")
|
commit_id = os.getenv('COMMIT_ID').replace("\n", "")
|
||||||
package_name = os.getenv('MS_PACKAGE_NAME').replace("\n", "")
|
package_name = os.getenv('MS_PACKAGE_NAME').replace("\n", "")
|
||||||
build_path = os.getenv('BUILD_PATH')
|
build_path = os.getenv('BUILD_PATH')
|
||||||
|
@ -58,10 +57,6 @@ def _write_package_name(file):
|
||||||
file.write("__package_name__ = '{}'\n".format(package_name))
|
file.write("__package_name__ = '{}'\n".format(package_name))
|
||||||
|
|
||||||
|
|
||||||
def _write_device_target(file):
|
|
||||||
file.write("__device_target__ = '{}'\n".format(device_target))
|
|
||||||
|
|
||||||
|
|
||||||
def build_dependencies():
|
def build_dependencies():
|
||||||
"""generate python file"""
|
"""generate python file"""
|
||||||
version_file = os.path.join(pkg_dir, 'mindspore', 'version.py')
|
version_file = os.path.join(pkg_dir, 'mindspore', 'version.py')
|
||||||
|
@ -80,14 +75,6 @@ def build_dependencies():
|
||||||
with open(config_file, 'w') as f:
|
with open(config_file, 'w') as f:
|
||||||
_write_config(f)
|
_write_config(f)
|
||||||
|
|
||||||
target = os.path.join(pkg_dir, 'mindspore', 'default_config.py')
|
|
||||||
with open(target, 'a') as f:
|
|
||||||
_write_device_target(f)
|
|
||||||
|
|
||||||
target = os.path.join(pwd, 'mindspore/python/mindspore', 'default_config.py')
|
|
||||||
with open(target, 'a') as f:
|
|
||||||
_write_device_target(f)
|
|
||||||
|
|
||||||
package_info = os.path.join(pkg_dir, 'mindspore', 'default_config.py')
|
package_info = os.path.join(pkg_dir, 'mindspore', 'default_config.py')
|
||||||
with open(package_info, 'a') as f:
|
with open(package_info, 'a') as f:
|
||||||
_write_package_name(f)
|
_write_package_name(f)
|
||||||
|
@ -126,6 +113,7 @@ package_data = {
|
||||||
'*.pdb',
|
'*.pdb',
|
||||||
'bin/*',
|
'bin/*',
|
||||||
'lib/plugin/*',
|
'lib/plugin/*',
|
||||||
|
'lib/plugin/*/*',
|
||||||
'lib/*.so*',
|
'lib/*.so*',
|
||||||
'lib/*.a',
|
'lib/*.a',
|
||||||
'lib/*.dylib*',
|
'lib/*.dylib*',
|
||||||
|
|
Loading…
Reference in New Issue