d6326d772d117e6950304c7240cb029642fbf58c |
|
10-Jan-2018 |
Anna R <annarev@google.com> |
Removing op_gen_overrides.proto and references. Overrides in op_gen_overrides.pbtxt are a part of tensorflow/core/api_def/base_api/. PiperOrigin-RevId: 181386873
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
cf57817f554fa7bfe7c134453ef9cf4374aef23d |
|
21-Nov-2017 |
A. Unique TensorFlower <gardener@tensorflow.org> |
Automated g4 rollback of changelist 175593063 PiperOrigin-RevId: 176445215
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
ecc2754b21572ebb3f43417995822f6ccd98ea7d |
|
21-Nov-2017 |
A. Unique TensorFlower <gardener@tensorflow.org> |
Remove unused inclusions PiperOrigin-RevId: 176423279
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
cb12ebe044ad8fb8515bc9d95d27c0ab19ec314b |
|
18-Nov-2017 |
Anna R <annarev@google.com> |
Provide an option to use ApiDef instead of OpGenOverrides when generating C++ API. Also, updating UpdateDocs method to ApiDef to replace names in docs. PiperOrigin-RevId: 176167953
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
7d197b3ab4b5389c19ab7742cf5d473d5fa91b08 |
|
14-Nov-2017 |
A. Unique TensorFlower <gardener@tensorflow.org> |
Automated g4 rollback of changelist 175563786 PiperOrigin-RevId: 175593063
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
0a79d4ab6ab961d7f36cbb3a14cfaff2152e70fd |
|
13-Nov-2017 |
A. Unique TensorFlower <gardener@tensorflow.org> |
Moved tensorflow::StringPiece::Hasher out of tensorflow::StringPiece and renamed it tensorflow::StringPieceHasher. This allows tensorflow::StringPiece to be more easily replaced with absl::string_view (which does not contain a Hasher struct). PiperOrigin-RevId: 175563786
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
477d49c9eaafc5e1e1667d454ce5883956180713 |
|
16-Aug-2017 |
Skye Wanderman-Milne <skyewm@google.com> |
C++ API: run shape inference as nodes are constructed Here's an example of the new generated code: AddN::AddN(const ::tensorflow::Scope& scope, ::tensorflow::InputList inputs) { if (!scope.ok()) return; auto _inputs = ::tensorflow::ops::AsNodeOutList(scope, inputs); if (!scope.ok()) return; ::tensorflow::Node* ret; const auto unique_name = scope.GetUniqueNameForOp("AddN"); auto builder = ::tensorflow::NodeBuilder(unique_name, "AddN") .Input(_inputs) ; scope.UpdateBuilder(&builder); scope.UpdateStatus(builder.Finalize(scope.graph(), &ret)); if (!scope.ok()) return; scope.UpdateStatus(scope.DoShapeInference(ret)); this->sum = Output(ret, 0); } Enabling shape inference unfortunately broke many tests. I fixed some of them, but for others I introduced a Scope::DisabledShapeInferenceScope() static method that returns a scope that doesn't perform shape inference. Eventually we should fix the tests that use this and remove it. PiperOrigin-RevId: 165378429
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
e85d3df92deb9d717befdf173966a2913ac2aea0 |
|
29-Jun-2017 |
Geoffrey Irving <geoffreyi@google.com> |
Prepare to remove a bunch of proto.h includes from tensorflow/core headers The goal is to make kernels mostly independent of proto headers, which will let us lock down our .so imports. This CL does not remove any actual headers, but changes a bunch of files so that header removal is possible in a followup CL. It also marks the headers that will be removed with // TODO(b/62899350): Remove RELNOTES: n/a PiperOrigin-RevId: 160552878
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
73882f257ffb1bc9e1a828571c085d080b1d9266 |
|
17-May-2017 |
Geoffrey Irving <geoffreyi@google.com> |
Automated g4 rollback of changelist 156251356 PiperOrigin-RevId: 156315860
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
43db5c623f748b6f9704e9e9be5a5a11fa2a4c1a |
|
17-May-2017 |
Geoffrey Irving <geoffreyi@google.com> |
Automated g4 rollback of changelist 156244933 PiperOrigin-RevId: 156251356
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.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/cc/framework/cc_op_gen.cc
|
1d0b8c007b8bc7f77dd63c74f02d87185071f038 |
|
09-May-2017 |
Peter Hawkins <phawkins@google.com> |
Remove unnecessary copies of value parameters. PiperOrigin-RevId: 155511618
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
c6ab1fb225d3d44a9d39666991db0f7eb654c018 |
|
19-Apr-2017 |
Suharsh Sivakumar <suharshs@google.com> |
Remove all 64/32 bit warnings in tensorflow/cc Change: 153637886
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
24a95ae389e1c76e771ac33d66e0ec40a236260f |
|
11-Apr-2017 |
Vijay Vasudevan <vrv@google.com> |
Change Placeholder to support partial shapes and enforce scalar shapes. Adds tests; testScalar failed before with the original placeholder because it treated [] as "?" instead of scalar. Now you can actually specify [] and it means 'scalar'. Added a backwards compatibility test using a graph_def generated from a previous tf version. RELNOTES: tf.placeholder can represent scalar shapes and partially known shapes accurately. Note, this change can break already buggy programs because it makes placeholder shape handling more consistent across graph serializations. Note: There are some buggy cases where this change can break a buggy pipeline: namely those that serialize a graph using an unknown shape (e.g., [None, 10] in a tf.placeholder, but then reload the graph using import_graph_def and feed it a different shape. Prior to this change, serializing the graph_def loses the [None, 10] shape requirement, so you can feed anything you want. This change makes it so that you serialize the graph with [None, 10], and so when you reload it, it would fail if you fed it a different shape. In these cases, the fix is to correct the original placeholder shape to match what you feed it, which is not a bug in TF but in the user's program. Note 2: A python user that did tf.placeholder(shape=[]) would get scalar checking in the same process due to python shape inference code. However, a C++ user that did Placeholder(shape=[]) would not have gotten scalar shape checking; a C++ program that passed Placeholder(shape=[]) that expects to interpret this as "UnknownShape" would break -- however, that user could have already used an {unknown_shape: true} proto, and should not have expected the legacy behavior. Backwards compatibility: Old graphs that have shape = {} in the proto will also have a graph_def_version <= 21, so the default value of shape prior to this change will be interpreted by new binaries as "UnknownShape" just as before. Forwards compatibility: new graphs will produce, by default, shape={ unknown rank: true}; old binaries will use PartialTensorShape's parsing code to parse that proto into an object whose shape.dims() <= 0, and so these binaries will continue to interpret the default shape as "unknown shape" without crashing and without producing new errors. Fixes #9103 Change: 152751019
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
07deeacf33bd60b776ad35394f5767c42feef138 |
|
14-Feb-2017 |
Skye Wanderman-Milne <skyewm@google.com> |
C++ API: include optional attrs in generated class comments + improve core docs Old: /// Copy Op. /// /// Performs CPU-to-CPU or GPU-to-GPU deep-copying of tensor, depending on the /// device on which the tensor is allocated. /// /// Unlike the CopyHost Op, this op does not have HostMemory constraint on its /// input or output. /// /// Arguments: /// * scope: A Scope object /// * input: Input tensor. /// /// Returns: /// * `Output`: Output tensor, deep-copied from input. class Copy {...} New: /// Copy Op. /// /// Performs CPU-to-CPU or GPU-to-GPU deep-copying of tensor, depending on the /// device on which the tensor is allocated. /// /// Unlike the CopyHost Op, this op does not have HostMemory constraint on its /// input or output. /// /// Arguments: /// * scope: A Scope object /// * input: Input tensor. /// /// Optional attributes (see `Attrs`): /// * tensor_name: The name of the input tensor. /// /// Returns: /// * `Output`: Output tensor, deep-copied from input. class Copy {...} Change: 147432712
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
d85616e623028464027cf67683be696ec666a79c |
|
14-Feb-2017 |
Skye Wanderman-Milne <skyewm@google.com> |
C++ API: clean up generated Attrs struct comments Old: /// Optional attribute setters for Copy : /// /// TensorName(StringPiece): Defaults to "" /// The name of the input tensor. struct Attrs { Attrs TensorName(StringPiece x) { Attrs ret = *this; ret.tensor_name_ = x; return ret; } StringPiece tensor_name_ = ""; }; New: /// Optional attribute setters for Copy struct Attrs { /// The name of the input tensor. /// /// Defaults to "" Attrs TensorName(StringPiece x) { Attrs ret = *this; ret.tensor_name_ = x; return ret; } StringPiece tensor_name_ = ""; }; Change: 147430152
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
bc225bfaa534acc25047fe844f19edc333b7a76a |
|
14-Feb-2017 |
Peter Hawkins <phawkins@google.com> |
Fix code that ignores tensorflow::Status. Add a new tensorflow::Status::IgnoreError() method to mark call sites where a Status has been intentionally ignored. Change: 147402405
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
a4281af8626ba07b0fd4235a48ee9a909fb21519 |
|
13-Feb-2017 |
Skye Wanderman-Milne <skyewm@google.com> |
C++ docs: add doxygen group annotations to source code Change: 147373087
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
8fe32029f77b287a207c3bc3e0127fb35a3e23da |
|
01-Feb-2017 |
A. Unique TensorFlower <gardener@tensorflow.org> |
Add a mechanism for hiding, skipping, and modifying the generated op functions for C++. A souped-up version of the hidden_ops mechanism in Python, the intent is to use this for most or all of the client languages, with a common list of changes to make in a common file and per-language overrides. Also: * include the documentation for outputs in the generated comments * several updates to C++ API to match Python * fix C++ shape function for ConcatV2 now that we use it by default * split op_gen_lib out of core:framework, since it is only used by the op generators, and I don't want to add another proto to mobile builds Change: 146267344
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
54b2180f996d69ca6558cdc07939a5887ba52d80 |
|
27-Jan-2017 |
A. Unique TensorFlower <gardener@tensorflow.org> |
Skip generating code for deprecated ops in C++. Change: 145797840
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
0c46c7bcb05b1502bda869db371bee198d5be28a |
|
18-Jan-2017 |
A. Unique TensorFlower <gardener@tensorflow.org> |
Switch to doxygen-friendly comments in generated C++ op code. Change: 144859450
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
4d69bcf7f2c734aa8c3326c3c469729c0805cfd5 |
|
18-Jan-2017 |
A. Unique TensorFlower <gardener@tensorflow.org> |
Migrate to new namespace for Input, Output, etc. in the C++ API. Change: 144857401
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
a430a5e0c146ce927b2868bc94508c6df4cce950 |
|
18-Jan-2017 |
A. Unique TensorFlower <gardener@tensorflow.org> |
Automated rollback of change 144776821 Change: 144780716
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
59f813b67613d81347703a854a3b1aab62be8a3c |
|
18-Jan-2017 |
A. Unique TensorFlower <gardener@tensorflow.org> |
Migrate to new namespace for Input, Output, etc. in the C++ API. Change: 144776821
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
0e1ff10ec3c4dd3f44cd312fa392aa04e9f3c662 |
|
08-Dec-2016 |
Manjunath Kudlur <keveman@google.com> |
Check for error status after NodeBuilder::Finalize. Fixes #5871 Change: 141475958
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
325a096236dfe1674ad43fb1292ac7c48a7e52f5 |
|
14-Sep-2016 |
Derek Murray <mrry@google.com> |
Avoid generating a C++ wrapper for Const, since we have a hand-written one. Some compilers are unhappy with the two definitions (hand-written and generated) for Const in the same module. Since we have a hand-written one, we can simply avoid generating a wrapper for Const. Change: 133070911
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
dea73ff02419fcfd555ec20c16b8158b8ae95f6d |
|
13-Sep-2016 |
Derek Murray <mrry@google.com> |
C++ code generator: generate explicit float literals for default attr values. Change: 133015836
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
2677d3be19952488662a22cf9f42374a493ffd50 |
|
07-Sep-2016 |
Vijay Vasudevan <vrv@google.com> |
TensorFlow C API: Add a Set and Get Tensor Shape function. Wires up ShapeRefiner into C and C++ API so that we can query and set the shapes of outputs. Currently only works for the C-API, but the plumbing exists for the C++ API, which we can only turn on once we are using the C++ shape functions for everything. Change: 132479208
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
b0bdff4827f867a67f572ed99d85f9a847788326 |
|
26-Aug-2016 |
A. Unique TensorFlower <gardener@tensorflow.org> |
Merge changes from github. Change: 131437429
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|
25ac3dabfa3af7a313eb46b03690117c85030cc2 |
|
16-Jul-2016 |
Manjunath Kudlur <keveman@google.com> |
Improvements to the C++ graph building API. TESTED: - passed opensource_build: http://ci.tensorflow.org/job/tensorflow-cl-presubmit-multijob/2780/ Change: 127585603
/external/tensorflow/tensorflow/cc/framework/cc_op_gen.cc
|