Class ICommunicator¶
Defined in File communicator.h
Inheritance Relationships¶
Derived Types¶
public marian::DefaultCommunicator
(Class DefaultCommunicator)public marian::NCCLCommunicator
(Class NCCLCommunicator)
Class Documentation¶
-
class
ICommunicator
¶ Subclassed by marian::DefaultCommunicator, marian::NCCLCommunicator
Public Types
Public Functions
-
ICommunicator
(const std::vector<Ptr<ExpressionGraph>> &graphs)¶
-
virtual
~ICommunicator
()¶
-
virtual bool
foreach
(const ForeachFunc<bool> &func, bool parallel = true) const = 0¶
-
virtual float
foreach
(const ForeachFunc<float> &func, AccFunc<float> acc, float init, bool parallel = true) const = 0¶
-
virtual void
scatterReduceAndResetGrads
() const = 0¶
-
virtual void
allGatherParams
() const = 0¶
-
virtual void
broadcastParams
(bool average = false) const = 0¶
-
virtual void
broadcastShards
(const std::vector<Ptr<OptimizerBase>> &opts, bool average = false) const = 0¶
-
virtual void
scatterState
(const io::Item &data, const OptimizerBase::ScatterStateSetFunc &setFn) const = 0¶
-
virtual io::Item
gatherState
(const OptimizerBase::GatherStateGetFunc &getFn) const = 0¶
Protected Attributes
-
const std::vector<Ptr<ExpressionGraph>>
graphs_
¶
-