platform/upstream/tensorflow.git
6 years agoDeleted a special case
Benoit Steiner [Tue, 3 Apr 2018 02:32:45 +0000 (19:32 -0700)]
Deleted a special case

PiperOrigin-RevId: 191385909

6 years agoAutomated g4 rollback of changelist 191037166
Anna R [Tue, 3 Apr 2018 02:20:53 +0000 (19:20 -0700)]
Automated g4 rollback of changelist 191037166

PiperOrigin-RevId: 191385075

6 years agoAdd int64 to Variant mutable hash table variants.
A. Unique TensorFlower [Tue, 3 Apr 2018 01:33:11 +0000 (18:33 -0700)]
Add int64 to Variant mutable hash table variants.

PiperOrigin-RevId: 191380970

6 years ago[XLA] Redesign: migrate while_test to use XlaBuilder, and implement the ops needed...
A. Unique TensorFlower [Tue, 3 Apr 2018 01:18:11 +0000 (18:18 -0700)]
[XLA] Redesign: migrate while_test to use XlaBuilder, and implement the ops needed to pass the tests, including: While, Slice, DynamicUpdateSlice, Dot, DotGeneral, ConvertElementType, Rng, and Reduce.

Also, when a module has embedded computaitons, the service side would complain if the instruction names are not unique in the scope of the module. To ensure instruction names are unique in module, use both the computation id and instruction id as suffix.

PiperOrigin-RevId: 191379697

6 years agoDon't use session context manager when we need session to outlive the context block.
Skye Wanderman-Milne [Tue, 3 Apr 2018 00:50:12 +0000 (17:50 -0700)]
Don't use session context manager when we need session to outlive the context block.

PiperOrigin-RevId: 191376772

6 years agoInternal change.
Anna R [Tue, 3 Apr 2018 00:31:47 +0000 (17:31 -0700)]
Internal change.

PiperOrigin-RevId: 191374719

6 years agoTFTS: Add a OneShotPredictionHead with no model state in its serving signature.
Allen Lavoie [Tue, 3 Apr 2018 00:21:41 +0000 (17:21 -0700)]
TFTS: Add a OneShotPredictionHead with no model state in its serving signature.

PiperOrigin-RevId: 191373516

6 years ago[XLA] Redesign: implement ExecuteGraphParallel.
A. Unique TensorFlower [Tue, 3 Apr 2018 00:08:27 +0000 (17:08 -0700)]
[XLA] Redesign: implement ExecuteGraphParallel.

PiperOrigin-RevId: 191371793

6 years agoAdd a config option to run Grappler optimizers more than once.
A. Unique TensorFlower [Mon, 2 Apr 2018 23:45:16 +0000 (16:45 -0700)]
Add a config option to run Grappler optimizers more than once.
Don't crash in layout optimizer if no cluster is given.
Clean up Cluster::DisableOptimizer() so it actually turns all current optimizers off.

PiperOrigin-RevId: 191368433

6 years agoClarify ResourceVariable specification
Igor Ganichev [Mon, 2 Apr 2018 23:21:37 +0000 (16:21 -0700)]
Clarify ResourceVariable specification

PiperOrigin-RevId: 191365224

6 years agoJava: Update to 1.7.0
Asim Shankar [Mon, 2 Apr 2018 22:55:01 +0000 (15:55 -0700)]
Java: Update to 1.7.0

PiperOrigin-RevId: 191361364

6 years agoAutomated g4 rollback of changelist 191326767
Anna R [Mon, 2 Apr 2018 22:51:21 +0000 (15:51 -0700)]
Automated g4 rollback of changelist 191326767

PiperOrigin-RevId: 191360905

6 years agoAdd support for resource variables
Benoit Steiner [Mon, 2 Apr 2018 22:48:04 +0000 (15:48 -0700)]
Add support for resource variables

PiperOrigin-RevId: 191360477

6 years agoGo: Update generated wrapper functions for TensorFlow ops.
A. Unique TensorFlower [Mon, 2 Apr 2018 22:46:34 +0000 (15:46 -0700)]
Go: Update generated wrapper functions for TensorFlow ops.
PiperOrigin-RevId: 191360220

6 years agoAdd tf.math.polyval that evaluates an element-wise polynomial using Horner's method...
A. Unique TensorFlower [Mon, 2 Apr 2018 22:39:35 +0000 (15:39 -0700)]
Add tf.math.polyval that evaluates an element-wise polynomial using Horner's method. This is equivalent to numpy.polyval.

PiperOrigin-RevId: 191359241

6 years ago[XLA] Set trace for the operand of a trace instruction when creating the instruction...
A. Unique TensorFlower [Mon, 2 Apr 2018 22:27:24 +0000 (15:27 -0700)]
[XLA] Set trace for the operand of a trace instruction when creating the instruction directly or creating from proto. Also implement XlaBuidler::Trace.

PiperOrigin-RevId: 191357376

6 years agoUpdate ops-related pbtxt files.
A. Unique TensorFlower [Mon, 2 Apr 2018 22:17:59 +0000 (15:17 -0700)]
Update ops-related pbtxt files.

PiperOrigin-RevId: 191356007

6 years agoFix assertion error in Graph._create_op_from_tf_operation.
Skye Wanderman-Milne [Mon, 2 Apr 2018 22:00:40 +0000 (15:00 -0700)]
Fix assertion error in Graph._create_op_from_tf_operation.

_create_op_from_tf_operation would raise an assertion error if a node
was imported with the same name as an unused name_scope. This isn't
really an error, so this change removes the assert.

Note that with this change, the affected node will have a different
name with the C API enabled, but this seems ok especially considering
this is an edge case.

PiperOrigin-RevId: 191353116

6 years ago[TF] Copy-on-write for Resource Variant assign op.
Eugene Brevdo [Mon, 2 Apr 2018 21:48:21 +0000 (14:48 -0700)]
[TF] Copy-on-write for Resource Variant assign op.

PiperOrigin-RevId: 191351293

6 years agoReplaced calls to deprecated tensorflow::StringPiece methods with their
A. Unique TensorFlower [Mon, 2 Apr 2018 21:46:13 +0000 (14:46 -0700)]
Replaced calls to deprecated tensorflow::StringPiece methods with their
tensorflow::str_util equivalents.

This will allow the deprecated methods to be removed.

PiperOrigin-RevId: 191350894

6 years agoResourceHandleShapeAndType returns bytes, not unicode.
Skye Wanderman-Milne [Mon, 2 Apr 2018 21:40:37 +0000 (14:40 -0700)]
ResourceHandleShapeAndType returns bytes, not unicode.

This could cause failures when enabling the C API with python3.

PiperOrigin-RevId: 191350031

6 years agoExport "VERSION" as "__version__" as well
Anna R [Mon, 2 Apr 2018 21:19:42 +0000 (14:19 -0700)]
Export "VERSION" as "__version__" as well

PiperOrigin-RevId: 191346647

6 years agoExport the rest of If, While, and For.
Patrick Nguyen [Mon, 2 Apr 2018 21:03:53 +0000 (14:03 -0700)]
Export the rest of If, While, and For.

We keep _If and _While. This moves the tests and python generators.
The operators are not part of the public tensorflow API.

PiperOrigin-RevId: 191344237

6 years agoDon't bypass reshape nodes that anchor control dependencies
Benoit Steiner [Mon, 2 Apr 2018 20:53:52 +0000 (13:53 -0700)]
Don't bypass reshape nodes that anchor control dependencies

PiperOrigin-RevId: 191342646

6 years agoVerify that a %send and a %recv on the same channel, don't end up landing on the...
A. Unique TensorFlower [Mon, 2 Apr 2018 20:41:26 +0000 (13:41 -0700)]
Verify that a %send and a %recv on the same channel, don't end up landing on the same device.
Also verify that send/send-done and recv/recv-done are on the same device/module.

PiperOrigin-RevId: 191340724

6 years agoReduce overhead for eager ops
Akshay Modi [Mon, 2 Apr 2018 20:17:14 +0000 (13:17 -0700)]
Reduce overhead for eager ops

- Call _context_handle in the fastpath. Fall back to slow path if it is not
  initialized.
  A better fix would be to not initialize handle and devices lazily (and not
  have to pay that function call in the slow path either), but that
  seems to break all GPU/TPU tests. I'm not as yet really familiar with how
  devices are recognized, but I'd be happy to hear any ideas you may have to
  fix this.
- context.context() is monkey patched to remove the "is None" check once we
  know the context is correctly initialized. Ideally we would be able to remove
  this function call as well.
