You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

MKL_DNN.cmake 1.3 kB

12345678910111213141516171819202122232425262728293031
  1. include(ExternalProject)
  2. include(GNUInstallDirs)
  3. set(MKLDNN_DIR "${PROJECT_SOURCE_DIR}/third_party/intel-mkl-dnn" CACHE STRING "mkldnn directory")
  4. set(MKLDNN_BUILD_DIR ${PROJECT_BINARY_DIR}/third_party/intel-mkl-dnn)
  5. set(MKLDNN_LIB ${MKLDNN_BUILD_DIR}/${CMAKE_INSTALL_LIBDIR}/libdnnl.a)
  6. if(MGE_BLAS STREQUAL "MKL")
  7. list(APPEND MKLDNN_BUILD_ARGS -D_DNNL_USE_MKL=ON -DMKLROOT=${MKL_ROOT_DIR})
  8. else()
  9. list(APPEND MKLDNN_BUILD_ARGS -D_DNNL_USE_MKL=OFF)
  10. endif()
  11. ExternalProject_add(
  12. mkl_dnn
  13. SOURCE_DIR ${MKLDNN_DIR}
  14. PREFIX ${MKLDNN_BUILD_DIR}
  15. CMAKE_ARGS -DCMAKE_C_COMPILER_LAUNCHER=${CMAKE_C_COMPILER_LAUNCHER} -DCMAKE_CXX_COMPILER_LAUNCHER=${CMAKE_CXX_COMPILER_LAUNCHER} -DDNNL_BUILD_TESTS=OFF -DDNNL_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DCMAKE_INSTALL_PREFIX=${MKLDNN_BUILD_DIR} -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} -DDNNL_LIBRARY_TYPE=STATIC -DDNNL_CPU_RUNTIME=DNNL_RUNTIME_SEQ ${MKLDNN_BUILD_ARGS}
  16. BUILD_BYPRODUCTS ${MKLDNN_LIB}
  17. )
  18. set(MKLDNN_INC ${MKLDNN_BUILD_DIR}/include)
  19. file(MAKE_DIRECTORY ${MKLDNN_INC})
  20. add_library(libmkl_dnn STATIC IMPORTED GLOBAL)
  21. add_dependencies(libmkl_dnn mkl_dnn)
  22. set_target_properties(
  23. libmkl_dnn PROPERTIES
  24. IMPORTED_LOCATION ${MKLDNN_LIB}
  25. INTERFACE_INCLUDE_DIRECTORIES ${MKLDNN_INC}
  26. )

MegEngine 安装包中集成了使用 GPU 运行代码所需的 CUDA 环境,不用区分 CPU 和 GPU 版。 如果想要运行 GPU 程序,请确保机器本身配有 GPU 硬件设备并安装好驱动。 如果你想体验在云端 GPU 算力平台进行深度学习开发的感觉,欢迎访问 MegStudio 平台

Contributors (1)