platform/upstream/tensorflow.git
6 years agoAdd Raspberry Pi section and link to github build instructions.
Billy Lamberta [Thu, 5 Apr 2018 22:25:00 +0000 (15:25 -0700)]
Add Raspberry Pi section and link to github build instructions.

PiperOrigin-RevId: 191807862

6 years agoMake tf.contrib.estimator.add_metrics work with warm-starting.
A. Unique TensorFlower [Thu, 5 Apr 2018 22:11:02 +0000 (15:11 -0700)]
Make tf.contrib.estimator.add_metrics work with warm-starting.

PiperOrigin-RevId: 191805682

6 years agoDisable tests that are currently failing with cuda 9
A. Unique TensorFlower [Thu, 5 Apr 2018 22:09:19 +0000 (15:09 -0700)]
Disable tests that are currently failing with cuda 9

PiperOrigin-RevId: 191805453

6 years ago[XLA] Better support for mul reductions in MakeFakeArguments()
Michael Kuperstein [Thu, 5 Apr 2018 21:54:36 +0000 (14:54 -0700)]
[XLA] Better support for mul reductions in MakeFakeArguments()

Mul reductions want a 1 as their init value, not a 0 or a random value.

PiperOrigin-RevId: 191802819

6 years agoFix TF_ImportGraphDefResults and TF_Function leaks in Python API.
Skye Wanderman-Milne [Thu, 5 Apr 2018 21:22:54 +0000 (14:22 -0700)]
Fix TF_ImportGraphDefResults and TF_Function leaks in Python API.

PiperOrigin-RevId: 191797853

6 years agoquantized LSTM support improvements
A. Unique TensorFlower [Thu, 5 Apr 2018 21:05:03 +0000 (14:05 -0700)]
quantized LSTM support improvements

PiperOrigin-RevId: 191794956

6 years agoChanges loss_reduction default to SUM_OVER_BATCH_SIZE for multi_class_head and binary...
A. Unique TensorFlower [Thu, 5 Apr 2018 20:55:45 +0000 (13:55 -0700)]
Changes loss_reduction default to SUM_OVER_BATCH_SIZE for multi_class_head and binary_classification_head.

PiperOrigin-RevId: 191793392

6 years agoEnable branch prediction in TensorFlow
Justine Tunney [Thu, 5 Apr 2018 20:23:08 +0000 (13:23 -0700)]
Enable branch prediction in TensorFlow

PiperOrigin-RevId: 191788253

6 years ago[XLA] Remove a dead function and a stale todo.
A. Unique TensorFlower [Thu, 5 Apr 2018 20:12:26 +0000 (13:12 -0700)]
[XLA] Remove a dead function and a stale todo.

PiperOrigin-RevId: 191786563

6 years agoAutomated g4 rollback of changelist 191753026
A. Unique TensorFlower [Thu, 5 Apr 2018 20:00:06 +0000 (13:00 -0700)]
Automated g4 rollback of changelist 191753026

PiperOrigin-RevId: 191784709

6 years agoSave the original from_proto method before calling it to avoid infinite loop.
Priya Gupta [Thu, 5 Apr 2018 19:57:49 +0000 (12:57 -0700)]
Save the original from_proto method before calling it to avoid infinite loop.

PiperOrigin-RevId: 191784430

6 years agoFix regression caused by cl/191020868: Re-use materialized shapes for other broadcast...
A. Unique TensorFlower [Thu, 5 Apr 2018 19:18:34 +0000 (12:18 -0700)]
Fix regression caused by cl/191020868: Re-use materialized shapes for other broadcast gradient shape nodes.

PiperOrigin-RevId: 191779263

6 years agoFix final eval bottleneck creation to work in cases where it isn't cached already.
Suharsh Sivakumar [Thu, 5 Apr 2018 18:36:43 +0000 (11:36 -0700)]
Fix final eval bottleneck creation to work in cases where it isn't cached already.

Fixes #17423

PiperOrigin-RevId: 191773001

6 years agoAutomated g4 rollback of changelist 191761109
A. Unique TensorFlower [Thu, 5 Apr 2018 18:30:35 +0000 (11:30 -0700)]
Automated g4 rollback of changelist 191761109

