platform/upstream/tensorflow.git
6 years agoMerge branch 'r1.9' into relnotes_19b
Amit Patankar [Fri, 1 Jun 2018 22:27:16 +0000 (15:27 -0700)]
Merge branch 'r1.9' into relnotes_19b

6 years agoMerge pull request #19703 from av8ramit/update_version_190_rc0
Amit Patankar [Fri, 1 Jun 2018 22:22:54 +0000 (15:22 -0700)]
Merge pull request #19703 from av8ramit/update_version_190_rc0

Updating version for 1.9.0-rc0.

6 years agoUpdating version for 1.9.0-rc0.
Amit Patankar [Fri, 1 Jun 2018 21:26:07 +0000 (14:26 -0700)]
Updating version for 1.9.0-rc0.

6 years agoUpdating release notes for r1.9.
Amit Patankar [Fri, 1 Jun 2018 21:19:03 +0000 (14:19 -0700)]
Updating release notes for r1.9.

6 years agoMerge pull request #19680 from case540/branch_198811639
Michael Case [Fri, 1 Jun 2018 19:58:16 +0000 (12:58 -0700)]
Merge pull request #19680 from case540/branch_198811639

Branch 198811639

6 years agoFinished incomplete support for bad usernames in the CI build scripts. ci_build.sh...
Clayne Robison [Fri, 1 Jun 2018 19:29:39 +0000 (12:29 -0700)]
Finished incomplete support for bad usernames in the CI build scripts. ci_build.sh now passes the environment variable to the container, and the with_the_same_user script adds the --force-badname param to addgroup as well. (#19699)

6 years agoFix import depth issue.
Michael Case [Fri, 1 Jun 2018 05:55:46 +0000 (22:55 -0700)]
Fix import depth issue.

6 years agoPotential fix to layout_optimizer_test.py
Michael Case [Fri, 1 Jun 2018 04:55:11 +0000 (21:55 -0700)]
Potential fix to layout_optimizer_test.py

6 years agoBUILD: dont force stripping (#19599)
Jason Zaman [Fri, 1 Jun 2018 03:52:17 +0000 (11:52 +0800)]
BUILD: dont force stripping (#19599)

* BUILD: dont force stripping

Build systems must not strip binaries, it makes it impossible for
distros to ship debugging symbols for packages.

bazel build has a --strip option to allow the user to generate stripped
binaries in a configurable way, that should be used instead.

https://fedoraproject.org/wiki/Packaging:Debuginfo
https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces#Stripping

Signed-off-by: Jason Zaman <jason@perfinion.com>
* configure: add --strip=always to bazelrc

6 years agoAdd new line to make buildifier happy
Michael Case [Fri, 1 Jun 2018 03:44:41 +0000 (20:44 -0700)]
Add new line to make buildifier happy

6 years agoMerge branch 'master' into branch_198811639
Michael Case [Fri, 1 Jun 2018 03:27:17 +0000 (20:27 -0700)]
Merge branch 'master' into branch_198811639

6 years agoFix sanity issues.
Michael Case [Fri, 1 Jun 2018 02:46:48 +0000 (19:46 -0700)]
Fix sanity issues.

6 years agodocker: update cuDNN to 7.1.4.18 (#19636)
Felix Abecassis [Fri, 1 Jun 2018 02:45:15 +0000 (04:45 +0200)]
docker: update cuDNN to 7.1.4.18 (#19636)

Signed-off-by: Felix Abecassis <fabecassis@nvidia.com>
6 years agoManual roll back of PR #19443, because it causes the Raspberry Pi build to fail ...
Pete Warden [Fri, 1 Jun 2018 02:44:05 +0000 (19:44 -0700)]
Manual roll back of PR #19443, because it causes the Raspberry Pi build to fail (#19678)

6 years agoFix lite.py Python TypeError.
Michael Case [Fri, 1 Jun 2018 01:31:23 +0000 (18:31 -0700)]
Fix lite.py Python TypeError.

6 years agoMerge commit for internal changes
Michael Case [Fri, 1 Jun 2018 01:29:32 +0000 (18:29 -0700)]
Merge commit for internal changes

6 years agoMake the TFOptimizer wrapper checkpointable.
Allen Lavoie [Fri, 1 Jun 2018 01:17:48 +0000 (18:17 -0700)]
Make the TFOptimizer wrapper checkpointable.

TensorFlow Optimizers compiled with a Model will now have their state saved and restored with save_weights/load_weights.

PiperOrigin-RevId: 198811639

6 years agoAutomated g4 rollback of changelist 198803131
Peter Hawkins [Fri, 1 Jun 2018 01:09:50 +0000 (18:09 -0700)]
Automated g4 rollback of changelist 198803131

PiperOrigin-RevId: 198810875

6 years agoThrow a more informative error message when checkpointing an input pipeline
Saurabh Saxena [Fri, 1 Jun 2018 00:20:31 +0000 (17:20 -0700)]
Throw a more informative error message when checkpointing an input pipeline
containing a ShuffleDataset with reshuffle_each_iteration=True.
This is a temporary fix till we figure out how to handle this use-case.

PiperOrigin-RevId: 198805344

6 years ago[XLA] Fix handling of CustomCall's window and dnums.
Justin Lebar [Fri, 1 Jun 2018 00:19:25 +0000 (17:19 -0700)]
[XLA] Fix handling of CustomCall's window and dnums.

CustomCall can have a window and convolution-dimension-numbers, so
HloInstruction needs to handle this in Clone() and Identical().

PiperOrigin-RevId: 198805211

6 years ago[tf.data] Update `DatasetBase::DebugString()` to be const in the docs.
Derek Murray [Fri, 1 Jun 2018 00:18:54 +0000 (17:18 -0700)]
[tf.data] Update `DatasetBase::DebugString()` to be const in the docs.

PiperOrigin-RevId: 198805143

6 years agoMark tensorflow/contrib/learn:estimator_test as optonly because it is flaky due to...
Peter Hawkins [Fri, 1 Jun 2018 00:17:13 +0000 (17:17 -0700)]
Mark tensorflow/contrib/learn:estimator_test as optonly because it is flaky due to timeouts without optimization.

PiperOrigin-RevId: 198804880

6 years ago[TF:XLA] Preliminary support for tpu.replicate() inside of TF control flow (such...
Peter Hawkins [Fri, 1 Jun 2018 00:03:07 +0000 (17:03 -0700)]
[TF:XLA] Preliminary support for tpu.replicate() inside of TF control flow (such as tf.while_loop()).

Register the remaining control-flow operators on XLA devices.

PiperOrigin-RevId: 198803131

6 years ago[XLA] Fix batchnorm rewriter to not use implicit broadcasts. Algebraic
Blake Hechtman [Thu, 31 May 2018 23:58:05 +0000 (16:58 -0700)]
[XLA] Fix batchnorm rewriter to not use implicit broadcasts. Algebraic
simplifier reshape change is now covered by ReshapeMover.

PiperOrigin-RevId: 198802494

6 years agoHandle FilterLayout::kOutputYXInput in FilterDescriptor::ToShortString.
Bixia Zheng [Thu, 31 May 2018 23:25:24 +0000 (16:25 -0700)]
Handle FilterLayout::kOutputYXInput in FilterDescriptor::ToShortString.

This fixes an error when running resnet50_batch128_fp16 with --v=2.

PiperOrigin-RevId: 198798196

6 years agoEdited the landing page for the Performance section. Reorganized content and removed...
A. Unique TensorFlower [Thu, 31 May 2018 23:21:24 +0000 (16:21 -0700)]
Edited the landing page for the Performance section. Reorganized content and removed references to content that is being deleted.

PiperOrigin-RevId: 198797662

6 years ago[tf.data] Reflect `MakeIterator` signature change in documentation.
Jiri Simsa [Thu, 31 May 2018 23:18:15 +0000 (16:18 -0700)]
[tf.data] Reflect `MakeIterator` signature change in documentation.

PiperOrigin-RevId: 198797254

6 years ago[tf.data] Mark DebugString() as const.
Brennan Saeta [Thu, 31 May 2018 23:15:45 +0000 (16:15 -0700)]
[tf.data] Mark DebugString() as const.

By marking DebugString() as const we can make some error messages more descriptive. Because DatasetIterator marks the return value of the dataset() function const, DebugString() cannot be called.

PiperOrigin-RevId: 198796894

6 years agoFixed Python API.
Nupur Garg [Thu, 31 May 2018 23:07:02 +0000 (16:07 -0700)]
Fixed Python API.

PiperOrigin-RevId: 198795738

6 years agoAdd utility for converting FunctionDef to GraphDef and _FuncGraph.
Saurabh Saxena [Thu, 31 May 2018 23:06:15 +0000 (16:06 -0700)]
Add utility for converting FunctionDef to GraphDef and _FuncGraph.

PiperOrigin-RevId: 198795625

6 years ago[XLA:GPU] Specify cudnn conv algorithm via backend_config.
Justin Lebar [Thu, 31 May 2018 23:02:26 +0000 (16:02 -0700)]
[XLA:GPU] Specify cudnn conv algorithm via backend_config.

Gets rid of the tricky algorithm/use-tensor-cores operands to cudnn
convolution customcalls, using instead a backend_config.

PiperOrigin-RevId: 198794988

6 years agoFix one comment in prefetch_autotuner_test.cc.
Ruoxin Sang [Thu, 31 May 2018 23:01:50 +0000 (16:01 -0700)]
Fix one comment in prefetch_autotuner_test.cc.

PiperOrigin-RevId: 198794897

6 years agoPutting stubs for function shape inference interface
A. Unique TensorFlower [Thu, 31 May 2018 23:01:23 +0000 (16:01 -0700)]
Putting stubs for function shape inference interface

PiperOrigin-RevId: 198794845

6 years agoAdd warning for gcs_config_ops
Frank Chen [Thu, 31 May 2018 22:52:15 +0000 (15:52 -0700)]
Add warning for gcs_config_ops

PiperOrigin-RevId: 198793502

6 years agoRefactoring: Extract CombineHashes function into a shared module
Yu-Cheng Ling [Thu, 31 May 2018 22:50:55 +0000 (15:50 -0700)]
Refactoring: Extract CombineHashes function into a shared module
PiperOrigin-RevId: 198793295

6 years ago[XLA] Check for identical backend configs in HloInstruction::Identical.
Justin Lebar [Thu, 31 May 2018 22:25:10 +0000 (15:25 -0700)]
[XLA] Check for identical backend configs in HloInstruction::Identical.

PiperOrigin-RevId: 198789495

6 years agoMove reorder-cast-and-transpose optimization to optimization stage.
A. Unique TensorFlower [Thu, 31 May 2018 22:17:52 +0000 (15:17 -0700)]
Move reorder-cast-and-transpose optimization to optimization stage.

PiperOrigin-RevId: 198788352

6 years agoInternal change.
A. Unique TensorFlower [Thu, 31 May 2018 22:11:26 +0000 (15:11 -0700)]
Internal change.

PiperOrigin-RevId: 198787391

6 years agoSimilar to cr/188652533, specify the `maximum_iterations` to tf.while_loop in tf...
A. Unique TensorFlower [Thu, 31 May 2018 22:05:23 +0000 (15:05 -0700)]
Similar to cr/188652533, specify the `maximum_iterations` to tf.while_loop in tf.map_fn to be compatible with XLA.

PiperOrigin-RevId: 198786266

6 years agoWrite checkpoint path of evaluated checkpoint to the event file.
A. Unique TensorFlower [Thu, 31 May 2018 21:48:51 +0000 (14:48 -0700)]
Write checkpoint path of evaluated checkpoint to the event file.

PiperOrigin-RevId: 198783364

6 years agoExpose the ExponentialMovingAverage name as a public property.
A. Unique TensorFlower [Thu, 31 May 2018 21:42:07 +0000 (14:42 -0700)]
Expose the ExponentialMovingAverage name as a public property.

PiperOrigin-RevId: 198782348

6 years agoMark XLAShapeForArgument as const.
Jacques Pienaar [Thu, 31 May 2018 21:24:13 +0000 (14:24 -0700)]
Mark XLAShapeForArgument as const.

PiperOrigin-RevId: 198778945

6 years agoMove RemodeRedundantReshape optimization to a separate stage.
A. Unique TensorFlower [Thu, 31 May 2018 21:01:45 +0000 (14:01 -0700)]
Move RemodeRedundantReshape optimization to a separate stage.

PiperOrigin-RevId: 198775276

6 years agoAdd attributes to TFLite Python API.
Nupur Garg [Thu, 31 May 2018 20:58:32 +0000 (13:58 -0700)]
Add attributes to TFLite Python API.

PiperOrigin-RevId: 198774775

6 years ago[tf.data] Changing signature of `MakeIterator` to enable propagating error status.
Jiri Simsa [Thu, 31 May 2018 20:43:43 +0000 (13:43 -0700)]
[tf.data] Changing signature of `MakeIterator` to enable propagating error status.

PiperOrigin-RevId: 198772254

6 years agoMore eager notebooks.
Alexandre Passos [Thu, 31 May 2018 20:22:10 +0000 (13:22 -0700)]
More eager notebooks.

PiperOrigin-RevId: 198768912

6 years agoMoving generated API to tensorflow/.
Anna R [Thu, 31 May 2018 20:11:43 +0000 (13:11 -0700)]
Moving generated API to tensorflow/.

PiperOrigin-RevId: 198767512

6 years agoAdd profiling statistics to benchmark.
Shashi Shekhar [Thu, 31 May 2018 20:10:07 +0000 (13:10 -0700)]
Add profiling statistics to benchmark.

PiperOrigin-RevId: 198767297

6 years agoFix links in the TensorFlow Security Advisories
Frank Chen [Thu, 31 May 2018 19:38:35 +0000 (12:38 -0700)]
Fix links in the TensorFlow Security Advisories

PiperOrigin-RevId: 198762795

6 years agoMaking the tf.name_scope blocks related to the factor and weight vars configurable...
A. Unique TensorFlower [Thu, 31 May 2018 19:16:54 +0000 (12:16 -0700)]
Making the tf.name_scope blocks related to the factor and weight vars configurable. By default they will not be scoped.

PiperOrigin-RevId: 198759754

6 years agoRuntimeShapes class: minor tweak to fix builds.
A. Unique TensorFlower [Thu, 31 May 2018 18:52:43 +0000 (11:52 -0700)]
RuntimeShapes class: minor tweak to fix builds.

PiperOrigin-RevId: 198755870

6 years agoMerge pull request #19419 from perfinion/pip_package
Martin Wicke [Thu, 31 May 2018 18:50:35 +0000 (11:50 -0700)]
Merge pull request #19419 from perfinion/pip_package

pip_package: modularize build script to allow distros to install more flexibly

6 years agoMerge pull request #19597 from perfinion/pkgconfig
Martin Wicke [Thu, 31 May 2018 18:49:11 +0000 (11:49 -0700)]
Merge pull request #19597 from perfinion/pkgconfig

generate-pc.sh: add option to set libdir

6 years ago[XLA] Make HloInstruction::backend_config() a JSON-encoded protobuf.
Justin Lebar [Thu, 31 May 2018 18:43:37 +0000 (11:43 -0700)]
[XLA] Make HloInstruction::backend_config() a JSON-encoded protobuf.

PiperOrigin-RevId: 198754463

6 years ago[XLA] Redesign: delete computation_tracker and user_computation.
A. Unique TensorFlower [Thu, 31 May 2018 17:39:33 +0000 (10:39 -0700)]
[XLA] Redesign: delete computation_tracker and user_computation.

PiperOrigin-RevId: 198743117

6 years agoInitial implementation of a few of the list-specific operators.
Dan Moldovan [Thu, 31 May 2018 17:33:53 +0000 (10:33 -0700)]
Initial implementation of a few of the list-specific operators.
This introduces an abstraction for a dispatch context, which allows passing local information through to the specialized operators.

PiperOrigin-RevId: 198742074

6 years agoBuild libtensorflow.so and libtensorflow_framework.so for Raspberry Pi. (#18892)
Jesse Benson [Thu, 31 May 2018 17:35:15 +0000 (10:35 -0700)]
Build libtensorflow.so and libtensorflow_framework.so for Raspberry Pi. (#18892)

6 years agoSuppress generation of the proto API's descriptor() method, it conflicts with the...
A. Unique TensorFlower [Thu, 31 May 2018 17:20:00 +0000 (10:20 -0700)]
Suppress generation of the proto API's descriptor() method, it conflicts with the field name.

PiperOrigin-RevId: 198739727

6 years agoIntroduce runtime shape class.
A. Unique TensorFlower [Thu, 31 May 2018 17:15:59 +0000 (10:15 -0700)]
Introduce runtime shape class.

PiperOrigin-RevId: 198739017

6 years agoMerge pull request #19652 from samikama/WiringIssues
gracehoney [Thu, 31 May 2018 16:48:54 +0000 (09:48 -0700)]
Merge pull request #19652 from samikama/WiringIssues

Fix TRT Node rewiring

6 years agoAnother handle_data fix for graph-mode functions.
Skye Wanderman-Milne [Thu, 31 May 2018 16:43:30 +0000 (09:43 -0700)]
Another handle_data fix for graph-mode functions.

PiperOrigin-RevId: 198734229

6 years agoCleanup: update continue_statements.py to use the base transformer facilities for...
Dan Moldovan [Thu, 31 May 2018 15:53:36 +0000 (08:53 -0700)]
Cleanup: update continue_statements.py to use the base transformer facilities for tracking local state and reindenting node blocks. Rearrange the error handling in base transformer to avoid chained exceptions.

PiperOrigin-RevId: 198727946

6 years agoStandardize shifts in multiplication util functions.
A. Unique TensorFlower [Thu, 31 May 2018 15:33:36 +0000 (08:33 -0700)]
Standardize shifts in multiplication util functions.

PiperOrigin-RevId: 198725578

6 years agoMake GraphConstructor create nodes in the same order as the GraphDef.
Skye Wanderman-Milne [Thu, 31 May 2018 14:56:56 +0000 (07:56 -0700)]
Make GraphConstructor create nodes in the same order as the GraphDef.

While technically the order of the created nodes doesn't matter, this
makes viewing and debugging graphs more sensible.

Fixes #19594.

PiperOrigin-RevId: 198721173

6 years ago[tf.data] Scaling down the `batch_dataset_op_test`.
Jiri Simsa [Thu, 31 May 2018 13:57:55 +0000 (06:57 -0700)]
[tf.data] Scaling down the `batch_dataset_op_test`.

PiperOrigin-RevId: 198715407

6 years agoimplementation of sparse_to_dense
A. Unique TensorFlower [Thu, 31 May 2018 13:05:04 +0000 (06:05 -0700)]
implementation of sparse_to_dense

PiperOrigin-RevId: 198710452

6 years ago[XLA] Redesign: delete the old service interface.
A. Unique TensorFlower [Thu, 31 May 2018 05:03:16 +0000 (22:03 -0700)]
[XLA] Redesign: delete the old service interface.
- Computation
- ComputeConstant
- Execute
- ExecuteAsync
- ExecuteParallel
- GetComputationStats
- GetComputationShape
- GetLocalShape
- IsConstant
- LoadComputationSnapshot
- Op
- SetReturnValue
- SnapshotComputation

PiperOrigin-RevId: 198669035

6 years agoImprove ReshapeIsIdentity to work with symbolic shapes.
Jingyue Wu [Thu, 31 May 2018 05:00:32 +0000 (22:00 -0700)]
Improve ReshapeIsIdentity to work with symbolic shapes.

For example, with this CL, ArithmeticOptimizer can optimize the Reshape below
into a no-op.

  s = Shape(t)
  Reshape(t, Concat(s[0], s[1], s[2], s[3]))

PiperOrigin-RevId: 198668726

6 years agoAdd GCS_READ_CACHE_DISABLED explicit env var to GcsFileSystem
Nick Felt [Thu, 31 May 2018 02:27:26 +0000 (19:27 -0700)]
Add GCS_READ_CACHE_DISABLED explicit env var to GcsFileSystem

PiperOrigin-RevId: 198658074

6 years agoMerge pull request #19591 from candyzone/master
Amit Patankar [Thu, 31 May 2018 02:25:44 +0000 (19:25 -0700)]
Merge pull request #19591 from candyzone/master

Fix typo

6 years agoMerge pull request #19655 from gunan/setuptools
Amit Patankar [Thu, 31 May 2018 02:25:09 +0000 (19:25 -0700)]
Merge pull request #19655 from gunan/setuptools

Fix setuptools version to avoid a bad release.

6 years agoAdd a subclassed Model's attribute-assigned variables to Model.weights et al
Allen Lavoie [Thu, 31 May 2018 02:01:58 +0000 (19:01 -0700)]
Add a subclassed Model's attribute-assigned variables to Model.weights et al

Makes the Variable.trainable property public, which is sensible if we're discouraging use of the global collection (currently eager execution is using ResourceVariable._trainable in a bunch of places anyway). I'm leaving it read-only for now, since we should toggle in and out of the global collection when it changes.

Same change for checkpointable data structures with respect to gathering extra variables. They'll behave like subclassed Models.

I think this makes more sense than trying to have a distinction between "variables" and "weights". It's also more sensible than collecting everything that would get checkpointed, since that will include Optimizer slot variables and metrics. Collecting those is generally pointless, and accidentally adding them to gradient tapes would be horribly confusing.

PiperOrigin-RevId: 198656079

6 years agoAutomated g4 rollback of changelist 195379693
HyoukJoong Lee [Thu, 31 May 2018 01:43:40 +0000 (18:43 -0700)]
Automated g4 rollback of changelist 195379693

PiperOrigin-RevId: 198654780

6 years agoExpose xla_disable_hlo_passes via ExecutableBuildOptions.
Sanjoy Das [Thu, 31 May 2018 01:35:42 +0000 (18:35 -0700)]
Expose xla_disable_hlo_passes via ExecutableBuildOptions.

PiperOrigin-RevId: 198654099

6 years agoRemove code returning bad status when the input pointer is nullptr in internal
Ruoxin Sang [Thu, 31 May 2018 01:11:10 +0000 (18:11 -0700)]
Remove code returning bad status when the input pointer is nullptr in internal
functions. That should be a programmatic error and we have full control of
internal functions, so it is OK to crash if error happens.

PiperOrigin-RevId: 198651749

6 years ago[XLA] Add parsers for Window and ConvolutionDimensionNumbers.
Justin Lebar [Thu, 31 May 2018 00:59:50 +0000 (17:59 -0700)]
[XLA] Add parsers for Window and ConvolutionDimensionNumbers.

Also modify relevant ToString functions so we can have the property
Parse(ToString(x)) == x.

PiperOrigin-RevId: 198650340

6 years agoEnable TOCO pip command line binding.
Nupur Garg [Thu, 31 May 2018 00:54:02 +0000 (17:54 -0700)]
Enable TOCO pip command line binding.

PiperOrigin-RevId: 198649827

6 years agoFix bug with renorm + virtual_batch_size.
Chris Ying [Thu, 31 May 2018 00:38:13 +0000 (17:38 -0700)]
Fix bug with renorm + virtual_batch_size.

PiperOrigin-RevId: 198648273

6 years ago[XLA] Switch replay_computation to use LocalClient.
Justin Lebar [Thu, 31 May 2018 00:00:50 +0000 (17:00 -0700)]
[XLA] Switch replay_computation to use LocalClient.

This lets replay_computation build an executable once and run it
multiple times.  This is particularly important because in XLA:GPU, the
first run of an executable does some autotuning and therefore is
unrepresentative.

This change removes --xla_hlo_profile_last_run, because I don't see how
to support it in LocalClient -- LocalClient wants the do-profile bit to
be set when we *compile*.  (There may not be an easy fix for this; it
worked with regular Client because we were recompiling every time we
ran.)

PiperOrigin-RevId: 198643577

6 years ago[TF:XLA] Bump open source llvm revision to r333547
Sanjoy Das [Wed, 30 May 2018 23:54:00 +0000 (16:54 -0700)]
[TF:XLA] Bump open source llvm revision to r333547

PiperOrigin-RevId: 198642698

6 years agoRegard a path as a directory if it ends with "/" in GCS. This implies the assumption...
Ruoxin Sang [Wed, 30 May 2018 23:38:59 +0000 (16:38 -0700)]
Regard a path as a directory if it ends with "/" in GCS. This implies the assumption that if a real GCS object has file name ending with "/", it is always a directory mark rather than an object carrying actual contents.

PiperOrigin-RevId: 198640604

6 years agoMerge pull request #19654 from case540/branch_198629366
Michael Case [Wed, 30 May 2018 23:34:18 +0000 (16:34 -0700)]
Merge pull request #19654 from case540/branch_198629366

Branch 198629366

6 years agoAlways delete old while loop after LICM
Sanjoy Das [Wed, 30 May 2018 23:29:25 +0000 (16:29 -0700)]
Always delete old while loop after LICM

Right now the old while loop can stick around if it had side effects, which is
incorrect.

PiperOrigin-RevId: 198639203

6 years agoAdd SerialDeviceBatchScheduler which offers similar performance as the AdaptiveShared...
A. Unique TensorFlower [Wed, 30 May 2018 23:27:26 +0000 (16:27 -0700)]
Add SerialDeviceBatchScheduler which offers similar performance as the AdaptiveSharedBatchScheduler, but increased reliablility and stability.

ASBS assumes request latency can be minimized at a specific number of batch processing threads. Under reasonable load, this is true and ASBS performs well, but under low load latency is basically unaffected by the number of threads, and ASBS can learn a wide variety of 'optimal' values.  If load resumes suddenly, these values can give very poor latencies.  In most cases, ASBS will recover, eventually rediscovering the correct value, but we have observed other cases where the latency is so large and noisy that ASBS can't get a good signal to guide its learning and the number of threads remains stuck at the bad value.

In addition, the incremental learning nature of this algorithm means that ASBS is always exploring to some extent, which can give rise to periods of non-optimal latency. This is most significant at high utilization where the wrong number of threads can potentially overload the system.

ASBS uses latency as a proxy for keeping the tensorflow processing pipeline optimally loaded. SDBS, on the other hand, uses a direct measurement of the pipeline fullness, and adjusts its number of batch processing threads accordingly. This solves the exploration problem. SDBS solves the low load problem by not adjusting its thread count when the threads pass some idleness threshold.

PiperOrigin-RevId: 198638918

6 years agoAdd a convenience function, build_supervised_input_receiver_fn_from_input_fn,
Karmel Allison [Wed, 30 May 2018 23:25:00 +0000 (16:25 -0700)]
Add a convenience function, build_supervised_input_receiver_fn_from_input_fn,
that takes an Estimator input_fn and returns an input receiver function.

PiperOrigin-RevId: 198638593

6 years agoAutomated g4 rollback of changelist 198444757
A. Unique TensorFlower [Wed, 30 May 2018 23:17:45 +0000 (16:17 -0700)]
Automated g4 rollback of changelist 198444757

PiperOrigin-RevId: 198637528

6 years agoMakes empty() support uint8 on cpu.
A. Unique TensorFlower [Wed, 30 May 2018 23:01:05 +0000 (16:01 -0700)]
Makes empty() support uint8 on cpu.

PiperOrigin-RevId: 198634986

6 years agoFix setuptools version to avoid a bad release.
Gunhan Gulsoy [Wed, 30 May 2018 23:05:33 +0000 (16:05 -0700)]
Fix setuptools version to avoid a bad release.

6 years agoRemove environment variable to disable C API.
Skye Wanderman-Milne [Wed, 30 May 2018 23:00:26 +0000 (16:00 -0700)]
Remove environment variable to disable C API.

This is staging for removing the _USE_C_API toggle altogether.

PiperOrigin-RevId: 198634886

6 years agoMakes most variable writes depend on the cached value.
Alexandre Passos [Wed, 30 May 2018 22:50:43 +0000 (15:50 -0700)]
Makes most variable writes depend on the cached value.

This disallows some undefined behavior with unordered reads and writes.

PiperOrigin-RevId: 198633444

6 years agoAdd HloProto support to replay_computation
A. Unique TensorFlower [Wed, 30 May 2018 22:39:03 +0000 (15:39 -0700)]
Add HloProto support to replay_computation

PiperOrigin-RevId: 198631733

6 years agoMerge commit for internal changes
Michael Case [Wed, 30 May 2018 22:34:30 +0000 (15:34 -0700)]
Merge commit for internal changes

6 years agoAvoid recursion in ExpandDomain() as stack is not happy.
A. Unique TensorFlower [Wed, 30 May 2018 22:24:17 +0000 (15:24 -0700)]
Avoid recursion in ExpandDomain() as stack is not happy.

PiperOrigin-RevId: 198629366

6 years agoAdd kwargs support for tpu.outside_compilation
A. Unique TensorFlower [Wed, 30 May 2018 22:03:25 +0000 (15:03 -0700)]
Add kwargs support for tpu.outside_compilation

PiperOrigin-RevId: 198625799

6 years agoMove RemoveInvolution optimization to optimizer stage.
A. Unique TensorFlower [Wed, 30 May 2018 21:55:54 +0000 (14:55 -0700)]
Move RemoveInvolution optimization to optimizer stage.

PiperOrigin-RevId: 198624394

6 years agoAdd GCS configure ops.
Brennan Saeta [Wed, 30 May 2018 22:25:46 +0000 (15:25 -0700)]
Add GCS configure ops.

PiperOrigin-RevId: 198624285

6 years agoReview changes
Sami Kama [Wed, 30 May 2018 22:08:34 +0000 (15:08 -0700)]
Review changes

6 years agoMerge pull request #19633 from yifeif/branch_198434814
Yifei Feng [Wed, 30 May 2018 21:58:10 +0000 (14:58 -0700)]
Merge pull request #19633 from yifeif/branch_198434814

Branch 198434814

6 years agoAdd `fill_triangular_inverse`, which flattens a triangular matrix in a way such that:
Joshua V. Dillon [Wed, 30 May 2018 21:52:57 +0000 (14:52 -0700)]
Add `fill_triangular_inverse`, which flattens a triangular matrix in a way such that:
# Lower triangular matrix
x = tf.matrix_band_part(x, -1, 0)
x == fill_triangular(fill_triangular_inverse(x))
Code by srvasude@ which I'm submitting on his behalf.

PiperOrigin-RevId: 198623887

6 years agoAdd control dependencies to the correct graph when simplifying packing ops.
Benoit Steiner [Wed, 30 May 2018 21:45:56 +0000 (14:45 -0700)]
Add control dependencies to the correct graph when simplifying packing ops.

PiperOrigin-RevId: 198622727