- Maintain is_eager instead of doing the comparison every time. Also, in the
  fastpath, inline the check directly instead of paying the function call cost.
- Inline _eager_context.device_name instead of get the device_name property to
  not pay the function call cost

gen_array_ops.identity Old: 216706.923837 examples/sec (4.61452722549)
gen_array_ops.identity New: 290819.129714 examples/sec (3.43856334686)

PiperOrigin-RevId: 191336857

6 years agoeager: Tweak error message.
Asim Shankar [Mon, 2 Apr 2018 19:58:52 +0000 (12:58 -0700)]
eager: Tweak error message.

Motivated by
https://stackoverflow.com/questions/49616532/a-tensorflow-eager-gpu-error/49617069

PiperOrigin-RevId: 191334050

6 years agoRewrite Add/AddN subgraph, minimizing number of required broadcasts.
A. Unique TensorFlower [Mon, 2 Apr 2018 19:41:59 +0000 (12:41 -0700)]
Rewrite Add/AddN subgraph, minimizing number of required broadcasts.

1) Collect to AddOpsGroup inputs of symbolically defined
   shapes, that can be broadcasted to the root shape
2) Rewrite equal shapes with AddN(s)
3) Build Add tree from aggegations of different shapes,
   minimizing the cost of broadcast

PiperOrigin-RevId: 191331566

6 years agoFix a bug in AvgPoolGrad op cost in extracting input x's shape. AvgPoolGrad
A. Unique TensorFlower [Mon, 2 Apr 2018 19:36:08 +0000 (12:36 -0700)]
Fix a bug in AvgPoolGrad op cost in extracting input x's shape. AvgPoolGrad
takes a shape tensor; hence, a value should be parsed from inputs(0) to extract
correct shape of x.

PiperOrigin-RevId: 191330762

6 years agoSwitch to the TensorFlow API generation based on ApiDef's and tf_export
Anna R [Mon, 2 Apr 2018 19:07:16 +0000 (12:07 -0700)]
Switch to the TensorFlow API generation based on ApiDef's and tf_export
decorators.

PiperOrigin-RevId: 191326767

6 years agoFix #18180
Asim Shankar [Mon, 2 Apr 2018 19:01:32 +0000 (12:01 -0700)]
Fix #18180

tf.size() was not respecting the `out_type` argument when eager execution was
enabled.

PiperOrigin-RevId: 191326039

6 years agoTFTS: Clean up the cold start SignatureDef.
Allen Lavoie [Mon, 2 Apr 2018 18:53:37 +0000 (11:53 -0700)]
TFTS: Clean up the cold start SignatureDef.

Removes state where it wasn't used.

PiperOrigin-RevId: 191324834

6 years ago[XLA] Redesign: improve error handling:
A. Unique TensorFlower [Mon, 2 Apr 2018 18:35:00 +0000 (11:35 -0700)]
[XLA] Redesign: improve error handling:
- For every op creation method, check whether there's any existing error, if so, don't do anything and returns an empty op. To do this efficiently, make the NoteErrorOrReturn method accept a lambda, and check first_error_ before evaluating the lambda.
- Return error instead of TF_CHECK_RET, because the second seems to always print ERROR logs.

PiperOrigin-RevId: 191322082

6 years agoSwitched to using TensorFlow's true dilated convolution support now that it is implem...
A. Unique TensorFlower [Mon, 2 Apr 2018 18:17:56 +0000 (11:17 -0700)]
Switched to using TensorFlow's true dilated convolution support now that it is implemented, and removed emulated dilated convolution support.

PiperOrigin-RevId: 191319505

6 years agoReplaced calls to deprecated tensorflow::StringPiece methods with their
A. Unique TensorFlower [Mon, 2 Apr 2018 18:03:18 +0000 (11:03 -0700)]
Replaced calls to deprecated tensorflow::StringPiece methods with their
tensorflow::str_util equivalents.

This will allow the deprecated methods to be removed.

PiperOrigin-RevId: 191316903

6 years agoImproves the documentation of control_dependencies.
Alexandre Passos [Mon, 2 Apr 2018 17:51:13 +0000 (10:51 -0700)]
Improves the documentation of control_dependencies.

PiperOrigin-RevId: 191314766

6 years agoReplaced calls to deprecated tensorflow::StringPiece methods with their
A. Unique TensorFlower [Mon, 2 Apr 2018 17:50:09 +0000 (10:50 -0700)]
Replaced calls to deprecated tensorflow::StringPiece methods with their
tensorflow::str_util equivalents.

This will allow the deprecated methods to be removed.

PiperOrigin-RevId: 191314576

6 years agoRemove reshape of sparse tensor indices in for maybe_batch.
A. Unique TensorFlower [Mon, 2 Apr 2018 17:27:12 +0000 (10:27 -0700)]
Remove reshape of sparse tensor indices in for maybe_batch.

PiperOrigin-RevId: 191310753

6 years agoAdditional arg scope test that demonstrate how nested arg_scope objects behave.
A. Unique TensorFlower [Mon, 2 Apr 2018 17:14:35 +0000 (10:14 -0700)]
Additional arg scope test that demonstrate how nested arg_scope objects behave.

PiperOrigin-RevId: 191308666

6 years agoAutomated g4 rollback of changelist 191127281
Sergio Guadarrama [Mon, 2 Apr 2018 16:49:35 +0000 (09:49 -0700)]
Automated g4 rollback of changelist 191127281

PiperOrigin-RevId: 191305220

6 years agoOnly test types supported and change log_eps for bfloat16.
Jacques Pienaar [Mon, 2 Apr 2018 16:29:33 +0000 (09:29 -0700)]
Only test types supported and change log_eps for bfloat16.

PiperOrigin-RevId: 191302894

6 years agoAdd CycleGAN specific summary.
A. Unique TensorFlower [Mon, 2 Apr 2018 16:25:33 +0000 (09:25 -0700)]
Add CycleGAN specific summary.

PiperOrigin-RevId: 191302480

6 years agoUpdate tests to enable flipping on bfloat16 types.
Jacques Pienaar [Mon, 2 Apr 2018 15:29:42 +0000 (08:29 -0700)]
Update tests to enable flipping on bfloat16 types.

Skip individual tests that are currently failing with bfloat16.

PiperOrigin-RevId: 191296618

6 years agoAdding support for RandomUniform. Basic support for op import/export of RandomUniform...
A. Unique TensorFlower [Mon, 2 Apr 2018 15:00:03 +0000 (08:00 -0700)]
Adding support for RandomUniform. Basic support for op import/export of RandomUniform, and constant resolution with static seeds.

PiperOrigin-RevId: 191293897

6 years agoMake batch_sequences_with_states_test.py work with the C API enabled.
Skye Wanderman-Milne [Mon, 2 Apr 2018 05:46:11 +0000 (22:46 -0700)]
Make batch_sequences_with_states_test.py work with the C API enabled.

The C API improves static shape inference, making more errors caught
at graph construction time instead of runtime.

PiperOrigin-RevId: 191260634

6 years ago[XLA] Redesign: implement and test concat.
A. Unique TensorFlower [Sun, 1 Apr 2018 23:01:20 +0000 (16:01 -0700)]
[XLA] Redesign: implement and test concat.

PiperOrigin-RevId: 191244047

6 years ago[XLA] Add a ReduceWindow test to reduce along the lane dimension.
A. Unique TensorFlower [Sun, 1 Apr 2018 08:15:35 +0000 (01:15 -0700)]
[XLA] Add a ReduceWindow test to reduce along the lane dimension.

PiperOrigin-RevId: 191214828

6 years agoFix typo
Billy Lamberta [Sat, 31 Mar 2018 06:37:48 +0000 (23:37 -0700)]
Fix typo

PiperOrigin-RevId: 191159820

6 years agoAdd a unit test to verify that dependency optimizer could remove noop and greaterequa...
A. Unique TensorFlower [Sat, 31 Mar 2018 05:55:58 +0000 (22:55 -0700)]
Add a unit test to verify that dependency optimizer could remove noop and greaterequal node in a simple graph.

PiperOrigin-RevId: 191157450

6 years agoLog large allocations and total memory usage for the CPU device.
Russell Power [Sat, 31 Mar 2018 03:36:03 +0000 (20:36 -0700)]
Log large allocations and total memory usage for the CPU device.

PiperOrigin-RevId: 191152060

6 years agoSupport int64 slice spec for StridedSliceGrad.
Saurabh Saxena [Sat, 31 Mar 2018 00:22:41 +0000 (17:22 -0700)]
Support int64 slice spec for StridedSliceGrad.
Currently this doesn't work since _StridedSliceGrad always passes a int32 shape which restricts indices values to be of the same type.
Add a test that fails before and passes after the change.

PiperOrigin-RevId: 191140718

6 years agoSimple fixes for documentation on tf.nn.softmax_cross_entropy_with_logits (and v2).
Neal Wu [Fri, 30 Mar 2018 23:31:31 +0000 (16:31 -0700)]
Simple fixes for documentation on tf.nn.softmax_cross_entropy_with_logits (and v2).

PiperOrigin-RevId: 191134015

6 years agoImplement strip CheckNumerics in DebugStripper.
A. Unique TensorFlower [Fri, 30 Mar 2018 23:16:13 +0000 (16:16 -0700)]
Implement strip CheckNumerics in DebugStripper.

PiperOrigin-RevId: 191131935

6 years agoDoc string clean-ups for class DistributionStrategy.
A. Unique TensorFlower [Fri, 30 Mar 2018 22:51:12 +0000 (15:51 -0700)]
Doc string clean-ups for class DistributionStrategy.

PiperOrigin-RevId: 191128500

6 years agoRestore definitions of static members in MklCpuAllocator.
A. Unique TensorFlower [Fri, 30 Mar 2018 22:41:02 +0000 (15:41 -0700)]
Restore definitions of static members in MklCpuAllocator.

These were removed in #17396 which made the static member variables of
MklCpuAllocator into inline variables, which are a C++17 feature, and not
properly restored in #18006 which reverted the inline declarations, leading to
an ODR violation that is apparently ignored with some compilers.

PiperOrigin-RevId: 191127281

6 years ago[XLA] Add a reduce-window test.
A. Unique TensorFlower [Fri, 30 Mar 2018 22:35:14 +0000 (15:35 -0700)]
[XLA] Add a reduce-window test.
REL_NOTES:n/a
PiperOrigin-RevId: 191126542

6 years ago Add the waiting time and cross-replica-sum time to StepInfoResult.
A. Unique TensorFlower [Fri, 30 Mar 2018 22:18:48 +0000 (15:18 -0700)]
  Add the waiting time and cross-replica-sum time to StepInfoResult.

PiperOrigin-RevId: 191124408

6 years agoAdd attr when rewriter adds an XlaHostCompute Op indicating which outside_compilation...
A. Unique TensorFlower [Fri, 30 Mar 2018 22:18:18 +0000 (15:18 -0700)]
Add attr when rewriter adds an XlaHostCompute Op indicating which outside_compilation_subgraph it corresponds to.

PiperOrigin-RevId: 191124345

6 years agoImprove the precision of Reduce in the interpreter when adding floats, by accumulatin...
Dimitris Vardoulakis [Fri, 30 Mar 2018 22:15:31 +0000 (15:15 -0700)]
Improve the precision of Reduce in the interpreter when adding floats, by accumulating in a double.

Also, speed it up by not creating intermediate Literals. The microbenchmark now runs in < 1 ns, as opposed to 30 sec before.

PiperOrigin-RevId: 191123983

6 years agoMake tfe.Iterator work with async mode.
Akshay Modi [Fri, 30 Mar 2018 22:00:41 +0000 (15:00 -0700)]
Make tfe.Iterator work with async mode.

PiperOrigin-RevId: 191121622

6 years agoRaise exception in SWIG on bad TF_Status from C API.
Skye Wanderman-Milne [Fri, 30 Mar 2018 21:56:08 +0000 (14:56 -0700)]
Raise exception in SWIG on bad TF_Status from C API.

