|
| RabitCommunicator (int world_size, int rank) |
|
bool | IsDistributed () const override |
| Whether the communicator is running in distributed mode.
|
|
bool | IsFederated () const override |
| Whether the communicator is running in federated mode.
|
|
void | AllGather (void *send_receive_buffer, std::size_t size) override |
| Gathers data from all processes and distributes it to all processes.
|
|
void | AllReduce (void *send_receive_buffer, std::size_t count, DataType data_type, Operation op) override |
| Combines values from all processes and distributes the result back to all processes.
|
|
void | Broadcast (void *send_receive_buffer, std::size_t size, int root) override |
| Broadcasts a message from the process with rank root to all other processes of the group.
|
|
std::string | GetProcessorName () override |
| Gets the name of the processor.
|
|
void | Print (const std::string &message) override |
| Prints the message.
|
|
int | GetWorldSize () const |
| Get the total number of processes.
|
|
int | GetRank () const |
| Get the rank of the current processes.
|
|
|
static Communicator * | Create (Json const &config) |
|
static void | Init (Json const &config) |
| Initialize the communicator.
|
|
static void | Finalize () |
| Finalize the communicator.
|
|
static Communicator * | Get () |
| Get the communicator instance.
|
|
static CommunicatorType | GetTypeFromEnv () |
| Get the communicator type from environment variables.
|
|
static CommunicatorType | GetTypeFromConfig (Json const &config) |
| Get the communicator type from runtime configuration.
|
|
|
void | Shutdown () override |
| Shuts down the communicator.
|
|
| Communicator (int world_size, int rank) |
| Construct a new communicator.
|
|
◆ AllGather()
void xgboost::collective::RabitCommunicator::AllGather |
( |
void * |
send_receive_buffer, |
|
|
std::size_t |
size |
|
) |
| |
|
inlineoverridevirtual |
Gathers data from all processes and distributes it to all processes.
This assumes all ranks have the same size, and input data has been sliced into the corresponding position.
- Parameters
-
send_receive_buffer | Buffer storing the data. |
size | Size of the data in bytes. |
Implements xgboost::collective::Communicator.
◆ AllReduce()
void xgboost::collective::RabitCommunicator::AllReduce |
( |
void * |
send_receive_buffer, |
|
|
std::size_t |
count, |
|
|
DataType |
data_type, |
|
|
Operation |
op |
|
) |
| |
|
inlineoverridevirtual |
Combines values from all processes and distributes the result back to all processes.
- Parameters
-
send_receive_buffer | Buffer storing the data. |
count | Number of elements in the buffer. |
data_type | Data type stored in the buffer. |
op | The operation to perform. |
Implements xgboost::collective::Communicator.
◆ Broadcast()
void xgboost::collective::RabitCommunicator::Broadcast |
( |
void * |
send_receive_buffer, |
|
|
std::size_t |
size, |
|
|
int |
root |
|
) |
| |
|
inlineoverridevirtual |
Broadcasts a message from the process with rank root
to all other processes of the group.
- Parameters
-
send_receive_buffer | Buffer storing the data. |
size | Size of the data in bytes. |
root | Rank of broadcast root. |
Implements xgboost::collective::Communicator.
◆ GetProcessorName()
std::string xgboost::collective::RabitCommunicator::GetProcessorName |
( |
| ) |
|
|
inlineoverridevirtual |
◆ IsDistributed()
bool xgboost::collective::RabitCommunicator::IsDistributed |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ IsFederated()
bool xgboost::collective::RabitCommunicator::IsFederated |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ Print()
void xgboost::collective::RabitCommunicator::Print |
( |
const std::string & |
message | ) |
|
|
inlineoverridevirtual |
◆ Shutdown()
void xgboost::collective::RabitCommunicator::Shutdown |
( |
| ) |
|
|
inlineoverrideprotectedvirtual |
The documentation for this class was generated from the following file: