cosmetic changes
This commit is contained in:
parent
1af3e81ada
commit
e9a3f5169e
26
README.md
26
README.md
@ -1,29 +1,29 @@
|
|||||||
## rabit: Reliable Allreduce and Broadcast Interface
|
## rabit: Reliable Allreduce and Broadcast Interface
|
||||||
|
|
||||||
rabit is a light weight library that provides a fault tolerant interface of Allreduce and Broadcast. It is designed to support easy implementation of distributed machine learning programs, many of which sits naturally under Allreduce abstraction.
|
rabit is a light weight library that provides a fault tolerant interface of Allreduce and Broadcast. It is designed to support easy implementations of distributed machine learning programs, many of which fall naturally under the Allreduce abstraction.
|
||||||
|
|
||||||
* See the [package interface file](src/rabit.h)
|
* See the [package interface file](src/rabit.h)
|
||||||
|
|
||||||
Features
|
Features
|
||||||
====
|
====
|
||||||
* Portable library
|
* Portable library
|
||||||
- Rabit is a library instead of framework, program only need to link the library to run, without restricting to a single framework.
|
- Rabit is a library instead of a framework, a program only needs to link the library to run, without restricting to a single framework.
|
||||||
* Flexibility in programming
|
* Flexibility in programming
|
||||||
- Programs call rabit functions in any sequence, as opposed to defines limited functions and being called.
|
- Programs can call rabit functions in any sequence, as opposed to frameworks where callbacks are being offered and are called by the framework, i.e. inversion of control principle.
|
||||||
- Program persist over all the iterations, unless it fails and recover
|
- Programs persist over all the iterations, unless they fail and recover
|
||||||
* Fault tolerance
|
* Fault tolerance
|
||||||
- Rabit program can recover model and results of syncrhonization functions calls
|
- Rabit programs can recover the model and results from synchronized function calls
|
||||||
* MPI compatible
|
* MPI compatible
|
||||||
- Codes using rabit interface naturally compiles with existing MPI compiler
|
- Code that uses the rabit interface also compiles with existing MPI compilers
|
||||||
- User can fall back to use MPI Allreduce if they like with no code modification
|
- Users can use MPI Allreduce with no code modification
|
||||||
|
|
||||||
Design Note
|
Design Notes
|
||||||
====
|
====
|
||||||
* Rabit is designed for algorithms that replicate same global model across nodes, while each node operating on local parition of data.
|
* Rabit is designed for algorithms that replicate the same global model across nodes, while each node operates on a local partition of the data.
|
||||||
* The global statistics collection is done by using Allreduce
|
* The collection of global statistics is done using Allreduce
|
||||||
|
|
||||||
Design Goal
|
Design Goals
|
||||||
====
|
====
|
||||||
* rabit should run fast
|
* rabit should run fast
|
||||||
* rabit is light weight
|
* rabit should be light weight
|
||||||
* rabit dig safe burrows to avoid disasters
|
* rabit should safely dig burrows to avoid disasters
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user