History log of /external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
4b83dea191761967e5d4c705caac6078f8360a1e 02-Feb-2018 A. Unique TensorFlower <gardener@tensorflow.org> Add shape inference for outside_compilation graph rewrite. Pull out enough of the graph to enable inference of the shape of a SendFromHost Op once the shape of corresponding RecvAtHost Ops are known.
END_PUBLIC

Fixed open source build breaks.

BEGIN_PUBLIC
Automated g4 rollback of changelist 184169668

PiperOrigin-RevId: 184306845
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
4adfae9fe10968063cf55cea1bfef9b405c407c0 01-Feb-2018 Anna R <annarev@google.com> Automated g4 rollback of changelist 184153187

PiperOrigin-RevId: 184169668
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
df344949494003ffa6eb8d9cb777558128436dc6 01-Feb-2018 A. Unique TensorFlower <gardener@tensorflow.org> Add shape inference for outside_compilation graph rewrite. Pull out enough of the graph to enable inference of the shape of a SendFromHost Op once the shape of corresponding RecvAtHost Ops are known.

PiperOrigin-RevId: 184153187
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
e78ec6b40d9af515044bde7e184a9a85b0aa0a41 19-Dec-2017 A. Unique TensorFlower <gardener@tensorflow.org> Initial checkin for outside_compilation. Adds a new attribute for encapsulating XLA subgraphs that will in the future be used to mark some Ops in the subgraph as 'outside_compilation' meaning they will be run as interpreted TensorFlow via a callout from a compiled XLA subgraph.

This is the first of a sequence of checkins. It adds new types of edges entering and leaving the subgraphs, suitable for send/recv between a compiled XLA subgraph and the 'host', i.e., uncompiled TensorFlow.

For now no code sets the new 'outside_compilation' attributes, and the Ops to perform the send/recv are not present in the codebase; these will follow in subsequent checkins.

PiperOrigin-RevId: 179591853
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
e92f85e78573fbf88accdf4b76535b0c70e7f674 14-Dec-2017 A. Unique TensorFlower <gardener@tensorflow.org> Refactor encapsulate_subgraphs_pass in preparation for adding new functionality.

PiperOrigin-RevId: 179102453
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
c14ef60950282552acd6d536f94811de42aa4ea9 04-Dec-2017 Vinu Rajashekhar <vinuraja@google.com> Marks args as runtime consts in XLA EncapsulateSubgraphsPass.

- Using the GuaranteeConstOp.
- Runs a backwards analysis on the args to see if all the paths lead to GuaranteeConstOps/ConstOps.

PiperOrigin-RevId: 177862716
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
19a55725af8102d72d4e081c5139f0e4bd5a4bb7 18-Aug-2017 Rohan Jain <rohanj@google.com> Allowing functions to run across devices. This change expands the ProcessFunctionLibraryRuntime library to Instantiate and Run functions on different devices. When a FunctionLibraryRuntime encounters a function with a target that is another device, it delegates Instantiate() and Run() calls to the ProcessFunctionLibraryRuntime.

This change also moves the table_ containing all function instantiations to the PFLR instead of the FunctionLibraryRuntime.

PiperOrigin-RevId: 165651194
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
935ff49201edd7a6297b313fb9545d1299b9a28d 17-Aug-2017 Rohan Jain <rohanj@google.com> Automated g4 rollback of changelist 165521057

PiperOrigin-RevId: 165604864
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
37de1372ff43b144750c789b088f3166bcb6a27a 17-Aug-2017 Rohan Jain <rohanj@google.com> Allowing functions to run across devices. This change expands the ProcessFunctionLibraryRuntime library to Instantiate and Run functions on different devices. When a FunctionLibraryRuntime encounters a function with a target that is another device, it delegates Instantiate() and Run() calls to the ProcessFunctionLibraryRuntime.

This change also moves the table_ containing all function instantiations to the PFLR instead of the FunctionLibraryRuntime.

PiperOrigin-RevId: 165521057
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
818b768cdabbb5137e7d522a34c9754872fd50b7 01-Jul-2017 A. Unique TensorFlower <gardener@tensorflow.org> Minor cleanup: remove unused constructions

PiperOrigin-RevId: 160736783
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
626f95ab90d9cecb407148aeb175e630af3b904d 01-Jun-2017 Peter Hawkins <phawkins@google.com> [TF:XLA] Don't enforce that all nodes in an encapsulated subgraph are on the same device.
Use the assigned device rather than the user-requested device when converting a Graph to a FunctionDef.