PiperOrigin-RevId: 191771969

6 years agoExpose odeint_fixed in tf.contrib.integrate
Stephan Hoyer [Thu, 5 Apr 2018 18:18:49 +0000 (11:18 -0700)]
Expose odeint_fixed in tf.contrib.integrate

PiperOrigin-RevId: 191769890

6 years agoInternal change
A. Unique TensorFlower [Thu, 5 Apr 2018 18:17:58 +0000 (11:17 -0700)]
Internal change

PiperOrigin-RevId: 191769724

6 years agoSync only the convolutional_recurrent file to Keras 2.1.5.
Anjali Sridhar [Thu, 5 Apr 2018 17:41:40 +0000 (10:41 -0700)]
Sync only the convolutional_recurrent file to Keras 2.1.5.

PiperOrigin-RevId: 191763101

6 years agoInline more functions
Benoit Steiner [Thu, 5 Apr 2018 17:29:15 +0000 (10:29 -0700)]
Inline more functions

PiperOrigin-RevId: 191761109

6 years agoExpand activity analysis to the test nodes of if and while statements.
A. Unique TensorFlower [Thu, 5 Apr 2018 16:57:58 +0000 (09:57 -0700)]
Expand activity analysis to the test nodes of if and while statements.

PiperOrigin-RevId: 191756234

6 years agoInclude the operators module in the test framework as well.
A. Unique TensorFlower [Thu, 5 Apr 2018 16:56:50 +0000 (09:56 -0700)]
Include the operators module in the test framework as well.

PiperOrigin-RevId: 191756100

6 years agoRefine BatchReshape error messages.
Joshua V. Dillon [Thu, 5 Apr 2018 16:41:31 +0000 (09:41 -0700)]
Refine BatchReshape error messages.

PiperOrigin-RevId: 191754120

6 years agoDocument expected regular structure of the statistical testing library.
A. Unique TensorFlower [Thu, 5 Apr 2018 16:38:40 +0000 (09:38 -0700)]
Document expected regular structure of the statistical testing library.

PiperOrigin-RevId: 191753693

6 years agoAdded a call in CheckpointSaverHook.after_create_session to always save
Sherry Moore [Thu, 5 Apr 2018 16:33:20 +0000 (09:33 -0700)]
Added a call in CheckpointSaverHook.after_create_session to always save
checkpoint before the first training step.

PiperOrigin-RevId: 191753026

6 years agoFix typos in "Profile Model Float Operations" documentation.
A. Unique TensorFlower [Thu, 5 Apr 2018 16:17:57 +0000 (09:17 -0700)]
Fix typos in "Profile Model Float Operations" documentation.

PiperOrigin-RevId: 191751175

6 years agoUse constants in tf.zeros if the constant won't be too big.
Skye Wanderman-Milne [Thu, 5 Apr 2018 15:47:47 +0000 (08:47 -0700)]
Use constants in tf.zeros if the constant won't be too big.

Using fill saves on GraphDef size, but can slow down models since the
total number of ops is greater (fill + shape + constant op). This
change makes us only use fill for large shapes.

PiperOrigin-RevId: 191747456

6 years agoFix docstring.
A. Unique TensorFlower [Thu, 5 Apr 2018 15:47:27 +0000 (08:47 -0700)]
Fix docstring.

PiperOrigin-RevId: 191747417

6 years agoCreate a separate operators module that is to contain all Python constructs that...
A. Unique TensorFlower [Thu, 5 Apr 2018 12:39:21 +0000 (05:39 -0700)]
Create a separate operators module that is to contain all Python constructs that we override: control flow, builtins, operators, etc.

PiperOrigin-RevId: 191729654

6 years agoAdd support for NCCL2. The configure script asks for what version of NCCL to use...
A. Unique TensorFlower [Thu, 5 Apr 2018 10:09:27 +0000 (03:09 -0700)]
Add support for NCCL2. The configure script asks for what version of NCCL to use. The default is still NCCL 1 from GitHub. If the user chooses NCCL 2, it asks for the install directory.

