Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[core] Preserve friendly name and tensor names in PPP #23713

Conversation

praasz
Copy link
Contributor

@praasz praasz commented Mar 27, 2024

Details:

  • For models with version > 10 the node's friendly name and tensor's names will be not moved from original node. If conversion node added by PPP or convert precision then new friendly name will be created based on previous node. The new node name will have format [previous_node_name].[port_number].
  • Align ConvertPrecision transformation to with PPP
  • The issue with lost tensor names when set them on model's inputss/outputs has been solved in [core] Add specific tensor descriptor for Result #25954
  • For model version 10 the old behavior is preserved as legacy compatibility mode

Tickets:

Depends on:

when PPP convert results or convert precision is applied
@praasz praasz requested review from a team as code owners March 27, 2024 13:37
@github-actions github-actions bot added category: Core OpenVINO Core (aka ngraph) category: transformations OpenVINO Runtime library - Transformations labels Mar 27, 2024
@MaximProshin MaximProshin removed their assignment Mar 28, 2024
@MaximProshin MaximProshin requested review from alexsu52 and removed request for MaximProshin March 28, 2024 04:59
@praasz praasz requested a review from a team as a code owner March 28, 2024 05:25
@github-actions github-actions bot added the category: IR FE OpenVINO IR v10 / v11 FrontEnd label Mar 28, 2024
@praasz praasz requested a review from a team as a code owner March 28, 2024 09:57
@github-actions github-actions bot added the category: Python API OpenVINO Python bindings label Mar 28, 2024
@github-actions github-actions bot removed the category: Python API OpenVINO Python bindings label Mar 28, 2024
@praasz praasz removed the request for review from a team March 28, 2024 13:33
@praasz praasz added the no_stale Do not mark as stale label Apr 4, 2024
@github-actions github-actions bot added category: Python API OpenVINO Python bindings category: CPP API OpenVINO CPP API bindings and removed category: IR FE OpenVINO IR v10 / v11 FrontEnd labels Apr 12, 2024
@praasz praasz requested a review from jiwaszki April 12, 2024 11:47
Copy link
Contributor

@t-jankowski t-jankowski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lgtm as of Core and IE.

@mlukasze mlukasze added this to the 2025.0 milestone Oct 31, 2024
- add UnrollIf to check tensor names are not lost if body model is Parameter -> Result

Signed-off-by: Raasz, Pawel <[email protected]>
…or-for-results' into bugfix/fix-ppp-dereferences-input-tensor-names
@praasz praasz requested review from a team as code owners November 15, 2024 12:11
@github-actions github-actions bot added the category: CPU OpenVINO CPU plugin label Nov 15, 2024
github-merge-queue bot pushed a commit that referenced this pull request Dec 12, 2024
### Details:
 - Introduce shared tensor descriptor:
   - It has specific tensor names.
- When specific tensor names set they will be used as tensor names
otherwise the shred tensor names are used.
- Specific tensor names will be added to shared descriptor (input
descriptor), and transferred to new tensor descriptor if changed.
   
- Use shared tensor descriptor for Result, which got specific tensor
names.
- Add dev API Extension interface for descriptor::Tensor for internal OV
use.
- Update `ReverseShapeAndTypeInfer` to use descriptor interface instead
change properties directly. Update `PartialShape` of descriptor can
change it in undefined state with `Shape` property.
 - Improves tensor names handling for model outputs introduced in #23713
 - Fix tensor names issue in `unroll_if` transformation (ticket: 114763)

### Tickets:
 - CVS-143105
 - CVS-146649
 - CVS-114763

### Blocked  by:
- intel-innersource/frameworks.ai.openvino.tests#1684 - fixes e2e tests

---------

Signed-off-by: Raasz, Pawel <[email protected]>
@github-actions github-actions bot removed category: inference OpenVINO Runtime library - Inference category: CPU OpenVINO CPU plugin category: TF FE OpenVINO TensorFlow FrontEnd category: PyTorch FE OpenVINO PyTorch Frontend category: JAX FE OpenVINO JAX FrontEnd labels Dec 13, 2024
Signed-off-by: Raasz, Pawel <[email protected]>
@github-actions github-actions bot removed the category: CPP API OpenVINO CPP API bindings label Dec 13, 2024
@mlukasze mlukasze added this pull request to the merge queue Dec 13, 2024
@praasz praasz removed the no_stale Do not mark as stale label Dec 13, 2024
Merged via the queue into openvinotoolkit:master with commit f1cba31 Dec 13, 2024
182 checks passed
ilya-lavrenov added a commit that referenced this pull request Dec 13, 2024
11happy pushed a commit to 11happy/openvino that referenced this pull request Dec 23, 2024
### Details:
 - Introduce shared tensor descriptor:
   - It has specific tensor names.
- When specific tensor names set they will be used as tensor names
otherwise the shred tensor names are used.
- Specific tensor names will be added to shared descriptor (input
descriptor), and transferred to new tensor descriptor if changed.
   
- Use shared tensor descriptor for Result, which got specific tensor
names.
- Add dev API Extension interface for descriptor::Tensor for internal OV
use.
- Update `ReverseShapeAndTypeInfer` to use descriptor interface instead
change properties directly. Update `PartialShape` of descriptor can
change it in undefined state with `Shape` property.
 - Improves tensor names handling for model outputs introduced in openvinotoolkit#23713
 - Fix tensor names issue in `unroll_if` transformation (ticket: 114763)

### Tickets:
 - CVS-143105
 - CVS-146649
 - CVS-114763

### Blocked  by:
- intel-innersource/frameworks.ai.openvino.tests#1684 - fixes e2e tests

---------

Signed-off-by: Raasz, Pawel <[email protected]>
11happy pushed a commit to 11happy/openvino that referenced this pull request Dec 23, 2024
…t#23713)

### Details:
- For models with `version > 10` the node's friendly name and tensor's
names will be not moved from original node. If conversion node added by
PPP or convert precision then new friendly name will be created based on
previous node. The new node name will have format
`[previous_node_name].[port_number]`.
- Align `ConvertPrecision` transformation to with PPP
- The issue with lost tensor names when set them on model's
inputss/outputs has been solved in openvinotoolkit#25954
- For model version 10 the old behavior is preserved as legacy
compatibility mode

### Tickets:
 - [CVS-127482](https://jira.devtools.intel.com/browse/CVS-127482)

### Depends on:
- openvinotoolkit#25954 - implements tensor names handling for model outputs (should be
used here)

---------

Signed-off-by: Raasz, Pawel <[email protected]>
Co-authored-by: Michal Lukaszewski <[email protected]>
Co-authored-by: Anastasia Kuporosova <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category: Core OpenVINO Core (aka ngraph) category: Python API OpenVINO Python bindings category: transformations OpenVINO Runtime library - Transformations
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants