1- find_package (MPI REQUIRED )
1+ if (ENABLE_MPI)
2+ find_package (MPI REQUIRED )
3+ endif ()
24find_package (hsa-runtime64 REQUIRED )
35find_package (hsakmt REQUIRED )
46#find_library(IONIC_LIBRARY
57# NAMES ionic
68# HINTS /lib/x86_64-linux-gnu
79# REQUIRED
810#)
9- execute_process (
10- COMMAND python -c "import torch; print(torch.utils.cmake_prefix_path)"
11- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
12- OUTPUT_VARIABLE TORCH_DIR
13- OUTPUT_STRIP_TRAILING_WHITESPACE )
14- cmake_path (SET TORCH_CMAKE_DIR NORMALIZE "${TORCH_DIR} /Torch" )
15- list (APPEND CMAKE_PREFIX_PATH ${TORCH_CMAKE_DIR} )
16- message (STATUS "Found LibTorch CMake Path: ${CMAKE_PREFIX_PATH} " )
1711
18- find_package (Torch REQUIRED )
12+ if (ENABLE_TORCH)
13+ execute_process (
14+ COMMAND python -c "import torch; print(torch.utils.cmake_prefix_path)"
15+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
16+ OUTPUT_VARIABLE TORCH_DIR
17+ OUTPUT_STRIP_TRAILING_WHITESPACE )
18+ cmake_path (SET TORCH_CMAKE_DIR NORMALIZE "${TORCH_DIR} /Torch" )
19+ list (APPEND CMAKE_PREFIX_PATH ${TORCH_CMAKE_DIR} )
20+ message (STATUS "Found LibTorch CMake Path: ${CMAKE_PREFIX_PATH} " )
21+ find_package (Torch REQUIRED )
22+ endif ()
1923
2024add_library (
2125 mori_application SHARED
22- bootstrap/mpi_bootstrap.cpp
23- bootstrap/torch_bootstrap.cpp
2426 bootstrap/socket_bootstrap.cpp
2527 bootstrap/local_bootstrap.cpp
2628 transport/rdma/rdma.cpp
@@ -40,11 +42,18 @@ add_library(
4042 topology/pci.cpp
4143 topology/system.cpp )
4244
45+ if (ENABLE_TORCH)
46+ target_sources (mori_application PRIVATE bootstrap/torch_bootstrap.cpp )
47+ endif ()
48+
49+ if (ENABLE_MPI)
50+ target_sources (mori_application PRIVATE bootstrap/mpi_bootstrap.cpp )
51+ endif ()
52+
4353target_include_directories (mori_application PUBLIC ${CMAKE_SOURCE_DIR} /include )
4454target_include_directories (mori_application PUBLIC ${CMAKE_SOURCE_DIR} )
4555target_link_libraries (
4656 mori_application
47- MPI::MPI_CXX
4857 ibverbs
4958 hip::host
5059 hip::device
@@ -61,8 +70,14 @@ if(USE_BNXT)
6170endif ()
6271
6372if (USE_IONIC)
64- target_link_libraries (mori_application ${IONIC_LIB} )
73+ target_link_libraries (mori_application ${IONIC_LIB} )
74+ endif ()
75+
76+ if (ENABLE_MPI)
77+ target_link_libraries (mori_application MPI::MPI_CXX )
6578endif ()
6679
67- target_include_directories (mori_application PUBLIC ${TORCH_INCLUDE_DIRS} )
68- target_link_libraries (mori_application c10 torch torch_cpu c10_hip torch_hip )
80+ if (ENABLE_TORCH)
81+ target_include_directories (mori_application PUBLIC ${TORCH_INCLUDE_DIRS} )
82+ target_link_libraries (mori_application c10 torch torch_cpu c10_hip torch_hip )
83+ endif ()
0 commit comments