if(NOT ENABLE_EXPERIMENTAL)
return()
endif()
add_subdirectory(op_common)
add_subdirectory(reduce_scatter)
set(EXPERIMENTAL_INCLUDE_LIST
${CMAKE_CURRENT_SOURCE_DIR}/../
${CMAKE_CURRENT_SOURCE_DIR}/
${CMAKE_CURRENT_SOURCE_DIR}/op_common/
${CMAKE_CURRENT_SOURCE_DIR}/op_common/template
${CMAKE_CURRENT_SOURCE_DIR}/op_common/topo
${CMAKE_CURRENT_SOURCE_DIR}/reduce_scatter/
${CMAKE_CURRENT_SOURCE_DIR}/reduce_scatter/birs/
${CMAKE_CURRENT_SOURCE_DIR}/reduce_scatter/birs/template/
)
if(TARGET scatter_aicpu_kernel)
target_include_directories(scatter_aicpu_kernel PRIVATE ${EXPERIMENTAL_INCLUDE_LIST})
target_compile_definitions(scatter_aicpu_kernel PRIVATE ENABLE_EXPERIMENTAL)
target_sources(scatter_aicpu_kernel PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/op_common/template/alg_template_base_experimental.cc
${CMAKE_CURRENT_SOURCE_DIR}/op_common/topo/topo_experimental.cc
${CMAKE_CURRENT_SOURCE_DIR}/reduce_scatter/birs/reduce_scatter_birs_executor.cc
${CMAKE_CURRENT_SOURCE_DIR}/reduce_scatter/birs/reduce_scatter_executor_base.cc
${CMAKE_CURRENT_SOURCE_DIR}/reduce_scatter/birs/template/reduce_scatter_birs.cc
${CMAKE_CURRENT_SOURCE_DIR}/reduce_scatter/birs/template/reduce_scatter_birs_inter.cc
)
endif()
target_include_directories(hccl PRIVATE ${EXPERIMENTAL_INCLUDE_LIST})
target_compile_definitions(hccl PRIVATE ENABLE_EXPERIMENTAL)