This change provides an alternative mechanism to
tf.raise_exception_on_not_ok_status(), which is inefficient and
error-prone (people often use the status multiple times in the with
block, but it's only checked when the context manager exits). Instead,
it uses SWIG to automatically raise an exception when a C API method
fails. Note that this removes the status argument from affected
methods.

For now, I've only applied this typemap to C API methods. It would be
good to expand this to all uses of raise_exception_on_not_ok_status.

PiperOrigin-RevId: 191121016

6 years ago show breakdown of total execution time with compute and memory time
A. Unique TensorFlower [Fri, 30 Mar 2018 21:45:21 +0000 (14:45 -0700)]
 show breakdown of total execution time with compute and memory time

PiperOrigin-RevId: 191119550

6 years agotf.maximum: Correctly calculate output shape when broadcast is necessary.
A. Unique TensorFlower [Fri, 30 Mar 2018 21:17:49 +0000 (14:17 -0700)]
tf.maximum: Correctly calculate output shape when broadcast is necessary.

PiperOrigin-RevId: 191115726

6 years agoRemove unused imports
Akshay Modi [Fri, 30 Mar 2018 21:00:02 +0000 (14:00 -0700)]
Remove unused imports

PiperOrigin-RevId: 191112880

6 years agoDisable tsan for tensorflow/python/estimator:replicate_model_fn_test
A. Unique TensorFlower [Fri, 30 Mar 2018 19:26:21 +0000 (12:26 -0700)]
Disable tsan for tensorflow/python/estimator:replicate_model_fn_test

It gets flaky failures.

PiperOrigin-RevId: 191100692

6 years agoEnable writing of summaries in ExamplesPerSecondHook
A. Unique TensorFlower [Fri, 30 Mar 2018 18:43:05 +0000 (11:43 -0700)]
Enable writing of summaries in ExamplesPerSecondHook

PiperOrigin-RevId: 191094585

6 years agoBreak FileSystem's dependency on ThreadPool.
A. Unique TensorFlower [Fri, 30 Mar 2018 18:32:58 +0000 (11:32 -0700)]
Break FileSystem's dependency on ThreadPool.

PiperOrigin-RevId: 191092932

6 years agoInternal change.
Shashi Shekhar [Fri, 30 Mar 2018 18:21:31 +0000 (11:21 -0700)]
Internal change.

PiperOrigin-RevId: 191090993

6 years agoRename distributed_apply to _distributed_apply in OptimizerV2 to match
A. Unique TensorFlower [Fri, 30 Mar 2018 18:12:24 +0000 (11:12 -0700)]
Rename distributed_apply to _distributed_apply in OptimizerV2 to match
the Optimizer base class.

PiperOrigin-RevId: 191089407

6 years agoCreate a wrapper for bfloat16 scope so that users don't need the custom getter.
Sourabh Bajaj [Fri, 30 Mar 2018 17:50:18 +0000 (10:50 -0700)]
Create a wrapper for bfloat16 scope so that users don't need the custom getter.

PiperOrigin-RevId: 191085552

6 years agoCheck for errors returned by ExecuteOnStream before calling
A. Unique TensorFlower [Fri, 30 Mar 2018 17:47:58 +0000 (10:47 -0700)]
Check for errors returned by ExecuteOnStream before calling
BlockHostUntilDone. If ExecuteOnStream fails, BlockHostUntilDone will
also fail in a way that makes debugging much harder.

RELNOTES: n/a
PiperOrigin-RevId: 191085159

6 years ago[XLA] Add IsConstant to the local Python client.
A. Unique TensorFlower [Fri, 30 Mar 2018 17:15:11 +0000 (10:15 -0700)]
[XLA] Add IsConstant to the local Python client.

PiperOrigin-RevId: 191080094

6 years agoFix several data races by acquiring locks.
A. Unique TensorFlower [Fri, 30 Mar 2018 16:56:29 +0000 (09:56 -0700)]
Fix several data races by acquiring locks.

(The racy accesses were detected by the thread safety annotations.)

PiperOrigin-RevId: 191077376

6 years agoFix the index to match the left nav.
Mark Daoust [Fri, 30 Mar 2018 16:41:29 +0000 (09:41 -0700)]
Fix the index to match the left nav.

PiperOrigin-RevId: 191075496

6 years agoFix a crash in Quantize() when tf.contrib.framework.get_name_scope() == None.
A. Unique TensorFlower [Fri, 30 Mar 2018 15:23:30 +0000 (08:23 -0700)]
Fix a crash in Quantize() when tf.contrib.framework.get_name_scope() == None.

PiperOrigin-RevId: 191068059

6 years agoUpdate test for DebugStripper to construct graph in scope.
A. Unique TensorFlower [Fri, 30 Mar 2018 15:12:16 +0000 (08:12 -0700)]
Update test for DebugStripper to construct graph in scope.

PiperOrigin-RevId: 191067139

6 years agoReplaced calls to deprecated tensorflow::StringPiece methods with their
A. Unique TensorFlower [Fri, 30 Mar 2018 14:24:14 +0000 (07:24 -0700)]
Replaced calls to deprecated tensorflow::StringPiece methods with their
tensorflow::str_util equivalents.

This will allow the deprecated methods to be removed.

PiperOrigin-RevId: 191063815

6 years agoBefore this change, a Tensor contained a device pointer and a TensorInfoManager datas...
A. Unique TensorFlower [Fri, 30 Mar 2018 09:41:35 +0000 (02:41 -0700)]
Before this change, a Tensor contained a device pointer and a TensorInfoManager datastructure contained a mapping from device pointer to XlaTensorInfo object. This TensorInfoManager needed to be an Allocator too, so it could be informed when a Tensor is released.

After this change, a Tensor on an XlaDevice contains an XlaTensor object. The XlaTensor object is the equivalent of the old XlaTensorInfo object.

This has advantages and drawbacks:
  + We don't need yet another allocator wrapper, as there is no side-band data to manage.
  + No hashtable lookups are required.
  - As XlaLocalLaunchOp could either be on an XlaDevice or a TF-classic device, we need some way to distinguish whether a Tensor is a TF-classic tensor (holds a device pointer) or an XlaTensor (we use a tagged pointer).

As part of this, allocate ShapedBuffers using the XLA backend's allocator directly instead of a roundabout route where we:
  Wrapped the XLA allocator in an XlaDeviceAllocator
  Then wrapped the XlaDeviceAllocator in an XlaAllocator

This leaves less to go wrong. Ideally we'd actually use StreamExecutor's allocator here, but this is less useful than XLA's as it doesn't provide helpful OOM messages (just returns nullptr).

PiperOrigin-RevId: 191048184

6 years agoInternal change.
Anna R [Fri, 30 Mar 2018 06:35:30 +0000 (23:35 -0700)]
Internal change.

PiperOrigin-RevId: 191037166

6 years agoMerged commit includes the following changes:
A. Unique TensorFlower [Fri, 30 Mar 2018 04:20:50 +0000 (21:20 -0700)]
Merged commit includes the following changes:
191029891  by xiejw:

    Fix python script file.

--
191029336  by isaprykin:

    Add .configure method to the whole hierarchy of DistributionStrategies.

--
191026971  by blamb:

    Updates get_started nav and renames the beginner guides to include eager.

--
191025863  by mrry:

    Add private Python API for accessing the C++ Session::*Callable API.

--
191025795  by mikecase:

    Internal Change.

--
191024780  by isaprykin:

    Internal change.

--

PiperOrigin-RevId: 191029891

6 years agoAdd summaries from only the first tower in distributed strategy.
Priya Gupta [Fri, 30 Mar 2018 02:57:49 +0000 (19:57 -0700)]
Add summaries from only the first tower in distributed strategy.

PiperOrigin-RevId: 191024726

6 years agoInternal Change.
Anjali Sridhar [Fri, 30 Mar 2018 02:57:27 +0000 (19:57 -0700)]
Internal Change.

PiperOrigin-RevId: 191024708

6 years agoInternal change
Yuefeng Zhou [Fri, 30 Mar 2018 02:56:47 +0000 (19:56 -0700)]
Internal change

PiperOrigin-RevId: 191024677

6 years agoInternal change
Rohan Jain [Fri, 30 Mar 2018 02:45:17 +0000 (19:45 -0700)]
Internal change

PiperOrigin-RevId: 191024085

6 years agoBUGFIX: sample_stats.percentile: Fractions for interpolation were done in
Ian Langmore [Fri, 30 Mar 2018 02:29:21 +0000 (19:29 -0700)]
BUGFIX:  sample_stats.percentile:  Fractions for interpolation were done in
float, which caused the error d - 1 == d for large 'd'.  Fix is to do in
double.  Also clipping index values to [0,..., d - 1] in case double isn't enough for some huge array
PiperOrigin-RevId: 191023164

6 years agoInternal change.
Igor Saprykin [Fri, 30 Mar 2018 02:29:14 +0000 (19:29 -0700)]
Internal change.

PiperOrigin-RevId: 191023160

6 years agoAdd basic serialization support to DistributedVariable (by using the underlying prima...
Priya Gupta [Fri, 30 Mar 2018 02:24:58 +0000 (19:24 -0700)]
Add basic serialization support to DistributedVariable (by using the underlying primary variable's serialization). Also, throw an exception when trying to de-serialize as we haven't implemented that yet.

PiperOrigin-RevId: 191022884

6 years agoAdd output info into op_context otherwise the estimator crashes when OOM.
Rui Zhao [Fri, 30 Mar 2018 02:02:29 +0000 (19:02 -0700)]
Add output info into op_context otherwise the estimator crashes when OOM.

PiperOrigin-RevId: 191021184

6 years agoPrevent infinite loop in constant folding when materializing broadcast gradient nodes...
A. Unique TensorFlower [Fri, 30 Mar 2018 01:57:52 +0000 (18:57 -0700)]
Prevent infinite loop in constant folding when materializing broadcast gradient nodes that are subsequently constant folded.

PiperOrigin-RevId: 191020868

6 years agoInternal change.
Igor Saprykin [Fri, 30 Mar 2018 01:50:05 +0000 (18:50 -0700)]
Internal change.

PiperOrigin-RevId: 191020351

6 years agoDisable shape inference for functions since it doesn't seem to work when
Benoit Steiner [Fri, 30 Mar 2018 01:44:12 +0000 (18:44 -0700)]
Disable shape inference for functions since it doesn't seem to work when
functions are instantiated inside a while loop.

PiperOrigin-RevId: 191019870

6 years agoFixed typo in PReLU.
A. Unique TensorFlower [Fri, 30 Mar 2018 01:37:21 +0000 (18:37 -0700)]
Fixed typo in PReLU.

PiperOrigin-RevId: 191019421

6 years agoGetting rid of the threadpool from FunctionBufferingResource. It wasn't really servin...
Rohan Jain [Fri, 30 Mar 2018 01:18:28 +0000 (18:18 -0700)]
Getting rid of the threadpool from FunctionBufferingResource. It wasn't really serving much purpose apart from moving all the function logic execution onto those threads and making the destruction of the resource quite complicated.

PiperOrigin-RevId: 191017836

6 years agoMove the simple_estimator_example to the examples/ dir.
Anjali Sridhar [Fri, 30 Mar 2018 01:15:34 +0000 (18:15 -0700)]
Move the simple_estimator_example to the examples/ dir.

PiperOrigin-RevId: 191017560

6 years agoAdd distribution support for incrementing the global step.
A. Unique TensorFlower [Fri, 30 Mar 2018 01:11:09 +0000 (18:11 -0700)]
Add distribution support for incrementing the global step.
Don't require Dataset as input to eval and predict even when using
a DistributionStrategy.

PiperOrigin-RevId: 191017191

6 years agoPort TensorFlow demo to TFLite with three activities: MobileNet Classification, Mobil...
Andrew Harp [Fri, 30 Mar 2018 00:57:27 +0000 (17:57 -0700)]
Port TensorFlow demo to TFLite with three activities: MobileNet Classification, MobileNet SSD Object Detection, and Speech hotword classification

PiperOrigin-RevId: 191015617

6 years ago* Added a JavaScript tab to DEVELOP.
A. Unique TensorFlower [Fri, 30 Mar 2018 00:30:09 +0000 (17:30 -0700)]
* Added a JavaScript tab to DEVELOP.
* Added a JavaScript file to DEPLOY.
* Added a link to JavaScript API Ref.

PiperOrigin-RevId: 191012951

6 years agoTighten the condition for node removal next to device crossings, since the previous...
A. Unique TensorFlower [Fri, 30 Mar 2018 00:16:46 +0000 (17:16 -0700)]
Tighten the condition for node removal next to device crossings, since the previous changes were observed to cause a performance regression for distributed execution.

PiperOrigin-RevId: 191011347

6 years agoAdd details of new mailing lists
A. Unique TensorFlower [Fri, 30 Mar 2018 00:15:33 +0000 (17:15 -0700)]
Add details of new mailing lists

PiperOrigin-RevId: 191011187

6 years agoUpdating documentation.
Nupur Garg [Thu, 29 Mar 2018 23:56:42 +0000 (16:56 -0700)]
Updating documentation.

PiperOrigin-RevId: 191008662