History log of /external/tensorflow/tensorflow/cc/ops/while_loop.cc
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
bbd9e21afe7fd96d2d70cc76e5b14efcefba61b2 29-Dec-2017 Edward H <BDHU@users.noreply.github.com> Fixed a typo for CreateBody()
/external/tensorflow/tensorflow/cc/ops/while_loop.cc
92362d0f0510d5bb1afa3c9cfd007cbf9cdf6d2a 13-Sep-2017 Skye Wanderman-Milne <skyewm@google.com> Add WhileContext class and add plumbing for creating them.

This change introduces WhileContext, which stores information about a
while loop and will be used in future changes to generate while loop
gradient graphs. Exit nodes in a while loop now have a pointer to
their associated WhileContext. This will be used to retrieve the
context for a given loop.

This change adds an optional parameter to BuildWhileLoop() to create a
WhileContext for the while loop (currently this is always true, but
gradients will generate while loops without associated contexts). This
change also adds a as-yet-unused option to BuildWhileLoop() to return
the predicate output.

PiperOrigin-RevId: 168562303
/external/tensorflow/tensorflow/cc/ops/while_loop.cc
83ba41e0a38d211fcdb5e3b4e212ef296dc96490 08-Sep-2017 Skye Wanderman-Milne <skyewm@google.com> More C++ while loop validation

With this change, we call IsValidOutputTensor() on the returned
outputs from the condition and body functions. This will return a bad
status if no output or a null output is set, or if an output has a bad
index.

This also adds unit tests for related error cases to the C and C++
unit tests. They often produce different errors because the C
implementation goes through the graph constructor.

PiperOrigin-RevId: 167925641
/external/tensorflow/tensorflow/cc/ops/while_loop.cc
0fd2a74120b86972441378f79fb5d03e86fed856 29-Aug-2017 Skye Wanderman-Milne <skyewm@google.com> Introduce C++ API while loop builder method

This change adds a new function, BuildWhileLoop(), that constructs a
while loop. BuildWhileLoop() takes functions that build the cond and
body graphs, similar to the Python while_loop function. It also
switches the C API to use this new function in order to reduce code
duplication. This is in preparation for while loop gradients, which
are also implemented in the C++ API (along with the other gradient
code).

I didn't write unit tests for BuildWhileLoop, instead relying on the
current C API while loop tests.

This change also disables while loop creation on Android to avoid
pulling in extra C++ dependencies.

PiperOrigin-RevId: 166849829
/external/tensorflow/tensorflow/cc/ops/while_loop.cc