| Commit message (Collapse) | Author | Age |
|
|
|
| |
Change: 131069999
|
|
|
|
| |
Change: 131069022
|
|
|
|
|
|
|
|
| |
Remaining work to do:
- Generated ops.
- Generated protocol buffers.
- A few calls requiring protocol buffers aren't in this change.
Change: 131066649
|
|
|
|
|
|
| |
control edges by an outer control dependency context are added to nodes inside cond/while.
Change: 131062259
|
|
|
|
| |
Change: 131061856
|
|
|
|
| |
Change: 131059518
|
|
|
|
| |
Change: 131058624
|
|
|
|
|
|
| |
* Fix handling of TensorShape(TensorShape(None)); before it would loop forever
* Add shape merging for QueueBase.from_list
Change: 131058295
|
|
|
|
| |
Change: 131054894
|
|
|
|
| |
Change: 131054755
|
|
|
|
| |
Change: 131047076
|
|
|
|
|
|
| |
cond()/while_loop() and then subsequently used outside it. The error is: InvalidArgumentError: All inputs to node add must be from the same frame.
Change: 131036071
|
|
|
|
| |
Change: 131012545
|
|
|
|
|
| |
FunctionDef.Node.
Change: 131009401
|
|
|
|
| |
Change: 131007072
|
|
|
|
|
|
|
|
|
| |
STDERR. For example calling session.Reset causes the session destructor to throw an error on sess.close() which gets reported in STDERR as:
"Exception google3.third_party.tensorflow.python.framework.errors.AbortedError: AbortedError() in <bound method Session.__del__ of <google3.third_party.tensorflow.python.client.session.Session object at 0x7f7f020e1750>> ignored".
Since the exception is always ignored, catching and passing on the exception in the destructor will make for clean STDERR logs.
Change: 131006510
|
|
|
|
| |
Change: 131003245
|
|
|
|
| |
Change: 131001422
|
|
|
|
| |
Change: 130998646
|
|
|
|
|
|
| |
* Expose dynamic_bidirectional_rnn and raw_rnn to the public api.
* Add GPU ops for reduce_max/reduce_min, so rnn code will work even with hard device placement.
Change: 130997558
|
|
|
|
|
|
| |
* Fix underflow issues in softplus
* Fix overflow issues in softplus for float16s.
Change: 130997105
|
|
|
|
|
| |
graph.proto into node_def.proto.
Change: 130993653
|
|
|
|
| |
Change: 130993625
|
|
|
|
| |
Change: 130992111
|
|
|
|
| |
Change: 130983143
|
|
|
|
|
| |
can use NodeDef in FunctionDef.
Change: 130982373
|
|
|
|
| |
Change: 130981665
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
shape inference in C++ using the C++ shape functions.
The interface for this class follows the way Graph building works: you
pass a Node at a time, and it creates an InferenceContext per Node.
On every call to AddNode, it requests the shapes from the
InferenceContexts of all the inputs, and it creates the
InferenceContext and runs the shape function in C++ to generate the
new node's InferenceContext data. One possible use of this class
will be to perform a ReverseDFS (data-dep order) traversal of a Graph,
calling AddNode each time, while another use of this function will be
to add nodes as they are created in python, etc -- the only
requirement is that the nodes be added in the data dependency order,
so that a node's input shapes have been computed before the node.
As a start for doing as effectively as python does, we try to
materialize the input_tensor values by statically analyzing the graph
in the same way python's constant_value works, but I've only
implemented "Const" for now. I'll do the rest in a follow up CL to
bring parity to the C++ implementation.
Since we do not know which inputs are needed before the shape function
runs, we run the inference function once to find out which tensors are
needed, and then we call it again once we materialize the tensors.
(I tried to get rid of the existing InferenceContext constructor,
but it's difficult: moving the creation of shapes from strings
relies on an InferenceContext in the first place! There's probably
a way to do this, but this can be an internal refactor).
This is only a small step towards where we want to be with C++ Shape
inference. This does not yet implement lazy-running of the graphs to
materialize as much of the graph as is computable, and does not yet
support iterative shape inference (forward and backward inference
until convergence). These features will be built incrementally as we
discover any subtle nuances that make these features challenging.
Change: 130981592
|
|
|
|
| |
Change: 130980786
|
|
|
|
|
|
| |
In order to accomplish this, I refactored the new sorting algorithm
out into a separate tf-sorting component.
Change: 130979195
|
|
|
|
|
|
|
|
|
| |
Also cleaned up a bunch of boilerplate.
Reduced allocations in Call tag management by inlining Tags into Call.
Reduces CPU usage for an RPC intensive benchmark by ~2%
Change: 130971469
|
|
|
|
| |
Change: 130970371
|
|
|
|
|
|
| |
Previously ops were created outside of a scope leading to the ugly occurrence of bare ops in TensorBoard.
Change: 130970109
|
|
|
|
| |
Change: 130967884
|
|
|
|
| |
Change: 130967459
|
|
|
|
| |
Change: 130964761
|
|
|
|
| |
Change: 130962360
|
|
|
|
| |
Change: 130962334
|
|
|
|
| |
Change: 130962238
|
|
|
|
| |
Change: 130961962
|
|
|
|
| |
Change: 130960947
|
|
|
|
| |
Change: 130957917
|
|
|
|
| |
Change: 130957662
|
|
|
|
|
|
| |
deprecated soon.
Change: 130957334
|
|
|
|
|
|
| |
added to nodes inside cond/while.
Change: 130951050
|
|
|
|
| |
Change: 130950555
|
|
|
|
| |
Change: 130947456
|
|
|
|
| |
Change: 130947454
|
|
|
|
| |
Change: 130943697
|
|
|
|
| |
Change: 130943569
|