PiperOrigin-RevId: 157648977
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
01967e30a4fa3003e917973dbfa04016c7f0b69a 26-May-2017 A. Unique TensorFlower <gardener@tensorflow.org> Use "override" and "nullptr"; remove unused includes

PiperOrigin-RevId: 157258631
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
4e131d27354bc9be90e291f3ec4538c0e3bf06eb 22-May-2017 A. Unique TensorFlower <gardener@tensorflow.org> Many algorithms need to enumerate the set of nodes within a graph, while excluding the special Sink and Source nodes. The checks for skipping Source and Sink are duplicated in dozens of loops.

This CL adds a new Graph::op_nodes() method, which returns an enumerable range of all operation nodes, excluding Sink and Source. This allows many for loops to be simplified.

This simplification is being done mainly for readability / reliability. There may be a tiny performance difference owing to this change (as well as making the Graph::nodes() and Graph::op_nodes() methods inlineable), but the measured difference is not reliably large enough to be significant.

The changes to graph.h and graph.cc are quite minimal. I updated all of the uses of Graph::nodes() that I could reliably determine were unaffected by the change. Most uses immediately checked node->IsOp(). Some compared node->type_string() against literal strings, none of which were "_SINK" or "_SOURCE", and so using op_nodes() was more appropriate than nodes(). In some cases, it was not obvious whether an existing use of Graph::node() wanted to enumerate Sink / Source, so I left those uses unaffected.

PiperOrigin-RevId: 156782112
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
73882f257ffb1bc9e1a828571c085d080b1d9266 17-May-2017 Geoffrey Irving <geoffreyi@google.com> Automated g4 rollback of changelist 156251356

PiperOrigin-RevId: 156315860
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
43db5c623f748b6f9704e9e9be5a5a11fa2a4c1a 17-May-2017 Geoffrey Irving <geoffreyi@google.com> Automated g4 rollback of changelist 156244933

PiperOrigin-RevId: 156251356
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
749e5cc18381f7a5ec174673f76e20aead8529c6 17-May-2017 Geoffrey Irving <geoffreyi@google.com> Reduce direct references to NodeDef in favor of Node and AttrSlice

This is one step towards replacing in-memory use of NodeDef with a customized
NodeInfo class. There are still quite a few Node::def() references, but far fewer than before. Those remaining require more work, either because they are part of kernel registration (which is a bunch of functions), copy and modify the NodeDef, etc. Follow-on CLs will remove more.

RELNOTES: n/a
PiperOrigin-RevId: 156244933
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
d61efef9e8c1b0abe369ab725534855d85d96dac 10-May-2017 Peter Hawkins <phawkins@google.com> Add a mechanism for ControlFlowContexts to notify outer contexts of nodes added in an inner context.
[TF:XLA] Add checks for Ref types in encapsulate_subgraphs_pass. Add support for overriding the names of the functions generated by encapsulate_subgraphs_pass.
Relax an over-zealous check when dumping a graph in function.cc

PiperOrigin-RevId: 155669293
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
542c3cbf711c4b89310fa4046c48150d29564008 22-Feb-2017 Peter Hawkins <phawkins@google.com> [TF:XLA] Add support for resource variables to the Tensorflow/XLA bridge.
Change: 148176223
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
8eb161e39185d364e04a6edf2beadc2bb5cb978c 14-Jan-2017 Peter Hawkins <phawkins@google.com> Add support for passes that run post-partitioning to OptimizationRegistry.

To avoid another GraphDef -> Graph -> GraphDef conversion, change Device::MaybeRewriteGraph to take a Graph instead of a GraphDef.

Use std::unique_ptr<> in more places to avoid some awkward .release() magic.
Change: 144532446
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc
1e67c90e2caceeff82d09793d1ef5fa0300d219b 09-Jan-2017 Peter Hawkins <phawkins@google.com> Initial open-source release of XLA: Accelerated Linear Algebra.

XLA is a compiler-based linear algebra execution engine that targets CPUs, GPUs and custom accelerators.

XLA is still experimental; we are releasing it early to get the community involved.
Change: 143990941
/external/tensorflow/tensorflow/compiler/jit/encapsulate_subgraphs_pass.cc