| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
|
|
|
| |
* Slice when the Size input matches the size of the input tensor
* Tile when the multiples input is a tensor of '1'
* Pad/PadV2 when the paddings input is a tensor of 0
* Squeeze when the squeeze dimensions are known to be > 1
PiperOrigin-RevId: 188609800
|
|
|
|
| |
PiperOrigin-RevId: 188586552
|
|
|
|
| |
PiperOrigin-RevId: 188581202
|
|
|
|
|
|
| |
the input tensor is empty.
PiperOrigin-RevId: 188580972
|
|
|
|
|
|
| |
Example with weighted mean combiner implies that single-key embeddings not normalized (the weighted sum answer). However, the code and test shows normalization regardless of number of keys.
PiperOrigin-RevId: 188575982
|
|
|
|
|
|
| |
to take a TF_DataType param.
PiperOrigin-RevId: 188570493
|
|
|
|
| |
PiperOrigin-RevId: 188569611
|
|
|
|
|
|
|
|
| |
1) Redundant Bitcast
2) Redundant Cast
3) Remove inverse transpose
PiperOrigin-RevId: 188569367
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The intent of this new API matches the Python `tf.Session.make_callable()`
method: it splits the two roles of the `Session::Run()` method into separate
methods:
1. `Session::MakeCallable()` takes information about a subgraph (such as the
names of nodes to feed and fetch), and prunes and optimizes that graph,
returning a simple handle.
2. `Session::RunCallable()` takes that handle, plus any values to be fed,
and executes the graph, returning whatever outputs are produced.
This split moves string processing off the critical path of running a
step. We also add a new method `Session::ReleaseCallable()` that makes
it possible to free the resources associated with a cached subgraph,
and could be useful for seldom-executed graphs such as initializers.
PiperOrigin-RevId: 188566635
|
|
|
|
|
|
|
|
| |
The flakiness was due to nondeterministic names being chosen for
folded constants; the fix was to split out the source of the
nondetermism into a separate test.
PiperOrigin-RevId: 188565362
|
|
|
|
|
|
| |
support for propagating activation functions into Gather ops and as constant ops.
PiperOrigin-RevId: 188556574
|
|
|
|
| |
PiperOrigin-RevId: 188554206
|
|
|
|
| |
PiperOrigin-RevId: 188548941
|
|
|
|
| |
PiperOrigin-RevId: 188548393
|
|
|
|
| |
PiperOrigin-RevId: 188547527
|
|
|
|
| |
PiperOrigin-RevId: 188547477
|
|
|
|
| |
PiperOrigin-RevId: 188540944
|
|
|
|
| |
PiperOrigin-RevId: 188540659
|
|
|
|
| |
PiperOrigin-RevId: 188540513
|
|
|
|
| |
PiperOrigin-RevId: 188536863
|
|
|
|
| |
PiperOrigin-RevId: 188536576
|
|
|
|
| |
PiperOrigin-RevId: 188534066
|
|
|
|
|
|
| |
checkpoints.
PiperOrigin-RevId: 188533156
|
|
|
|
| |
PiperOrigin-RevId: 188532135
|
|
|
|
| |
PiperOrigin-RevId: 188529107
|
|
|
|
| |
PiperOrigin-RevId: 188528771
|
|
|
|
| |
PiperOrigin-RevId: 188525453
|
|
|
|
| |
PiperOrigin-RevId: 188525171
|
|
|
|
|
|
| |
third_party/tensorflow/python/training (move WarmStartSettings definition to third_party/tensorflow/python/estimator/estimator.py), and make _warm_start() public under tf.train.warm_start(). WarmStartSettings and VocabInfo are both available under tf.estimator, and VocabInfo is also available under tf.train.
PiperOrigin-RevId: 188522820
|
|
|
|
|
|
|
|
| |
runner to execute kernels with. In that case, it defaults to using the threadpool provided by the device.
Also makes sure each device has a default threadpool to fall back on.
PiperOrigin-RevId: 188520648
|
|
|
|
| |
PiperOrigin-RevId: 188513895
|
|
|
|
| |
PiperOrigin-RevId: 188512706
|
|
|
|
|
|
|
|
| |
Fusing GTE works, but it's slower than not fusing. (In some sense, GTE
is *always* fused; it's just that our "implicit fusion" implementation
is faster than our explicit fusion implementation.)
PiperOrigin-RevId: 188509801
|
|
|
|
|
|
| |
eigen!)
PiperOrigin-RevId: 188504172
|
|
|
|
| |
PiperOrigin-RevId: 188503184
|
|
|
|
|
|
|
|
| |
This is a nice cleanup, but it also makes this a proper unit test -- the
module strings we use are post fusion. (Without module strings, fusion
computations are a real pain to create.)
PiperOrigin-RevId: 188502642
|
|
|
|
| |
PiperOrigin-RevId: 188501394
|
|
|
|
|
|
| |
instead of letting the kernel catch invalid inputs.
PiperOrigin-RevId: 188496351
|
|
|
|
| |
PiperOrigin-RevId: 188495357
|
|
|
|
| |
PiperOrigin-RevId: 188492233
|
|
|
|
| |
PiperOrigin-RevId: 188491604
|
|
|
|
| |
PiperOrigin-RevId: 188478173
|
|
|
|
| |
PiperOrigin-RevId: 188477922
|
|
|
|
|
|
|
|
|
|
|
| |
ThenDoHostCallback.
The reason this came about is: ThenDoHostCallback was once private, and
ThenDoHostCallbackForTest was public. Then at some point
ThenDoHostCallback became public, but the *ForTest one was never
removed.
PiperOrigin-RevId: 188459741
|
|
|
|
| |
PiperOrigin-RevId: 188450336
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this change
- HloTestBase always calls HloRunner with an array of non-owning Literal
pointers as arguments
- HloRunner no longer has a general LiteralPtr, but just provides explicit
overloads for std::unique_ptr<Literal> and Literal*
This was prompted by a dependent change that needs to call
HloTestBase::RunAndCompare with Literal* arguments.
PiperOrigin-RevId: 188446331
|
|
|
|
|
|
|
|
|
|
| |
For example,
tf.pad(<4D tensor>, [[0, 0], [0, 0], [0, 0], [0, 1]])
is equivalent to a 2D pad, which is faster.
PiperOrigin-RevId: 188440916
|
|
|
|
| |
PiperOrigin-RevId: 188433792
|
|
|
|
| |
PiperOrigin-RevId: 188433328
|
|
|
|
| |
PiperOrigin-RevId: 188425637
|