aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/core/grappler/optimizers/arithmetic_optimizer.h
diff options
context:
space:
mode:
authorGravatar A. Unique TensorFlower <gardener@tensorflow.org>2018-04-02 12:41:59 -0700
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2018-04-02 12:44:20 -0700
commitc8064f1ac3c42951aa1593260346b75d306ffe95 (patch)
tree60a9e2f15d6982d6c47878862dae5bed324476dc /tensorflow/core/grappler/optimizers/arithmetic_optimizer.h
parentfc34c057d9d1118477b3e02870b97305c2d1af86 (diff)
Rewrite Add/AddN subgraph, minimizing number of required broadcasts.
1) Collect to AddOpsGroup inputs of symbolically defined shapes, that can be broadcasted to the root shape 2) Rewrite equal shapes with AddN(s) 3) Build Add tree from aggegations of different shapes, minimizing the cost of broadcast PiperOrigin-RevId: 191331566
Diffstat (limited to 'tensorflow/core/grappler/optimizers/arithmetic_optimizer.h')
-rw-r--r--tensorflow/core/grappler/optimizers/arithmetic_optimizer.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/tensorflow/core/grappler/optimizers/arithmetic_optimizer.h b/tensorflow/core/grappler/optimizers/arithmetic_optimizer.h
index 965f0e9ea2..63a7b55893 100644
--- a/tensorflow/core/grappler/optimizers/arithmetic_optimizer.h
+++ b/tensorflow/core/grappler/optimizers/arithmetic_optimizer.h
@@ -69,7 +69,13 @@ class ArithmeticOptimizer : public GraphOptimizer {
// optimization level by default.
static ArithmeticOptimizerOptions Default(
RewriterConfig::Toggle opt_level) {
- return ArithmeticOptimizerOptions();
+ ArithmeticOptimizerOptions options;
+ // TODO(ezhulenev): enable combine_add_to_addn by default after 1.8
+ // release cut
+ if (opt_level == RewriterConfig::AGGRESSIVE) {
+ options.combine_add_to_addn = true;
+ }
+ return options;
}
};