The nccl_configure.bzl generates two different BUILD files based on the chose NCCL version. For NCCL 1, it aliases to the existing 'nccl_archive' http_repo on GitHub. For NCCL 2, it creates a target containing the NCCL 2 library and headers from the chosen install directory.

PiperOrigin-RevId: 191718007

6 years agoUpgrade Snappy to latest version
Justine Tunney [Thu, 5 Apr 2018 07:53:51 +0000 (00:53 -0700)]
Upgrade Snappy to latest version

They added big endian preprocessor macros in recent releases. Hopefully
this should do the right thing on IBM mainframes.

PiperOrigin-RevId: 191705207

6 years agoUpgrade zlib to latest version
Justine Tunney [Thu, 5 Apr 2018 05:37:42 +0000 (22:37 -0700)]
Upgrade zlib to latest version

PiperOrigin-RevId: 191696213

6 years agoSupport arbitrary permutations for DataFormatDimMap.
A. Unique TensorFlower [Thu, 5 Apr 2018 05:37:35 +0000 (22:37 -0700)]
Support arbitrary permutations for DataFormatDimMap.

PiperOrigin-RevId: 191696203

6 years agoAdd a helper function to re-assign colocation in a graph.
A. Unique TensorFlower [Thu, 5 Apr 2018 01:20:36 +0000 (18:20 -0700)]
Add a helper function to re-assign colocation in a graph.

PiperOrigin-RevId: 191679495

6 years agoSort control inputs alphabetically in ToGraphDefSubRange.
Skye Wanderman-Milne [Thu, 5 Apr 2018 01:00:27 +0000 (18:00 -0700)]
Sort control inputs alphabetically in ToGraphDefSubRange.

PiperOrigin-RevId: 191677358

6 years agoBUGFIX: Detect when broadcasting is required and raise NotImplementedError.
Joshua V. Dillon [Thu, 5 Apr 2018 00:28:41 +0000 (17:28 -0700)]
BUGFIX: Detect when broadcasting is required and raise NotImplementedError.

PiperOrigin-RevId: 191673876

6 years agoExclude some gcc options in Windows build
A. Unique TensorFlower [Thu, 5 Apr 2018 00:18:43 +0000 (17:18 -0700)]
Exclude some gcc options in Windows build

PiperOrigin-RevId: 191672761

6 years ago[XLA]: Enable Memory sanitizer for compilation_passes_test.
Bixia Zheng [Thu, 5 Apr 2018 00:14:11 +0000 (17:14 -0700)]
[XLA]: Enable Memory sanitizer for compilation_passes_test.

Initialize the buffer for a scalar tensor to avoid uninitialized
accesses.

PiperOrigin-RevId: 191672257

6 years agoReplace trivial backend calls with calls to underlying TensorFlow functions - Part 2
Pavithra Vijay [Wed, 4 Apr 2018 23:53:51 +0000 (16:53 -0700)]
Replace trivial backend calls with calls to underlying TensorFlow functions - Part 2

PiperOrigin-RevId: 191669725

6 years agoAddress bug in distributed strategies `Monitor` to allow running for >1 step.
Priya Gupta [Wed, 4 Apr 2018 23:34:54 +0000 (16:34 -0700)]
Address bug in distributed strategies `Monitor` to allow running for >1 step.

PiperOrigin-RevId: 191667378

6 years agoCheck that n + kBlockTrailerSize does not overflow before reading a block
Frank Chen [Wed, 4 Apr 2018 23:26:25 +0000 (16:26 -0700)]
Check that n + kBlockTrailerSize does not overflow before reading a block

PiperOrigin-RevId: 191666300

6 years agoFixed handling of control dependencies in the arithmethic optimizer
Benoit Steiner [Wed, 4 Apr 2018 23:17:46 +0000 (16:17 -0700)]
Fixed handling of control dependencies in the arithmethic optimizer

PiperOrigin-RevId: 191665098

6 years agoRunning sparse_ops_test only in opt mode since the test is flaky (times out) in fastb...
A. Unique TensorFlower [Wed, 4 Apr 2018 23:17:05 +0000 (16:17 -0700)]
Running sparse_ops_test only in opt mode since the test is flaky (times out) in fastbuild mode.

