#ifndef CAFFE2_OPERATORS_STOP_GRADIENT_H_ #define CAFFE2_OPERATORS_STOP_GRADIENT_H_ #include "caffe2/core/operator.h" namespace caffe2 { template class StopGradientOp : public Operator { public: USE_SIMPLE_CTOR_DTOR(StopGradientOp) USE_OPERATOR_CONTEXT_FUNCTIONS; bool RunOnDevice() override { const auto& in = Input(0); auto* out = Output(0); if (out != &in) { out->CopyFrom(in, true /*async*/); } return true; } }; } // namespace caffe2 #endif // CAFFE2_OPERATORS_STOP_GRADIENT_H_