Data Fields
ngraph::pass::LowLatency Class Reference

The transformation finds all TensorIterator layers in the network, processes all back edges that describe a connection between Result and Parameter of the TensorIterator body,and inserts ReadValue layer between Parameter and the next layers after this Parameter, and Assign layer after the layers before the Result layer. Supported platforms: CPU, GNA. More...

#include <low_latency.hpp>

Inheritance diagram for ngraph::pass::LowLatency:
Inheritance graph
[legend]
Collaboration diagram for ngraph::pass::LowLatency:
Collaboration graph
[legend]

Data Fields

 NGRAPH_RTTI_DECLARATION
 
- Data Fields inherited from ngraph::pass::MatcherPass
 NGRAPH_RTTI_DECLARATION
 

Additional Inherited Members

- Public Types inherited from ngraph::pass::PassBase
using type_info_t = DiscreteTypeInfo
 
- Public Member Functions inherited from ngraph::pass::MatcherPass
 MatcherPass (const MatcherPass &)=delete
 
MatcherPassoperator= (const MatcherPass &)=delete
 
 MatcherPass (const std::string &name, const std::shared_ptr< pattern::Matcher > &m, const handler_callback &handler, const PassPropertyMask &property=PassProperty::CHANGE_DYNAMIC_STATE)
 
bool apply (std::shared_ptr< ngraph::Node > node)
 
template<typename T , class... Args>
std::shared_ptr< T > register_new_node (Args &&... args)
 
const std::vector< std::shared_ptr< ngraph::Node > > & get_new_nodes ()
 
void clear_new_nodes ()
 
std::shared_ptr< pattern::Matcherget_matcher ()
 
- Public Member Functions inherited from ngraph::pass::PassBase
bool get_property (const PassPropertyMask &prop_mask) const
 Check if this pass has all the pass properties.
 
void set_name (const std::string &name)
 
std::string get_name () const
 
void set_callback (const param_callback &callback)
 Set callback for particular transformation type. This method set global callback. For more details see PassConfig class documentation. More...
 
virtual void set_pass_config (const std::shared_ptr< PassConfig > &pass_config)
 Set PassConfig for particular transformation instance. More...
 
std::shared_ptr< PassConfigget_pass_config ()
 Allows to access PassConfig shared instance. More...
 
bool m_transformation_callback (const std::shared_ptr< const Node > &node)
 Applies callback for given node. By default callback returns false. This method remains here only for backward compatibility and will be removed after all transformations are moved to transformation_callback() method. More...
 
bool transformation_callback (const std::shared_ptr< const Node > &node)
 Applies callback for given node. By default callback returns false. More...
 
virtual const type_info_tget_type_info () const =0
 
- Protected Member Functions inherited from ngraph::pass::MatcherPass
void register_matcher (const std::shared_ptr< pattern::Matcher > &m, const ngraph::graph_rewrite_callback &callback, const PassPropertyMask &property=PassProperty::CHANGE_DYNAMIC_STATE)
 
- Protected Member Functions inherited from ngraph::pass::PassBase
void set_property (const PassPropertyMask &prop, bool value)
 

Detailed Description

The transformation finds all TensorIterator layers in the network, processes all back edges that describe a connection between Result and Parameter of the TensorIterator body,and inserts ReadValue layer between Parameter and the next layers after this Parameter, and Assign layer after the layers before the Result layer. Supported platforms: CPU, GNA.

The example below describes the changes to the inner part (body, back edges) of the Tensor Iterator layer. [] - TensorIterator body () - new layer

before applying the transformation: back_edge_1 -> [Parameter -> some layers ... -> Result ] -> back_edge_1

after applying the transformation: back_edge_1 -> [Parameter -> (ReadValue layer) -> some layers ... -> (Assign layer) ] \ -> Result ] -> back_edge_1

It is recommended to use this transformation in conjunction with the Reshape feature to set sequence dimension to 1 and with the UnrollTensorIterator transformation. For convenience, we have already enabled the unconditional execution of the UnrollTensorIterator transformation when using the LowLatency transformation for CPU, GNA plugins, no action is required here. After applying both of these transformations, the resulting network can be inferred step by step, the states will store between inferences.


The documentation for this class was generated from the following file: