diff --git a/src/plugins/intel_gpu/include/intel_gpu/runtime/layout.hpp b/src/plugins/intel_gpu/include/intel_gpu/runtime/layout.hpp index 82cf01ab9522b1..62e4c08a90f004 100644 --- a/src/plugins/intel_gpu/include/intel_gpu/runtime/layout.hpp +++ b/src/plugins/intel_gpu/include/intel_gpu/runtime/layout.hpp @@ -183,7 +183,7 @@ struct padding { } friend bool operator<(const padding& lhs, const padding& rhs) { - OPENVINO_ASSERT(!lhs.is_dynamic() && !rhs.is_dynamic(), "[GPU] padding compare is called for dynamic shape"); + // Compare only actual padding size not _dynamic_dims_mask if (lhs._lower_size < rhs._lower_size) return true; else if (lhs._lower_size > rhs._lower_size) return false; if (lhs._upper_size < rhs._upper_size) return true; diff --git a/src/plugins/intel_gpu/src/runtime/memory_pool.cpp b/src/plugins/intel_gpu/src/runtime/memory_pool.cpp index 9dee7c4487002e..1d34cfcde18a63 100644 --- a/src/plugins/intel_gpu/src/runtime/memory_pool.cpp +++ b/src/plugins/intel_gpu/src/runtime/memory_pool.cpp @@ -306,7 +306,7 @@ memory::ptr memory_pool::get_memory(const layout& layout, } if (do_reuse) { // reusable within the same network - if (!layout.format.is_image() && layout.data_padding == padding{{0, 0, 0, 0}, 0}) { + if (!layout.format.is_image() && !layout.data_padding) { // non-padded buffers return get_from_non_padded_pool(layout, prim_id, unique_id, network_id, restrictions, type, reset, is_dynamic); } else if (!layout.format.is_image()) {