Get desktop application:
View/edit binary Protocol Buffers messages
* Synchronization using AllReduce.
Used in:
Specification for collective communication
One of the compressors to choose
* The allreduce group to merge with. The group index should be less than the number of variables
* Which gradient compression method to use
Used in:
No compression
Horovod's Compression
Horovod's Compression but with Error Feedback.
* Which communication method to use
Used in:
Runtime's automatic choices
Use ncclAllReduce for all-reduce, and ring algorithms for all-gather
TensorFlow's ring algorithms for all-reduce and all-gather
* Represents the strategy the AutoDist backend will implement.
/ TensorFlow graph_def
/ Mapping from grad tensor name to variable name
* Represents the essential transformed subset of TensorFlow MetaGraph Right now, it represents a essential AutoDist subset of collections of MetaGraph. In the future, it will generalize to captures.
Used in:
* Synchronization using a Parameter Server.
Used in:
Parameter Server to use
Whether to create local proxies of each PS variable
Whether to sync gradients across between-graph replications
Staleness
* Represents the strategy the AutoDist backend will implement.
/ unique strategy identifier
/ optional serialized strategy message temp path
* configuration of some individual nodes of the computational graph
* configuration of the computational graph as a whole
* Represents the configuration of the graph as a whole. Based on the list of replicas, the AutoDist backend does a combination of in-graph and between-graph distribution.
Used in:
* the number of batch-splitting/data-parallel replicas
* Represents the configuration of an individual node in the graph. Right now, these nodes are just variables in the graph, so the only information they contain is how to synchronize the variable's gradients. In the future, for node partitioning, these could be any node in the graph. In that case, they would also have more logic for partitioning the op.
Used in:
/ variable name
One of a synchronizer to choose
One of a synchronizer to choose
Optional partitioner configuration, e.g. `1, 2, 1`
Optional node configs for each node partition (if partitioned)