Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | [Grappler] Add RemoveStackStridedSliceSameAxis optimizer. | Eugene Brevdo | 2018-10-10 |
| | | | | | | | | | | | | | | | | // Replace operations of the form: // x = stack((a_0, a_1, ..., a_{n-1}), axis=k)[:,...,i,...] // with // a_i // when the strided slice index `i` is applied in the k'th axis. // // Similarly, replace operations of the form: // x = stack((a_0, a_1, ..., a_{n-1}), axis=k)[:,...,i:i+1,...] // with // expand_dims(a_i, axis=k) // PiperOrigin-RevId: 216535346 | ||
* | Re-enable hoisting of coeff-wise unary chains out of Split and into Concat. | A. Unique TensorFlower | 2018-08-31 |
| | | | | PiperOrigin-RevId: 211162510 | ||
* | Convert exp(x)-1 into expm1(x). | A. Unique TensorFlower | 2018-07-31 |
| | | | | PiperOrigin-RevId: 206841457 | ||
* | Automated rollback of commit 6874e1ef40c4189d96c105227f60b507953f95d3 | A. Unique TensorFlower | 2018-07-09 |
| | | | | PiperOrigin-RevId: 203790544 | ||
* | UnaryOpsComposition arithmetic optimizer. | Eugene Zhulenev | 2018-06-29 |
| | | | | PiperOrigin-RevId: 202703970 | ||
* | Convert exp(x-1) into expm1(x). | A. Unique TensorFlower | 2018-06-28 |
| | | | | PiperOrigin-RevId: 202598404 | ||
* | Optimize max/min reductions over monotonic functions | A. Unique TensorFlower | 2018-06-16 |
| | | | | PiperOrigin-RevId: 200843761 | ||
* | Convert log(x+1) to log1p(x). | A. Unique TensorFlower | 2018-06-14 |
| | | | | PiperOrigin-RevId: 200645461 | ||
* | Automated g4 rollback of changelist 197562826 | A. Unique TensorFlower | 2018-06-05 |
| | | | | PiperOrigin-RevId: 199388675 | ||
* | Move fold-transpose and fold-conjugate optimizations into stages. | Eugene Zhulenev | 2018-06-05 |
| | | | | PiperOrigin-RevId: 199371452 | ||
* | Move SimplifyAggregation to separate aggregation stage. | Eugene Zhulenev | 2018-06-05 |
| | | | | PiperOrigin-RevId: 199346067 | ||
* | Move ReplaceMulWithSquare to a separate optimizer stage. | Eugene Zhulenev | 2018-06-05 |
| | | | | PiperOrigin-RevId: 199338297 | ||
* | Turns on optimization to convert division of sqrt to multiplication of rsqrt | A. Unique TensorFlower | 2018-06-04 |
| | | | | PiperOrigin-RevId: 199177029 | ||
* | Extract FoldMultiplyIntoConv optimization stage. | A. Unique TensorFlower | 2018-06-01 |
| | | | | PiperOrigin-RevId: 198953044 | ||
* | Move reorder-cast-and-transpose optimization to optimization stage. | A. Unique TensorFlower | 2018-05-31 |
| | | | | PiperOrigin-RevId: 198788352 | ||
* | Move RemodeRedundantReshape optimization to a separate stage. | A. Unique TensorFlower | 2018-05-31 |
| | | | | PiperOrigin-RevId: 198775276 | ||
* | Move RemoveInvolution optimization to optimizer stage. | A. Unique TensorFlower | 2018-05-30 |
| | | | | PiperOrigin-RevId: 198624394 | ||
* | Automated g4 rollback of changelist 197868028 | A. Unique TensorFlower | 2018-05-24 |
| | | | | PiperOrigin-RevId: 197942379 | ||
* | Automated g4 rollback of changelist 197477959 | A. Unique TensorFlower | 2018-05-24 |
| | | | | PiperOrigin-RevId: 197868028 | ||
* | Automated g4 rollback of changelist 197527651 | A. Unique TensorFlower | 2018-05-22 |
| | | | | PiperOrigin-RevId: 197562826 | ||
* | convert Pow op into something that is more recognizable, so we can have further | A. Unique TensorFlower | 2018-05-22 |
| | | | | | | optimizations. PiperOrigin-RevId: 197527651 | ||
* | Add arithmetic optimizer stage that removes LogicalNot that takes a ↵ | A. Unique TensorFlower | 2018-05-21 |
| | | | | | | | | | | | | | comparison as input, i.e. !(a == b) => a != b !(a != b) => a == b !(a < b) => a >= b !(a <= b) => a > b !(a > b) => a <= b !(a >= b) => a < b PiperOrigin-RevId: 197477959 | ||
* | Temporarily disable concat rewrite. | A. Unique TensorFlower | 2018-05-08 |
| | | | | PiperOrigin-RevId: 195762860 | ||
* | Optimize idempotent ops, e.g., Snapshot(Snapshot(x)) => Snapshot(x) | A. Unique TensorFlower | 2018-05-04 |
| | | | | PiperOrigin-RevId: 195308675 | ||
* | Enable unary chain hoisting optimization for concat/split/splitv by default. | A. Unique TensorFlower | 2018-05-03 |
| | | | | PiperOrigin-RevId: 195297330 | ||
* | Implement unary chain hoisting optimization for Concat, Split, and SplitV. | A. Unique TensorFlower | 2018-04-30 |
| | | | | | | | | | | | | | | | | | | For Concat, hoist prefix chains of unary ops before concatenation, e.g. // Rewrites // Concat({Cos(Exp(a)), Cos(Exp(b)), Cos(Exp(c))}) // into // Cos(Exp(Concat({a, b, c}))). For Split/SplitV hoist unary postfix chains before the split, e.g. // Rewrites // [Cos(Exp(y)) for y in Split(x)] // into // [y for y in Split(Cos(Exp(x)))]. The new optimization is off by default. PiperOrigin-RevId: 194850318 | ||
* | Adds optimization to convert division of sqrt to multiplication of rsqrt | A. Unique TensorFlower | 2018-04-26 |
| | | | | PiperOrigin-RevId: 194459152 | ||
* | Format header guards under tensorflow/core/grappler. | A. Unique TensorFlower | 2018-04-26 |
| | | | | PiperOrigin-RevId: 194387041 | ||
* | Automated g4 rollback of changelist 194261487 | A. Unique TensorFlower | 2018-04-25 |
| | | | | PiperOrigin-RevId: 194307293 | ||
* | Automated g4 rollback of changelist 194186080 | A. Unique TensorFlower | 2018-04-25 |
| | | | | PiperOrigin-RevId: 194261487 | ||
* | Automated g4 rollback of changelist 194180248 | A. Unique TensorFlower | 2018-04-24 |
| | | | | PiperOrigin-RevId: 194186080 | ||
* | Enable concat hoisting optimization by default. | A. Unique TensorFlower | 2018-04-24 |
| | | | | PiperOrigin-RevId: 194180248 | ||
* | Implement hoisting of common prefix of unary ops to concat. | A. Unique TensorFlower | 2018-04-24 |
| | | | | PiperOrigin-RevId: 194135148 | ||
* | Enable all arithmetic optimizations by default. | A. Unique TensorFlower | 2018-04-24 |
| | | | | PiperOrigin-RevId: 194106835 | ||
* | Minimize broadcasts by rewriting a sub-tree of binary associative ops (Add, ↵ | A. Unique TensorFlower | 2018-04-09 |
| | | | | | | Mul). PiperOrigin-RevId: 192145052 | ||
* | Fix a few bugs in ArithmeticOptimizer and make it robust to failures of ↵ | A. Unique TensorFlower | 2018-04-06 |
| | | | | | | shape inference. PiperOrigin-RevId: 191922788 | ||
* | Fixed handling of control dependencies in the arithmethic optimizer | Benoit Steiner | 2018-04-04 |
| | | | | PiperOrigin-RevId: 191665098 | ||
* | Rewrite Add/AddN subgraph, minimizing number of required broadcasts. | A. Unique TensorFlower | 2018-04-02 |
| | | | | | | | | | | 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 | ||
* | Automated g4 rollback of changelist 190801044 | A. Unique TensorFlower | 2018-03-28 |
| | | | | PiperOrigin-RevId: 190839672 | ||
* | Make ArithmeticOptimizer robust to failures of shape inference and ↵ | A. Unique TensorFlower | 2018-03-28 |
| | | | | | | | | individual stages. Get rid of graph annotation and use GraphProperties directly. PiperOrigin-RevId: 190801044 | ||
* | Simple rewrite to remove negation nodes. | A. Unique TensorFlower | 2018-03-19 |
| | | | | PiperOrigin-RevId: 189595735 | ||
* | Remove identity transpose nodes. | A. Unique TensorFlower | 2018-03-16 |
| | | | | PiperOrigin-RevId: 189406518 | ||
* | Disable Add/AddN rewrite (temp). | A. Unique TensorFlower | 2018-03-15 |
| | | | | PiperOrigin-RevId: 189189997 | ||
* | Enable Add/AddN tree rewrite for symbolically equal shapes. | A. Unique TensorFlower | 2018-03-14 |
| | | | | | | | | | 1) Rewrite a tree of Add/AddN ops with a single AddN, if all shapes are symbolically equal 2) Lookup shape properties using GraphProperties instead of direct access to Node attributes PiperOrigin-RevId: 189131726 | ||
* | Move "hoist common factor out of aggregation" optimization | A. Unique TensorFlower | 2018-03-12 |
| | | | | | | | | | | | to a separate stage. 1) Use a new naming scheme for optimized ops, share it with AddOpsRewrite 2) Make sure that tests actually test that optimized nodes exists in a graph PiperOrigin-RevId: 188772892 | ||
* | Move optimizations to arithmetic optimizer stages | A. Unique TensorFlower | 2018-03-09 |
| | | | | | | | | 1) Redundant Bitcast 2) Redundant Cast 3) Remove inverse transpose PiperOrigin-RevId: 188569367 | ||
* | Add/AddN optimizer/rewriter | A. Unique TensorFlower | 2018-03-08 |
| | | | | | | | Collapse a sub-graph of Add/AddN operations of fully specified and identical shapes to a single AddN operation. PiperOrigin-RevId: 188392302 | ||
* | Make sure the same rewrite is not performed multiple times in ↵ | A. Unique TensorFlower | 2018-01-19 |
| | | | | | | | | ArithmeticOptimizer, and that added nodes are unique. A couple of minor cleanups. PiperOrigin-RevId: 182609552 | ||
* | Refactor code in arithmetic and dependency optimizers | A. Unique TensorFlower | 2017-11-27 |
| | | | | | | | | | - get rid of duplicated code for node creation, - make the optimized graph, the NodeMap and FrameMap data members - misc. minor simplifications. Fix a few bugs in NodeMap: Make sure we strip port numbers off inputs before using them as keys to outputs_ or nodes_. PiperOrigin-RevId: 177093144 | ||
* | Created new shared IsFreeOfSideEffect and ModifiedFrameInfo functions. | Benoit Steiner | 2017-11-17 |
| | | | | PiperOrigin-RevId: 176124088 |