From 3ee2339ab5c584db09e762c6a43847290b49a5de Mon Sep 17 00:00:00 2001 From: hyunback kim Date: Wed, 15 Jan 2025 15:46:05 +0900 Subject: [PATCH] [GPU] Fix SD3 hybrid static failure. (#28430) Fix functional issue when checks data type during DynamicQuantizeFullyConnected callback. Target model has two output node, it caused the error. ### Tickets: - *160518* Signed-off-by: hyunback --- .../intel_gpu/src/plugin/transformations_pipeline.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/plugins/intel_gpu/src/plugin/transformations_pipeline.cpp b/src/plugins/intel_gpu/src/plugin/transformations_pipeline.cpp index 62dcfcb6ad7c18..c893e14f193a93 100644 --- a/src/plugins/intel_gpu/src/plugin/transformations_pipeline.cpp +++ b/src/plugins/intel_gpu/src/plugin/transformations_pipeline.cpp @@ -1055,9 +1055,11 @@ void TransformationsPipeline::apply(std::shared_ptr func) { if (device_info.supports_immad) { auto dynamic_quantization_group_size = config.get_property(ov::hint::dynamic_quantization_group_size); pass_config->set_callback([=](const_node_ptr& root) -> bool { - if (root->get_input_node_shared_ptr(0)->get_element_type() == ov::element::Type_t::f32) { - GPU_DEBUG_TRACE << root->get_friendly_name() << " dyn_quan is turned off: input type is not supported" << std::endl; - return true; + for (size_t i = 0 ; i < root->get_input_node_shared_ptr(0)->get_output_size(); ++i) { + if (root->get_input_node_shared_ptr(0)->get_output_element_type(i) == ov::element::Type_t::f32) { + GPU_DEBUG_TRACE << root->get_friendly_name() << " dyn_quan is turned off: input type is not supported" << std::endl; + return true; + } } auto weight_shape = root->get_input_partial_shape(1);