class ov::pass::low_precision::MarkupPrecisions

Overview

MarkupPrecisions transformation marks: 1) not supported operations by PrecisionsAttribute attribute with empty precisions, 2) operations with required precisions by PrecisionsAttribute attribute according to the provided restrictions, 3) precision preserved operations by PrecisionPreservedAttribute attribute. More…

#include <markup_precisions.hpp>

class MarkupPrecisions: public ov::pass::ModelPass
{
public:
    // classes

    class Restriction;

    // construction

    MarkupPrecisions(
        const std::vector<PrecisionsRestriction>& restrictions = {},
        const std::vector<ov::element::Type>& defaultPrecisions = { ov::element::u8, ov::element::i8 }
        );

    // methods

    OPENVINO_RTTI("MarkupPrecisions", "0");
    virtual bool run_on_model(const std::shared_ptr<ov::Model>& m);
};

Inherited Members

public:
    // typedefs

    typedef DiscreteTypeInfo type_info_t;

    // methods

    bool get_property(const PassPropertyMask& prop_mask) const;
    void set_name(const std::string& name);
    std::string get_name() const;
    void set_callback(const param_callback& callback);
    virtual void set_pass_config(const std::shared_ptr<PassConfig>& pass_config);
    std::shared_ptr<PassConfig> get_pass_config();
    bool transformation_callback(const std::shared_ptr<const Node>& node);
    virtual const type_info_t& get_type_info() const = 0;
    OPENVINO_RTTI("ov::pass::ModelPass");
    virtual bool run_on_model(const std::shared_ptr<ov::Model>& m) = 0;

Detailed Documentation

MarkupPrecisions transformation marks: 1) not supported operations by PrecisionsAttribute attribute with empty precisions, 2) operations with required precisions by PrecisionsAttribute attribute according to the provided restrictions, 3) precision preserved operations by PrecisionPreservedAttribute attribute.

For more details about the transformation, refer to MarkupPrecisions page in the Inference Engine Developer Guide.