class ov::op::v1::ReduceSum¶
Overview¶
#include <reduce_sum.hpp>
class ReduceSum: public ov::op::util::ArithmeticReductionKeepDims
{
public:
// fields
BWDCMP_RTTI_DECLARATION;
// construction
ReduceSum();
ReduceSum(
const Output<Node>& arg,
const Output<Node>& reduction_axes,
bool keep_dims = false
);
// methods
OPENVINO_OP("ReduceSum", "opset1", util::ArithmeticReductionKeepDims, 1);
virtual std::shared_ptr<Node> clone_with_new_inputs(const OutputVector& new_args) const;
virtual OPENVINO_SUPPRESS_DEPRECATED_START std::shared_ptr<Node> get_default_value() const;
virtual OPENVINO_SUPPRESS_DEPRECATED_END OPENVINO_SUPPRESS_DEPRECATED_START bool evaluate(
const HostTensorVector& output_values,
const HostTensorVector& input_values
) const;
virtual OPENVINO_SUPPRESS_DEPRECATED_END bool has_evaluate() const;
};
Inherited Members¶
public:
// typedefs
typedef DiscreteTypeInfo type_info_t;
typedef std::map<std::string, Any> RTMap;
// fields
BWDCMP_RTTI_DECLARATION;
BWDCMP_RTTI_DECLARATION;
BWDCMP_RTTI_DECLARATION;
// methods
virtual void validate_and_infer_types();
void constructor_validate_and_infer_types();
virtual bool visit_attributes(AttributeVisitor&);
virtual const ov::op::AutoBroadcastSpec& get_autob() const;
virtual bool has_evaluate() const;
virtual bool evaluate(
const ov::HostTensorVector& output_values,
const ov::HostTensorVector& input_values
) const;
virtual bool evaluate(
const ov::HostTensorVector& output_values,
const ov::HostTensorVector& input_values,
const EvaluationContext& evaluationContext
) const;
virtual bool evaluate_lower(const ov::HostTensorVector& output_values) const;
virtual bool evaluate_upper(const ov::HostTensorVector& output_values) const;
virtual bool evaluate(
ov::TensorVector& output_values,
const ov::TensorVector& input_values
) const;
virtual bool evaluate(
ov::TensorVector& output_values,
const ov::TensorVector& input_values,
const ov::EvaluationContext& evaluationContext
) const;
virtual bool evaluate_lower(ov::TensorVector& output_values) const;
virtual bool evaluate_upper(ov::TensorVector& output_values) const;
virtual bool evaluate_label(TensorLabelVector& output_labels) const;
virtual bool constant_fold(
OutputVector& output_values,
const OutputVector& inputs_values
);
virtual OutputVector decompose_op() const;
virtual const type_info_t& get_type_info() const = 0;
const char \* get_type_name() const;
void set_arguments(const NodeVector& arguments);
void set_arguments(const OutputVector& arguments);
void set_argument(size_t position, const Output<Node>& argument);
void set_output_type(
size_t i,
const element::Type& element_type,
const PartialShape& pshape
);
void set_output_size(size_t output_size);
void invalidate_values();
virtual void revalidate_and_infer_types();
virtual std::string description() const;
const std::string& get_name() const;
void set_friendly_name(const std::string& name);
const std::string& get_friendly_name() const;
virtual bool is_dynamic() const;
size_t get_instance_id() const;
virtual std::ostream& write_description(std::ostream& os, uint32_t depth = 0) const;
const std::vector<std::shared_ptr<Node>>& get_control_dependencies() const;
const std::vector<Node \*>& get_control_dependents() const;
void add_control_dependency(std::shared_ptr<Node> node);
void remove_control_dependency(std::shared_ptr<Node> node);
void clear_control_dependencies();
void clear_control_dependents();
void add_node_control_dependencies(std::shared_ptr<Node> source_node);
void add_node_control_dependents(std::shared_ptr<Node> source_node);
void transfer_control_dependents(std::shared_ptr<Node> replacement);
size_t get_output_size() const;
const element::Type& get_output_element_type(size_t i) const;
const element::Type& get_element_type() const;
const Shape& get_output_shape(size_t i) const;
const PartialShape& get_output_partial_shape(size_t i) const;
Output<const Node> get_default_output() const;
Output<Node> get_default_output();
virtual size_t get_default_output_index() const;
size_t no_default_index() const;
const Shape& get_shape() const;
descriptor::Tensor& get_output_tensor(size_t i) const;
descriptor::Tensor& get_input_tensor(size_t i) const;
const std::string& get_output_tensor_name(size_t i) const;
std::set<Input<Node>> get_output_target_inputs(size_t i) const;
size_t get_input_size() const;
const element::Type& get_input_element_type(size_t i) const;
const Shape& get_input_shape(size_t i) const;
const PartialShape& get_input_partial_shape(size_t i) const;
const std::string& get_input_tensor_name(size_t i) const;
Node \* get_input_node_ptr(size_t index) const;
std::shared_ptr<Node> get_input_node_shared_ptr(size_t index) const;
Output<Node> get_input_source_output(size_t i) const;
virtual std::shared_ptr<Node> clone_with_new_inputs(const OutputVector& inputs) const = 0;
std::shared_ptr<Node> copy_with_new_inputs(const OutputVector& new_args) const;
std::shared_ptr<Node> copy_with_new_inputs(
const OutputVector& inputs,
const std::vector<std::shared_ptr<Node>>& control_dependencies
) const;
bool has_same_type(std::shared_ptr<const Node> node) const;
RTMap& get_rt_info();
const RTMap& get_rt_info() const;
NodeVector get_users(bool check_is_used = false) const;
virtual size_t get_version() const;
virtual std::shared_ptr<Node> get_default_value() const;
bool operator < (const Node& other) const;
std::vector<Input<Node>> inputs();
std::vector<Input<const Node>> inputs() const;
std::vector<Output<Node>> input_values() const;
std::vector<Output<Node>> outputs();
std::vector<Output<const Node>> outputs() const;
Input<Node> input(size_t input_index);
Input<const Node> input(size_t input_index) const;
Output<Node> input_value(size_t input_index) const;
Output<Node> output(size_t output_index);
Output<const Node> output(size_t output_index) const;
OPENVINO_SUPPRESS_DEPRECATED_START void set_op_annotations(std::shared_ptr<ngraph::op::util::OpAnnotations> op_annotations);
std::shared_ptr<ngraph::op::util::OpAnnotations> get_op_annotations() const;
virtual OPENVINO_SUPPRESS_DEPRECATED_END bool match_value(
ov::pass::pattern::Matcher \* matcher,
const Output<Node>& pattern_value,
const Output<Node>& graph_value
);
virtual bool match_node(
ov::pass::pattern::Matcher \* matcher,
const Output<Node>& graph_value
);
static _OPENVINO_HIDDEN_METHODconst ::ov::Node::type_info_t& get_type_info_static();
virtual const ::ov::Node::type_info_t& get_type_info() const;
OPENVINO_OP("ReductionBase", "util");
OPENVINO_OP("ArithmeticReduction", "util");
virtual void validate_and_infer_types();
bool reduction_axes_constant() const;
const AxisSet get_reduction_axes() const;
void set_reduction_axes(const AxisSet& reduction_axes);
OPENVINO_OP("ArithmeticReductionKeepDims", "util");
virtual void validate_and_infer_types();
bool get_keep_dims() const;
void set_keep_dims(bool keep_dims);
Detailed Documentation¶
Tensor sum operation.
Element-wise sums the input tensor, eliminating the specified reduction axes. For example:
Parameters¶
Description |
|
---|---|
|
The axes to eliminate through summation. |
|
If set to 1 it holds axes that are used for reduction. |
Inputs¶
Type |
Description |
|
---|---|---|
|
\(N[d_1,\dots,d_n]~(n \geq 0)\) |
An input tensor of any shape and numeric element type. |
Type |
Description |
---|---|
\(N[\textit{delete}(A,d_1,\dots,d_n)]\) |
The tensor \(T\) , where \(T\) is the input tensor with the |
Construction¶
ReduceSum()
Constructs a summation operation.
Constructs a summation operation.
Parameters:
arg |
The tensor to be summed. |
reduction_axes |
The axis positions (0-based) to be eliminated. |
keep_dims |
If set to 1 it holds axes that are used for reduction. |
Methods¶
virtual OPENVINO_SUPPRESS_DEPRECATED_START std::shared_ptr<Node> get_default_value() const
Returns:
The default value for Sum.
virtual OPENVINO_SUPPRESS_DEPRECATED_END OPENVINO_SUPPRESS_DEPRECATED_START bool evaluate(
const HostTensorVector& output_values,
const HostTensorVector& input_values
) const
Evaluates the op on input_values putting results in output_values.
Deprecated Use evaluate with ov::Tensor instead
Parameters:
output_values |
Tensors for the outputs to compute. One for each result |
input_values |
Tensors for the inputs. One for each inputs. |
Returns:
true if successful
virtual OPENVINO_SUPPRESS_DEPRECATED_END bool has_evaluate() const
Allows to get information about availability of evaluate method for the current operation.