diff options
author | A. Unique TensorFlower <gardener@tensorflow.org> | 2018-04-02 12:41:59 -0700 |
---|---|---|
committer | TensorFlower Gardener <gardener@tensorflow.org> | 2018-04-02 12:44:20 -0700 |
commit | c8064f1ac3c42951aa1593260346b75d306ffe95 (patch) | |
tree | 60a9e2f15d6982d6c47878862dae5bed324476dc /tensorflow/core/grappler/optimizers/arithmetic_optimizer.h | |
parent | fc34c057d9d1118477b3e02870b97305c2d1af86 (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.h | 8 |
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; } }; |