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

[Snippets] Fixed LoopManager::update_loop_ports #27300

Merged

Conversation

a-sidorova
Copy link
Contributor

@a-sidorova a-sidorova commented Oct 29, 2024

Details:

  • To remind, LoopPort is expression port connected to another expression port which is not in the same Loop. It's like entry (of exit) point of the Loop. It means that some expression port cannot be port of the Loop if all consumers (or sources) are from the same Loop. However, the method LoopManager::update_loop_ports sometimes creates these situation. This PR fixes this method. The screenshot below describes this situation: red loop is inner loop and blue loops is outer loop. However, some of output ports of this Loop is inside (green question sign) - invalid situation which is fixed by these changes.
image
  • Added the corresponding checks to validate pass
  • Remove parts in init_is_incremented which handle invalid case by is_incremented=false.

Tickets:

@a-sidorova a-sidorova requested a review from a team as a code owner October 29, 2024 10:21
@a-sidorova a-sidorova requested review from IvanNovoselov and v-Golubev and removed request for a team and IvanNovoselov October 29, 2024 10:22
@github-actions github-actions bot added the category: CPU OpenVINO CPU plugin label Oct 29, 2024
@a-sidorova a-sidorova force-pushed the fix/snippets/loop_port_update branch 2 times, most recently from 83e593e to 64ccda1 Compare October 30, 2024 05:10
@IvanNovoselov IvanNovoselov added this pull request to the merge queue Nov 5, 2024
@IvanNovoselov IvanNovoselov removed this pull request from the merge queue due to a manual request Nov 5, 2024
@IvanNovoselov IvanNovoselov added this pull request to the merge queue Nov 6, 2024
Merged via the queue into openvinotoolkit:master with commit b6fe65f Nov 6, 2024
164 checks passed
@IvanNovoselov IvanNovoselov deleted the fix/snippets/loop_port_update branch November 6, 2024 10:20
github-merge-queue bot pushed a commit that referenced this pull request Nov 7, 2024
### Details:
- *Added memory inplace support for Buffer with different precision
(it's supported only when output Buffer has data size not more than
input Buffer) - it's needed for BF16 and INT8 MHA*
- *Added memory inplace support for dynamic Buffers with the marking
pass "MarkInvariantShapePath"*

### Tickets:
 - *154732, 150148*
 

### Prerequisites:
- [x] #27169
- [x] #27300
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category: CPU OpenVINO CPU plugin
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants