Merge branch 'itikhono/ts/fix_performance_issues' of https://github.com/itikhono/openvino into itikhono/ts/fix_performance_issues

This commit is contained in:
Ivan 2023-03-09 01:33:57 +04:00
commit 11b500953d

View File

@ -26,9 +26,15 @@ std::shared_ptr<opset6::Constant> get_reduced_order_constant(const std::shared_p
auto order = order_const->cast_vector<int64_t>();
auto axes = axes_const->cast_vector<int64_t>();
std::sort(axes.rbegin(), axes.rend());
for (const auto& i : axes)
order.erase(order.begin() + i);
if (!axes.empty()) {
std::sort(axes.rbegin(), axes.rend());
for (const auto& i : axes)
order.erase(order.begin() + i);
} else {
// if 2nd input for Squeeze op is not provided, we should remove all 1 dims
// this case will be supported in new TransposeSinkingGeneral transformation.
return nullptr;
}
const auto& updated_order_size = static_cast<int64_t>(order.size());
@ -181,6 +187,10 @@ ov::pass::TransposeReduction::TransposeReduction() {
updated_order = get_reduced_order_constant(reduction_axes, transpose_order);
new_ops.push_back(updated_order);
}
if (!updated_order) {
return false;
}
auto new_transpose = register_new_node<opset6::Transpose>(new_reduce, updated_order);
new_ops.push_back(new_transpose);
new_transpose->set_friendly_name(reduction->get_friendly_name());