aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/cc/client
Commit message (Collapse)AuthorAge
* Add experimental Callable API to ClientSession.Gravatar A. Unique TensorFlower2018-08-03
| | | | PiperOrigin-RevId: 207323298
* Remove using directives. Test appertaining to ops have been moved into ↵Gravatar A. Unique TensorFlower2018-01-02
| | | | | | | | namespace tensorflow::ops; all other tests now use explicit using-declarations. Some tests are now using unnamed namespaces more aggressively to make as many names internal as possible. PiperOrigin-RevId: 180564422
* Preallocate vector storage when the ultimate vector size is known in advanceGravatar A. Unique TensorFlower2017-06-01
| | | | PiperOrigin-RevId: 157724431
* Remove unnecessary copies of value parameters.Gravatar Peter Hawkins2017-05-10
| | | | PiperOrigin-RevId: 155511618
* Change Placeholder to support partial shapes and enforce scalar shapes.Gravatar Vijay Vasudevan2017-04-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* C++ API: create ClientSession::Impl class to hide private members/methods.Gravatar Skye Wanderman-Milne2017-02-23
| | | | | Eventually all public API classes should follow this pattern. Change: 148403490
* C++ docs: add doxygen group annotations to source codeGravatar Skye Wanderman-Milne2017-02-13
| | | | Change: 147373087
* Added eight-bit version of multiply operationGravatar Pete Warden2017-01-23
| | | | Change: 145367813
* Migrate to new namespace for Input, Output, etc. in the C++ API.Gravatar A. Unique TensorFlower2017-01-18
| | | | Change: 144857401
* Automated rollback of change 144776821Gravatar A. Unique TensorFlower2017-01-17
| | | | Change: 144780716
* Migrate to new namespace for Input, Output, etc. in the C++ API.Gravatar A. Unique TensorFlower2017-01-17
| | | | Change: 144776821
* Update C++ API comments to be more Doxygen friendly.Gravatar Skye Wanderman-Milne2017-01-17
| | | | | | | | | | | | This patch: - Updates // comments to ///. I manually reverted some comments that shouldn't be docs (e.g. TODOs), but may have missed some. - Indents code blocks so they get formatted as such in the docs. - Removes /* */ comments from example code since it messes up Doxygen. - Puts a space between {{ and }} since it messes up devsite. - Adds some // START_SKIP_DOXYGEN and // END_SKIP_DOXYGEN comments for functions that aren't part of the public API (incomplete) This will likely require further small fixups, but this gets something to be generated. Change: 144749351
* ClientSession wraps a Session object and provides Run methods that operate onGravatar Manjunath Kudlur2016-08-19
the C++ API's Output/Operation object instead of strings. Change: 130776638