aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/core/grappler
diff options
context:
space:
mode:
authorGravatar TensorFlower Gardener <gardener@tensorflow.org>2018-09-22 15:55:12 -0700
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2018-09-22 15:55:17 -0700
commit3aa23d30c2e7a675cff8fd0a0ebe9d249dde70a4 (patch)
treed311f15c1e5d9ac567f4f5e982f0e7b2c44876df /tensorflow/core/grappler
parent425e96f3ae4eb338268e3738260f9d79e4bdd893 (diff)
parent0598bbc08098e5ed0ec6f9029f301c725fcd9530 (diff)
Merge pull request #22453 from samikama:custom_optimizer_ordering
PiperOrigin-RevId: 214132703
Diffstat (limited to 'tensorflow/core/grappler')
-rw-r--r--tensorflow/core/grappler/optimizers/meta_optimizer.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/tensorflow/core/grappler/optimizers/meta_optimizer.cc b/tensorflow/core/grappler/optimizers/meta_optimizer.cc
index 3da7a72e80..3992b45c64 100644
--- a/tensorflow/core/grappler/optimizers/meta_optimizer.cc
+++ b/tensorflow/core/grappler/optimizers/meta_optimizer.cc
@@ -220,6 +220,16 @@ Status MetaOptimizer::InitializeCustomGraphOptimizers(
TF_RETURN_IF_ERROR(custom_optimizer->Init(&optimizer_config));
optimizers->push_back(std::move(custom_optimizer));
} else {
+ // If there are no custom optimizers with given name, try to initalize a
+ // default optimizer. This way, custom configurable optimizers can be
+ // mixed with default optimizers in any order.
+ auto optimizer = MakeNewOptimizer(optimizer_config.name());
+ if (optimizer) {
+ VLOG(2) << "Registered default graph optimizer: "
+ << optimizer_config.name();
+ optimizers->push_back(std::move(optimizer));
+ continue;
+ }
VLOG(2) << "Can't register an optimizer by name: "
<< optimizer_config.name();
}