openvino
fbfc5cd2 - [GPU] Fix dynamic layout calling of get_dims() in prepare_buffer_fusing (#33108)

Commit
121 days ago
[GPU] Fix dynamic layout calling of get_dims() in prepare_buffer_fusing (#33108) ### Details - Changed to get single dim from partial_shape when get_dims is not available for dynamic layout ### Description of the issue #### Symptom E2E test for Pytorch_YoloV9_api_2_True will be failed at "get_dims()" for "__module.model.22/aten::cat/Concat_4" node during prepare_buffer_fusing pass. #### Root cause "__module.model.22/aten::cat/Concat_4" node has 2 dependent nodes as its inputs. The layout of 1 of the dependent node is dynamic and used to call "get_dims()", which caused the issue. #### How to fix it The concat_axis dim in dims is not dynamic, and can be used to get_length(). #### The code and line that caused this issue - get_dims https://github.com/openvinotoolkit/openvino/blob/4d25dd6aa95acc7f043d06a9ba6ed160530e4025/src/plugins/intel_gpu/src/graph/graph_optimizer/prepare_buffer_fusing.cpp#L323 #### Reproduction step and snapshot ```python -m pytest test_ovc_mo.py --tb=native --env_conf=.automation/env_config.yml --test_conf=test_config_local.yml -m "not launch_only_if_manually_specified " --pregen_irs=python_api_serialized/irs_mapping.csv --tf_models_version=1.15.2 --modules pipelines/production/pytorch/heavy/yolov9.py -k "Pytorch_YoloV9_api_2_True" --dynamism_type=None``` #### Problematic graph - get_dims with dynamic layout (dep 1) <img width="1521" height="923" alt="image" src="https://github.com/user-attachments/assets/b59a8fe6-9e1c-4f06-9dcf-eac3a2612a9b" /> #### Checklist - [ ] Is it a proper fix? (not a workaround) - [ ] Did you include test case for this fix, if necessary? - [ ] Did you review existing test that can be extended to cover this scenario? Which test did you review? ### Tickets: - CVS-101242 --------- Signed-off-by: yuan.xiong <yuan.xiong@intel.com>
Author
Parents
Loading