PiperOrigin-RevId: 191665014

6 years agoEnable constant propagation across Enter nodes, but only if is_constant is true.
A. Unique TensorFlower [Wed, 4 Apr 2018 23:05:08 +0000 (16:05 -0700)]
Enable constant propagation across Enter nodes, but only if is_constant is true.
Don't propagate constants with control dependencies through Merge nodes.

PiperOrigin-RevId: 191663396

6 years agoInternal change.
A. Unique TensorFlower [Wed, 4 Apr 2018 22:46:26 +0000 (15:46 -0700)]
Internal change.

PiperOrigin-RevId: 191660588

6 years agoCompile TensorFlow with /arch:AVX on Windows
A. Unique TensorFlower [Wed, 4 Apr 2018 22:45:20 +0000 (15:45 -0700)]
Compile TensorFlow with /arch:AVX on Windows

/arch:AVX is the correpsonding option in MSVC for gcc's --march=native

PiperOrigin-RevId: 191660389

6 years agoAdds commandline option (toco_compatible, bool) that makes the optimize_for_inference...
A. Unique TensorFlower [Wed, 4 Apr 2018 22:45:16 +0000 (15:45 -0700)]
Adds commandline option (toco_compatible, bool) that makes the optimize_for_inference script only use TOCO friendly ops. In particular, FusedResizeAndPadConv2D is not supported by TOCO.

This change does not alter existing behavior (the boolean is set to false by default).

PiperOrigin-RevId: 191660378

6 years agoAdding Operation._control_outputs
Alexandre Passos [Wed, 4 Apr 2018 22:42:14 +0000 (15:42 -0700)]
Adding Operation._control_outputs

PiperOrigin-RevId: 191659944

6 years agoRemove dependency on absl to fix tf-nightly-gpu windows GPU build
Smit Hinsu [Wed, 4 Apr 2018 22:36:52 +0000 (15:36 -0700)]
Remove dependency on absl to fix tf-nightly-gpu windows GPU build

PiperOrigin-RevId: 191659091

6 years agoFix typo in `tf.reduce_mean` documentation.
Daniel Zheng [Wed, 4 Apr 2018 22:28:01 +0000 (15:28 -0700)]
Fix typo in `tf.reduce_mean` documentation.

The range of valid values for the `axis` argument should be `[-rank(input), rank(input))`, just like other reduction ops.

PiperOrigin-RevId: 191657767

6 years agoIterate over a copy of dictionary keys when closing variable subscopes. Otherwise...
Priya Gupta [Wed, 4 Apr 2018 22:15:32 +0000 (15:15 -0700)]
Iterate over a copy of dictionary keys when closing variable subscopes. Otherwise, we run into a "dictionary changed size during iteration" once in a while, as we are modifying the values in the dictionary during the iteration.

PiperOrigin-RevId: 191655599

6 years agoCreates a LinearModel (inherits from keras.training.Model) that creates a linear
Rohan Jain [Wed, 4 Apr 2018 22:14:19 +0000 (15:14 -0700)]
Creates a LinearModel (inherits from keras.training.Model) that creates a linear
model.

Had to modify the __call__ method in the base layer class so that it could work with feature style inputs in which case we lazily convert the inputs to tensors instead of providing tensors as inputs upfront.

PiperOrigin-RevId: 191655445

6 years agoRename `distribute` to `train_distribute` parameter in `RunConfig` to clarify that...
Priya Gupta [Wed, 4 Apr 2018 22:06:08 +0000 (15:06 -0700)]
Rename `distribute` to `train_distribute` parameter in `RunConfig` to clarify that its purpose is only for training.

PiperOrigin-RevId: 191654161

6 years agoAdd quantized uint8 L2Normalization Kernel.
A. Unique TensorFlower [Wed, 4 Apr 2018 21:55:16 +0000 (14:55 -0700)]
Add quantized uint8 L2Normalization Kernel.

PiperOrigin-RevId: 191652174

