From 2d4f1b5ab9f6c7d1f1cb2a0f249fd79a00b9f5cd Mon Sep 17 00:00:00 2001 From: Wilson Seok Date: Thu, 28 Nov 2024 16:39:35 -0800 Subject: [PATCH] Revert "[GPU] WA to avoid too long consecutive runtime skippable nodes (#27635)" (#27781) This reverts commit 9a5d3a5051e52a1c81837b0f901af5e215f9fcb3. ### Details: - The WA causes accuracy issue in mixtral model ### Tickets: - 157374 --- .../mark_runtime_skippable_nodes.cpp | 25 ------------------- 1 file changed, 25 deletions(-) diff --git a/src/plugins/intel_gpu/src/graph/graph_optimizer/mark_runtime_skippable_nodes.cpp b/src/plugins/intel_gpu/src/graph/graph_optimizer/mark_runtime_skippable_nodes.cpp index 924503e26e0546..6fc98f5023d761 100644 --- a/src/plugins/intel_gpu/src/graph/graph_optimizer/mark_runtime_skippable_nodes.cpp +++ b/src/plugins/intel_gpu/src/graph/graph_optimizer/mark_runtime_skippable_nodes.cpp @@ -19,12 +19,9 @@ #include "scatter_nd_update_inst.h" #include "program_helpers.h" -#include - using namespace cldnn; void mark_runtime_skippable_nodes::run(program& p) { - std::unordered_map runtime_skippable_depth; auto itr = p.get_processing_order().begin(); while (itr != p.get_processing_order().end()) { @@ -55,24 +52,6 @@ void mark_runtime_skippable_nodes::run(program& p) { continue; } - // Check whether consecutive runtime skippable nodes is lower than max count. - // Too long consecutive runtime skippable nodes causes huge time consumption in add_memory_dependency() of basic_memory_dependencies pass. - // max count 7 is experimentally selected in specific model. - const uint8_t max_runtime_skippable_depth = 7; - uint8_t dep_runtime_skippable_depth = 0; - for (const auto& dep : node->get_dependencies()) { - if (dep.first->is_runtime_skippable() && - (runtime_skippable_depth.find(dep.first) != runtime_skippable_depth.end())) { - dep_runtime_skippable_depth = std::max(runtime_skippable_depth[dep.first], dep_runtime_skippable_depth); - } - } - if (!node->is_runtime_skippable() && (dep_runtime_skippable_depth >= max_runtime_skippable_depth)) { - GPU_DEBUG_TRACE_DETAIL << "[mark_runtime_skippable_nodes] : " << node->id() - << " doesn't have runtime skippable due to max_runtime_skippable_depth(" - << static_cast(max_runtime_skippable_depth) << ")." << std::endl; - continue; - } - program_helpers::do_for_types(*node, [](gather_node& node) { // Check pattern auto impl_params = node.get_kernel_impl_params(); @@ -276,9 +255,5 @@ void mark_runtime_skippable_nodes::run(program& p) { GPU_DEBUG_TRACE_DETAIL << "[mark_runtime_skippable_nodes] : " << node.id() << " can_be_optimized" << std::endl; } }); - - if (node->is_runtime_skippable()) { - runtime_skippable_depth[node] = dep_runtime_skippable_depth + 1; - } } }