Initial support for federated learning (#7831)
Federated learning plugin for xgboost: * A gRPC server to aggregate MPI-style requests (allgather, allreduce, broadcast) from federated workers. * A Rabit engine for the federated environment. * Integration test to simulate federated learning. Additional followups are needed to address GPU support, better security, and privacy, etc.
This commit is contained in:
@@ -6,7 +6,9 @@ set(RABIT_SOURCES
|
||||
${CMAKE_CURRENT_LIST_DIR}/src/allreduce_base.cc
|
||||
${CMAKE_CURRENT_LIST_DIR}/src/rabit_c_api.cc)
|
||||
|
||||
if (RABIT_BUILD_MPI)
|
||||
if (PLUGIN_FEDERATED)
|
||||
# Skip the engine if the Federated Learning plugin is enabled.
|
||||
elseif (RABIT_BUILD_MPI)
|
||||
list(APPEND RABIT_SOURCES ${CMAKE_CURRENT_LIST_DIR}/src/engine_mpi.cc)
|
||||
elseif (RABIT_MOCK)
|
||||
list(APPEND RABIT_SOURCES ${CMAKE_CURRENT_LIST_DIR}/src/engine_mock.cc)
|
||||
|
||||
Reference in New Issue
Block a user