From 8fa58e776283de8d1e877fe6d57d6a3f6e4dc556 Mon Sep 17 00:00:00 2001 From: "A. Unique TensorFlower" Date: Fri, 1 Mar 2019 13:44:12 -0800 Subject: [PATCH] Do not skip pruning identities inserted by Grappler in dependency optimizer. PiperOrigin-RevId: 236370572 --- .../core/grappler/optimizers/dependency_optimizer.cc | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/tensorflow/core/grappler/optimizers/dependency_optimizer.cc b/tensorflow/core/grappler/optimizers/dependency_optimizer.cc index 8b81cb2430c..3a3bb2c9b69 100644 --- a/tensorflow/core/grappler/optimizers/dependency_optimizer.cc +++ b/tensorflow/core/grappler/optimizers/dependency_optimizer.cc @@ -75,16 +75,8 @@ bool DependencyOptimizer::SafeToRemoveIdentity(const NodeDef& node) const { // Recv. if (IsVariable(*input) || IsRecv(*input)) { return false; - } else if (IsSwitch(*input)) { - // Don't turn Identity nodes following Switch into NoOp or remove them - // if it requires anchoring a control dependencies the Switch node, which - // is not valid. - if (str_util::StartsWith(node.name(), kConstantFoldingCtrl)) { - // TODO(rmlarsen): Try to remove this artificial contraint. - return false; - } } - for (auto consumer : node_map_->GetOutputs(node.name())) { + for (const auto& consumer : node_map_->GetOutputs(node.name())) { if (node.input_size() > 1 && IsMerge(*consumer)) { return false; }