6 years agoGraphOptimizerStagePipeline to pass through multiple
A. Unique TensorFlower [Wed, 4 Apr 2018 21:45:05 +0000 (14:45 -0700)]
GraphOptimizerStagePipeline to pass through multiple
optimizer stages, skipping stages that return error.

PiperOrigin-RevId: 191650182

6 years agoCheck that the c_api module is not destroyed
Akshay Modi [Wed, 4 Apr 2018 21:41:59 +0000 (14:41 -0700)]
Check that the c_api module is not destroyed

PiperOrigin-RevId: 191649662

6 years agoAdd link to tensorflow.js
Shanqing Cai [Wed, 4 Apr 2018 21:39:40 +0000 (14:39 -0700)]
Add link to tensorflow.js

PiperOrigin-RevId: 191649295

6 years agoInline nested function calls.
A. Unique TensorFlower [Wed, 4 Apr 2018 21:31:29 +0000 (14:31 -0700)]
Inline nested function calls.

PiperOrigin-RevId: 191647899

6 years agoAdding a _create_state method to FeatureColumn so that we can decouple variable ...
Rohan Jain [Wed, 4 Apr 2018 21:29:03 +0000 (14:29 -0700)]
Adding a _create_state method to FeatureColumn so that we can decouple variable (more generally, state) creation from getting dense tensors etc. This lays the groundwork to create a Layer type interface (which is more eager friendly) on top of feature columns where variable creation is separated from getting the tensors out.

PiperOrigin-RevId: 191647517

6 years agorun evaluate nodes on parts of arithmetic optimizer tests.
A. Unique TensorFlower [Wed, 4 Apr 2018 21:28:22 +0000 (14:28 -0700)]
run evaluate nodes on parts of arithmetic optimizer tests.

PiperOrigin-RevId: 191647386

6 years agoPermit use of ArraysExtraInfo/constant_float_value when target model is quantized.
A. Unique TensorFlower [Wed, 4 Apr 2018 20:38:20 +0000 (13:38 -0700)]
Permit use of ArraysExtraInfo/constant_float_value when target model is quantized.

PiperOrigin-RevId: 191639289

6 years agoFix up output array min/max post-quantization if the range was overridden.
A. Unique TensorFlower [Wed, 4 Apr 2018 20:24:06 +0000 (13:24 -0700)]
Fix up output array min/max post-quantization if the range was overridden.

PiperOrigin-RevId: 191637143

6 years agoExpose scatter_add for resource variables.
Adria Puigdomenech [Wed, 4 Apr 2018 20:02:27 +0000 (13:02 -0700)]
Expose scatter_add for resource variables.

PiperOrigin-RevId: 191634030

6 years agoReplaced calls to deprecated tensorflow::StringPiece methods with their
A. Unique TensorFlower [Wed, 4 Apr 2018 19:08:49 +0000 (12:08 -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: 191627087

6 years agoWarning when tweaking a minmax to contain 0.
A. Unique TensorFlower [Wed, 4 Apr 2018 19:00:38 +0000 (12:00 -0700)]
Warning when tweaking a minmax to contain 0.

PiperOrigin-RevId: 191625723

6 years agoAlso registers the gpu resourcegather kernel for half (no idea why it was missing)
Alexandre Passos [Wed, 4 Apr 2018 18:35:05 +0000 (11:35 -0700)]
Also registers the gpu resourcegather kernel for half (no idea why it was missing)

PiperOrigin-RevId: 191621111

6 years agoGuard against out-of-bounds dims accesses, even in optimized, no-asserts
A. Unique TensorFlower [Wed, 4 Apr 2018 18:15:56 +0000 (11:15 -0700)]
Guard against out-of-bounds dims accesses, even in optimized, no-asserts
builds.

PiperOrigin-RevId: 191617948

6 years agoAutomated g4 rollback of changelist 191527251
Tony Wang [Wed, 4 Apr 2018 17:00:39 +0000 (10:00 -0700)]
Automated g4 rollback of changelist 191527251

PiperOrigin-RevId: 191605505

6 years agoCheck arguments of ComputeConvSizes that should be positive.
A. Unique TensorFlower [Wed, 4 Apr 2018 16:51:55 +0000 (09:51 -0700)]
Check arguments of ComputeConvSizes that should be positive.

PiperOrigin-RevId: 191604311

6 years agoRestructuring the HLO partitioner to fit host computation and handle kCall.
A. Unique TensorFlower [Wed, 4 Apr 2018 16:31:25 +0000 (09:31 -0700)]
Restructuring the HLO partitioner to fit host computation and handle kCall.
Pre process the input module to reassign reserved devices (like the host compute one) to new sequentially increasing device numbers, and track those in the GlobalState.
This avoids having many places where we need to spread the is-special-device logic, within the HLO partitioner and its related components.
Added handling for kCall, which was missing from previous implementation.

PiperOrigin-RevId: 191601831

6 years agoTurn Cast into a proper builtin operator.
A. Unique TensorFlower [Wed, 4 Apr 2018 14:45:31 +0000 (07:45 -0700)]
Turn Cast into a proper builtin operator.

PiperOrigin-RevId: 191590230

6 years agoSync replicas distributed training example with two strategies:
A. Unique TensorFlower [Wed, 4 Apr 2018 12:31:48 +0000 (05:31 -0700)]
Sync replicas distributed training example with two strategies:
1) Interleave covariance and inverse update ops with training op.
2) Run the inverse and covariance ops on separate dedicated workers.

