22 #ifndef SINGA_NEURALNET_CONNECTION_LAYER_H_
23 #define SINGA_NEURALNET_CONNECTION_LAYER_H_
26 #include "neuralnet/layer.h"
35 void set_ready(
bool a) {
41 virtual bool is_bridgesrclayer()
const {
44 virtual bool is_bridgedstlayer()
const {
59 void Setup(
const LayerProto& proto,
int npartitions)
override;
65 bool is_bridgedstlayer()
const {
81 return srclayers_[0]->data(
this);
84 return srclayers_[0]->mutable_data(
this);
86 const Blob<float>& grad(
const Layer* from)
const override {
87 return srclayers_[0]->grad(
this);
90 return srclayers_[0]->mutable_grad(
this);
92 bool is_bridgesrclayer()
const override {
106 void Setup(
const LayerProto& proto,
int npartitions)
override;
119 void Setup(
const LayerProto& proto,
int npartitions)
override;
124 std::vector<Blob<float>> datavec_;
125 std::vector<Blob<float>> gradvec_;
139 void Setup(
const LayerProto& proto,
int npartitions)
override;
149 #endif // SINGA_NEURALNET_CONNECTION_LAYER_H_
void ComputeFeature(int flag, Metric *perf) override
Compute features of this layer based on connected layers.
void ComputeFeature(int flag, Metric *perf) override
Compute features of this layer based on connected layers.
Definition: connection_layer.h:60
void ComputeFeature(int flag, Metric *perf) override
Compute features of this layer based on connected layers.
Definition: connection_layer.h:76
void ComputeFeature(int flag, Metric *perf) override
Compute features of this layer based on connected layers.
void Setup(const LayerProto &proto, int npartitions) override
Setup layer properties.
void ComputeFeature(int flag, Metric *perf) override
Compute features of this layer based on connected layers.
void ComputeGradient(int flag, Metric *perf) override
Compute gradients for parameters and connected layers.
Definition: connection_layer.h:64
Base layer for connecting layers when neural net is partitioned.
Definition: layer.h:193
Blob< float > * mutable_grad(const Layer *from) override
Definition: connection_layer.h:89
void ComputeGradient(int flag, Metric *perf) override
Compute gradients for parameters and connected layers.
Definition: connection_layer.h:77
bool ready_
< true if received grad from BridgeDstLayer
Definition: connection_layer.h:50
void Setup(const LayerProto &proto, int npartitions) override
Setup layer properties.
const Blob< float > & data(const Layer *from) const override
Definition: connection_layer.h:80
void Setup(const LayerProto &proto, int npartitions) override
Setup layer properties.
Definition: connection_layer.h:33
Base layer class.
Definition: layer.h:44
Connect a single (src) layer with multiple (dst) layers.
Definition: connection_layer.h:117
void ComputeGradient(int flag, Metric *perf) override
Compute gradients for parameters and connected layers.
void Setup(const LayerProto &proto, int npartitions) override
Setup layer properties.
Connect multiple (src) layers with a single (dst) layer.
Definition: connection_layer.h:104
void ComputeGradient(int flag, Metric *perf) override
Compute gradients for parameters and connected layers.
For recv data from layer on other threads which may resident on other nodes due to layer/data partito...
Definition: connection_layer.h:57
Performance mtrics.
Definition: common.h:85
Connect a single (src) layer with multiple dst layers.
Definition: connection_layer.h:137
void ComputeGradient(int flag, Metric *perf) override
Compute gradients for parameters and connected layers.
For sending data to layer on other threads which may resident on other nodes due to layer/data partit...
Definition: connection_layer.h:74