PiperOrigin-RevId: 191579634

6 years agoFix PR-AUC calculation, namely the incorrect use of linear interpolation for Precisio...
A. Unique TensorFlower [Wed, 4 Apr 2018 07:33:14 +0000 (00:33 -0700)]
Fix PR-AUC calculation, namely the incorrect use of linear interpolation for Precision - see Section 4 of Davis & Goadrich 2006 (https://biostat.wisc.edu/~page/rocpr.pdf)
Also, modify the name of the "trapezoidal" summation method to reflect the fact that the proper interpolation method in this case isn't quite the trapezoidal one.

PiperOrigin-RevId: 191555707

6 years agoFix formatting of MKL URLs
Justine Tunney [Wed, 4 Apr 2018 04:33:58 +0000 (21:33 -0700)]
Fix formatting of MKL URLs

The github.com was missing in the mirror.bazel.build path.

PiperOrigin-RevId: 191544461

6 years agoHelp build_pip_package work without ./configure
Justine Tunney [Wed, 4 Apr 2018 04:25:20 +0000 (21:25 -0700)]
Help build_pip_package work without ./configure

If the ./configure tool isn't run this script won't exist. It should
be safe to ignore this file if it isn't present since the variable
expansion below will just default to whatever python is on the PATH.

PiperOrigin-RevId: 191543995

6 years agoremoving an old TODO
Olivia Nordquist [Wed, 4 Apr 2018 03:28:58 +0000 (20:28 -0700)]
removing an old TODO

PiperOrigin-RevId: 191540512

6 years agoEnable calling the C API by default.
Skye Wanderman-Milne [Wed, 4 Apr 2018 02:29:53 +0000 (19:29 -0700)]
Enable calling the C API by default.

Enabling the C API makes TensorFlow's Python code to call the TensorFlow C API for low-level graph construction. This should cause no noticeable changes for the most part. One known difference is improved static shape inference, meaning some shape errors will be surfaced during graph construction instead of at runtime.

Note that this can be disabled by setting the environment variable TF_C_API_GRAPH_CONSTRUCTION=0 (for now, eventually this option will be removed).

PiperOrigin-RevId: 191536563

6 years ago[TF:XLA] Add half precision support to test_utils.
Bixia Zheng [Wed, 4 Apr 2018 02:20:44 +0000 (19:20 -0700)]
[TF:XLA] Add half precision support to test_utils.

PiperOrigin-RevId: 191535944

6 years agoAttach an id for each cost node in virtual_cluster.
Rui Zhao [Wed, 4 Apr 2018 01:49:53 +0000 (18:49 -0700)]
Attach an id for each cost node in virtual_cluster.

PiperOrigin-RevId: 191533511

6 years agoExtra logging to help debug shape inference logic in optimizers.
Max Galkin [Wed, 4 Apr 2018 01:47:46 +0000 (18:47 -0700)]
Extra logging to help debug shape inference logic in optimizers.

PiperOrigin-RevId: 191533338

6 years agoFix error message that was displaying wrong shape
A. Unique TensorFlower [Wed, 4 Apr 2018 01:16:54 +0000 (18:16 -0700)]
Fix error message that was displaying wrong shape

PiperOrigin-RevId: 191530602

6 years ago[XLA] Reshape mover should only transform a reshape/transpose instruction if
Bixia Zheng [Wed, 4 Apr 2018 01:08:21 +0000 (18:08 -0700)]
[XLA] Reshape mover should only transform a reshape/transpose instruction if
all the users of the instruction can be transformed.

This is because if only part of the users of a reshape/transpose instruction are
reshape-move transformed, the original reshape/transpose instruction can't be
eliminated while a modified clone copy of the instruction is added to support
the transformation. As a result, the transformation increases the number of
reshape/transpose instructions in the kerenel and can potentially increase
memory consumption.

Add two test cases.

PiperOrigin-RevId: 191529681

6 years agoFix bug where name generated by Graph::NewName can conflict with generated Send node...
Skye Wanderman-Milne [Wed, 4 Apr 2018 00:57:08 +0000 (17:57 -0700)]
Fix bug where name generated by Graph::NewName can conflict with generated Send node name.

I fixed this very locally to avoid having to fix a bunch of tests
(this is currently blocking enabling the C API), but this should be
fixed more generally in the future.

PiperOrigin-RevId: 191528409

6 years agoReplace trivial backend calls with calls to underlying TensorFlow functions - Part 1
Pavithra Vijay [Wed, 4 Apr 2018 00:56:14 +0000 (17:56 -0700)]
Replace trivial backend calls with calls to underlying TensorFlow functions - Part 1

PiperOrigin-RevId: 191528321

6 years agoFix a shape inference bug.
Benoit Steiner [Wed, 4 Apr 2018 00:52:53 +0000 (17:52 -0700)]
Fix a shape inference bug.

PiperOrigin-RevId: 191528009

6 years ago[TF:XLA] Add INTEL_MKL_ML MatMul method to XLA/CPU backend
Tony Wang [Wed, 4 Apr 2018 00:45:18 +0000 (17:45 -0700)]
[TF:XLA] Add INTEL_MKL_ML MatMul method to XLA/CPU backend

The INTEL GEMM API provides 32-bit and 64-bit MatMul. With INTEL_MKL flag set,
XLA backend emits runtime call to INTEL GEMM MatMul instead of Eigen.

PiperOrigin-RevId: 191527251

6 years agoAdd testcase for convert.
Jacques Pienaar [Wed, 4 Apr 2018 00:36:10 +0000 (17:36 -0700)]
Add testcase for convert.

PiperOrigin-RevId: 191526297

6 years agoRefactors the eager guide to be more researcher-friendly.
Alexandre Passos [Wed, 4 Apr 2018 00:35:54 +0000 (17:35 -0700)]
Refactors the eager guide to be more researcher-friendly.

 * Shows how to build layers
 * Orders the topics as they'd be ordered in a normal model

PiperOrigin-RevId: 191526275

6 years agoFix Conv3D shape inference.
Reed Wanderman-Milne [Wed, 4 Apr 2018 00:26:16 +0000 (17:26 -0700)]
Fix Conv3D shape inference.

Before, the stride rows and columns were mixed up, causing shape inference to output the wrong shape.

PiperOrigin-RevId: 191525254

6 years agoAdd max_constant_size_in_bytes parameter for ConstantFolding transform that sets...
A. Unique TensorFlower [Wed, 4 Apr 2018 00:08:57 +0000 (17:08 -0700)]
Add max_constant_size_in_bytes parameter for ConstantFolding transform that sets the maximum size of each created constant.

PiperOrigin-RevId: 191523208

6 years ago[XLA] Redesign: implement and test Send, Recv.
A. Unique TensorFlower [Wed, 4 Apr 2018 00:08:19 +0000 (17:08 -0700)]
[XLA] Redesign: implement and test Send, Recv.

PiperOrigin-RevId: 191523125

6 years ago[TF:XLA] Add test for scalar dynamic-update-slice.
A. Unique TensorFlower [Tue, 3 Apr 2018 23:56:25 +0000 (16:56 -0700)]
[TF:XLA] Add test for scalar dynamic-update-slice.

PiperOrigin-RevId: 191521429

6 years agoThis is a cosmetic change to logging, which makes it easier to understand this messag...
A. Unique TensorFlower [Tue, 3 Apr 2018 23:46:29 +0000 (16:46 -0700)]
This is a cosmetic change to logging, which makes it easier to understand this message when TPU nodes have a huge number of devices attached.

PiperOrigin-RevId: 191520116

6 years agoMinor touch-ups to the eager programming guide.
Akshay Agrawal [Tue, 3 Apr 2018 23:35:49 +0000 (16:35 -0700)]
Minor touch-ups to the eager programming guide.

PiperOrigin-RevId: 191518771

6 years agoFold more constants
Benoit Steiner [Tue, 3 Apr 2018 23:20:15 +0000 (16:20 -0700)]
Fold more constants

PiperOrigin-RevId: 191516861

6 years ago[TF]Disable memory sanitizer for compilation_passes_test while the problem is being
Bixia Zheng [Tue, 3 Apr 2018 23:18:19 +0000 (16:18 -0700)]
[TF]Disable memory sanitizer for compilation_passes_test while the problem is being

PiperOrigin-RevId: 191516643

6 years agoAdd forward_from_array to OpKernelContext::Params.
A. Unique TensorFlower [Tue, 3 Apr 2018 22:58:06 +0000 (15:58 -0700)]
Add forward_from_array to OpKernelContext::Params.

This is an optional reservation on the forwarding of a particular
input tensor to a particular output that will be used by future
optimizations.

PiperOrigin-RevId: 191513782

6 years agoAdd Group Normalization to tf.contrib.layers.
Jon Shlens [Tue, 3 Apr 2018 22:55:59 +0000 (15:55 -0700)]
Add Group Normalization to tf.contrib.layers.

# Example usage: NHWC
outputs = tf.contrib.layers.group_norm(inputs, groups=32, channels_axis=-1, reduction_axes=[-3, -2])
# Example usage: NCHW
outputs = tf.contrib.layers.group_norm(inputs, groups=32, channels_axis=-3, reduction_axes=[-2, -1])
PiperOrigin-RevId: 191513496

6 years agoAdd ability to pass symbolic tensors as inputs and targets in calls to Model training...
Francois Chollet [Tue, 3 Apr 2018 22:39:02 +0000 (15:39 -0700)]
Add ability to pass symbolic tensors as inputs and targets in calls to Model training and evaluation methods.

This also works for eager tensors, but due to a slicing behavior difference between eager tensors and Numpy arrays, we have to implement a workaround (with a performance cost).

PiperOrigin-RevId: 191511215

6 years agoCheckpointable: Utility to split a dependency for saving/loading
Allen Lavoie [Tue, 3 Apr 2018 22:28:27 +0000 (15:28 -0700)]
Checkpointable: Utility to split a dependency for saving/loading

Useful when a single op produces Tensors which should each be saved under
different objects (or when Tensors saved with many different objects need to be
restored together as inputs to a single op).

I plan to use this for cuDNN RNN saving, which currently relies heavily on name
matching to allow cuDNN cells to be swapped out for CPU-compatible RNN
cells. This change has just the utility and some tests for it.

PiperOrigin-RevId: 191509664

6 years agoAdd bfloat16 to GPU types.
Jacques Pienaar [Tue, 3 Apr 2018 22:25:16 +0000 (15:25 -0700)]
Add bfloat16 to GPU types.

PiperOrigin-RevId: 191509090

6 years agoRemove unused #includes
A. Unique TensorFlower [Tue, 3 Apr 2018 22:20:58 +0000 (15:20 -0700)]
Remove unused #includes

PiperOrigin-RevId: 191508478