platform/upstream/tensorflow.git
6 years agoMinor eager-related performance improvements
Akshay Modi [Tue, 13 Feb 2018 19:56:59 +0000 (11:56 -0800)]
Minor eager-related performance improvements

- Add a cache for name_scope
- skip some overhead _MulGrad and _MatMulGrad

PiperOrigin-RevId: 185565363

6 years agoExplicitely place the swap-in node: this ensures that subsequent rounds of
Benoit Steiner [Tue, 13 Feb 2018 19:46:08 +0000 (11:46 -0800)]
Explicitely place the swap-in node: this ensures that subsequent rounds of
memory optimization have a more accurate picture of the placement.

PiperOrigin-RevId: 185563797

6 years agoError out or log a warning if user sets the TPUConfig.num_shards incorrectly.
Jianwei Xie [Tue, 13 Feb 2018 19:33:12 +0000 (11:33 -0800)]
Error out or log a warning if user sets the TPUConfig.num_shards incorrectly.
Also improve TPU system metadata print out message.

PiperOrigin-RevId: 185561680

6 years agoAllow other types of variables to act as a resource variable.
Igor Saprykin [Tue, 13 Feb 2018 19:18:15 +0000 (11:18 -0800)]
Allow other types of variables to act as a resource variable.

Introduce resource_variable_ops.is_resource_variable() function that returns true
if an _should_act_as_resource_variable attribute is set.

PiperOrigin-RevId: 185559202

6 years agoadd missing blank line
Mark Daoust [Tue, 13 Feb 2018 18:54:09 +0000 (10:54 -0800)]
add missing blank line

PiperOrigin-RevId: 185554969

6 years agoAdd empty scaffolding for loop optimizers in Grappler.
A. Unique TensorFlower [Tue, 13 Feb 2018 18:48:58 +0000 (10:48 -0800)]
Add empty scaffolding for loop optimizers in Grappler.

PiperOrigin-RevId: 185554126

6 years agoClarify that the behavior of the iterator (advancing whenever any of the components...
A. Unique TensorFlower [Tue, 13 Feb 2018 18:48:43 +0000 (10:48 -0800)]
Clarify that the behavior of the iterator (advancing whenever any of the components is evaluated) is not magic, but a simple consequence of the dataflow graph structure.

PiperOrigin-RevId: 185554089

6 years agoFix documentation for the real shape of the output of crf_log_likelihood.
A. Unique TensorFlower [Tue, 13 Feb 2018 18:36:37 +0000 (10:36 -0800)]
Fix documentation for the real shape of the output of crf_log_likelihood.

PiperOrigin-RevId: 185552171

6 years agoUse _set_attr instead of directly modifying the nodedef
Akshay Modi [Tue, 13 Feb 2018 18:23:53 +0000 (10:23 -0800)]
Use _set_attr instead of directly modifying the nodedef

PiperOrigin-RevId: 185550223

6 years agoMove two common utility functions used by training and training_eager classes to...
Anjali Sridhar [Tue, 13 Feb 2018 18:16:03 +0000 (10:16 -0800)]
Move two common utility functions used by training and training_eager classes to a utility class.

PiperOrigin-RevId: 185548922

6 years agoTiny bugfix to eager TensorArray error message.
Eugene Brevdo [Tue, 13 Feb 2018 17:46:36 +0000 (09:46 -0800)]
Tiny bugfix to eager TensorArray error message.

PiperOrigin-RevId: 185543699

6 years agoTF to XLA compiler to support FakeQuantWithMinMaxVars/Args.
A. Unique TensorFlower [Tue, 13 Feb 2018 17:07:12 +0000 (09:07 -0800)]
TF to XLA compiler to support FakeQuantWithMinMaxVars/Args.

PiperOrigin-RevId: 185538228

6 years agoAdd gradient norm target arg to wass gradient penalty function. This trick is usd...
A. Unique TensorFlower [Tue, 13 Feb 2018 16:46:26 +0000 (08:46 -0800)]
Add gradient norm target arg to wass gradient penalty function. This trick is usd in the progressive GAN paper https://arxiv.org/abs/1710.10196

PiperOrigin-RevId: 185535584

6 years agoForce the use of print function in generated code.
A. Unique TensorFlower [Tue, 13 Feb 2018 16:12:09 +0000 (08:12 -0800)]
Force the use of print function in generated code.

PiperOrigin-RevId: 185531979

6 years agoMechanical variable renaming to improve consistency. No other changes.
A. Unique TensorFlower [Tue, 13 Feb 2018 09:08:22 +0000 (01:08 -0800)]
Mechanical variable renaming to improve consistency. No other changes.

Distinguishing between points and vectors: A point refers to a location in the tensor/filter, referred to by channel/row/col. A vector is the difference between two points (mostly 'one_past_the_end - begin'), referred to by depth/height/width.

PiperOrigin-RevId: 185496176

6 years agoInternal change
Gunhan Gulsoy [Tue, 13 Feb 2018 08:13:28 +0000 (00:13 -0800)]
Internal change

PiperOrigin-RevId: 185491705

6 years agoAdd test to ensure that covariance terms of FID is being incorporated meaningfully.
Surya Bhupatiraju [Tue, 13 Feb 2018 07:31:38 +0000 (23:31 -0800)]
Add test to ensure that covariance terms of FID is being incorporated meaningfully.

PiperOrigin-RevId: 185488757

6 years agoDisable interleave_dataset_op_test.py and remove a duplicate entry in test blacklist...
Gunhan Gulsoy [Tue, 13 Feb 2018 07:20:15 +0000 (23:20 -0800)]
Disable interleave_dataset_op_test.py and remove a duplicate entry in test blacklist in cmake build.

PiperOrigin-RevId: 185488210

6 years ago1. Add image_ops.is_jpeg Op to decide if a input string is a jpeg string or not.
A. Unique TensorFlower [Tue, 13 Feb 2018 06:54:48 +0000 (22:54 -0800)]
1. Add image_ops.is_jpeg Op to decide if a input string is a jpeg string or not.
2. Change tfexample_decoder in slim/objection_detection to accept different JPEG decompression method.
Defaults to ""/None which maps to a system-specific default. Currently valid values are ["INTEGER_FAST", "INTEGER_ACCURATE"]. The hint may be ignored (e.g., the internal jpeg library changes to a version that does not have that specific option.)

PiperOrigin-RevId: 185486653

6 years ago[TF:XLA] Work around crash in Gather op on CPU backend by making loop bound a compile...
Peter Hawkins [Tue, 13 Feb 2018 06:45:49 +0000 (22:45 -0800)]
[TF:XLA] Work around crash in Gather op on CPU backend by making loop bound a compile-time constant.

PiperOrigin-RevId: 185486148

6 years ago[XLA:CPU] Implement vectorized Log in LLVM IR
Sanjoy Das [Tue, 13 Feb 2018 05:56:19 +0000 (21:56 -0800)]
[XLA:CPU] Implement vectorized Log in LLVM IR

This was the last vectorized intrinsic for which we had to call into
C++ so also remove the associated machinery.

PiperOrigin-RevId: 185482962

6 years ago[TF:XLA] Implement ScatterNd.
Peter Hawkins [Tue, 13 Feb 2018 02:34:36 +0000 (18:34 -0800)]
[TF:XLA] Implement ScatterNd.

Add a helper method for performing scatter operations. Share it between ScatterNd and UnsortedSegmentSum implementations. In passing, add support for negative indices to the  UnsortedSegmentSum implementation.

Added helper methods for creating XLA while loops. Use the new helper in both Gather and Scatter ops.

PiperOrigin-RevId: 185469229

6 years agoFix TFLite examples/image_label
Yu-Cheng Ling [Tue, 13 Feb 2018 01:58:27 +0000 (17:58 -0800)]
Fix TFLite examples/image_label

PiperOrigin-RevId: 185465716

6 years agoEnable Model subclassing, both in eager-mode and symbolic-mode.
Francois Chollet [Tue, 13 Feb 2018 01:44:01 +0000 (17:44 -0800)]
Enable Model subclassing, both in eager-mode and symbolic-mode.

PiperOrigin-RevId: 185464334

6 years agoRollforward switch group identification with fixes.
Jacques Pienaar [Tue, 13 Feb 2018 01:15:51 +0000 (17:15 -0800)]
Rollforward switch group identification with fixes.

Fixed computing the switch depth: with the erroneous switch depth incorrect
clusters could be formed. Change the way the switch depth is determined (the
switch depth is now on the output side, so a switch always has a switch depth
one higher than all its inputs), add further checking during execution.

PiperOrigin-RevId: 185461054

6 years agoFix a typo in the comments.
A. Unique TensorFlower [Tue, 13 Feb 2018 01:07:27 +0000 (17:07 -0800)]
Fix a typo in the comments.

PiperOrigin-RevId: 185459972

6 years ago[XLA:GPU] Extend the CustomCall for cudnn convolutions to represent
Bixia Zheng [Tue, 13 Feb 2018 00:56:28 +0000 (16:56 -0800)]
[XLA:GPU] Extend the CustomCall for cudnn convolutions to represent
tensor_ops_enabled.

The convolution algorithms returned from the stream executor have a flag
for whether tensor_ops is enabled. This flag is used when running each
algorithm during auto-tunning. However, this flag is not currently represented
in the CustomCall representing the auto-tune result. As a result, the algorithm
may be run differently after auto-tune.

This change adds a constant to the CustomCall for cudnn convolution algorithm
selected by auto-tune, to represent whether tensor_ops is enabled during
auto-tune. This information is used by convolution thunk to ensure that the
algorithm is run with the same flag after auto-tune.

PiperOrigin-RevId: 185458497

6 years agoSupport None trainable variables that don't produce a gradient in replicate_model_fn.
Igor Saprykin [Tue, 13 Feb 2018 00:24:45 +0000 (16:24 -0800)]
Support None trainable variables that don't produce a gradient in replicate_model_fn.

This fixes #16829.

PiperOrigin-RevId: 185453911

6 years agoAutomated g4 rollback of changelist 185420228
Suharsh Sivakumar [Tue, 13 Feb 2018 00:20:07 +0000 (16:20 -0800)]
Automated g4 rollback of changelist 185420228

PiperOrigin-RevId: 185453293

6 years agoAvoid setting `ConfigProto.cluster_def` when `run_config.cluster_def` is not set.
Jianwei Xie [Mon, 12 Feb 2018 23:12:31 +0000 (15:12 -0800)]
Avoid setting `ConfigProto.cluster_def` when `run_config.cluster_def` is not set.

PiperOrigin-RevId: 185443115

6 years agoAdd an option to tf_gen_op_wrapper_py to make it able to run the genrule
Guangda Lai [Mon, 12 Feb 2018 22:52:47 +0000 (14:52 -0800)]
Add an option to tf_gen_op_wrapper_py to make it able to run the genrule
locally.

PiperOrigin-RevId: 185439892

6 years agoAdd a caveat that pixel value range might not be preserved by ResizeArea.
A. Unique TensorFlower [Mon, 12 Feb 2018 22:38:37 +0000 (14:38 -0800)]
Add a caveat that pixel value range might not be preserved by ResizeArea.

PiperOrigin-RevId: 185437687

6 years agoRename op name in comments to reflect renamed op names. NFC.
Jacques Pienaar [Mon, 12 Feb 2018 22:37:41 +0000 (14:37 -0800)]
Rename op name in comments to reflect renamed op names. NFC.

PiperOrigin-RevId: 185437550

6 years agoAdd tests for visible api arguments in quantize_graph.
Suharsh Sivakumar [Mon, 12 Feb 2018 22:05:08 +0000 (14:05 -0800)]
Add tests for visible api arguments in quantize_graph.

PiperOrigin-RevId: 185432142

6 years agoReturn false instead of crashing in Tensor::SharesBufferWith if neither tensor has...
A. Unique TensorFlower [Mon, 12 Feb 2018 22:01:51 +0000 (14:01 -0800)]
Return false instead of crashing in Tensor::SharesBufferWith if neither tensor has a buffer assigned yet, since that is a valid state. Returning

  buf_ != nullptr && b.buf_ != nullptr &&  buf_->root_buffer() == b.buf_->root_buffer();

still satisfies the contract in the header, i.e. "True iff the two tensors use the same underlying refcounted storage."

PiperOrigin-RevId: 185431574

6 years agoFilter out the fake XLA devices to avoid double counting the actual hardware
Benoit Steiner [Mon, 12 Feb 2018 21:37:37 +0000 (13:37 -0800)]
Filter out the fake XLA devices to avoid double counting the actual hardware
resources available on the machine

PiperOrigin-RevId: 185427665

6 years agoallow @{} links to break across lines.
Mark Daoust [Mon, 12 Feb 2018 21:26:35 +0000 (13:26 -0800)]
allow @{} links to break across lines.

PiperOrigin-RevId: 185426070

6 years agoExtend the memory optimizations to also support accumulate_n ops
Benoit Steiner [Mon, 12 Feb 2018 21:25:57 +0000 (13:25 -0800)]
Extend the memory optimizations to also support accumulate_n ops

PiperOrigin-RevId: 185425999

6 years agoRespect the cluster spec prop during TPU system auto query.
Jianwei Xie [Mon, 12 Feb 2018 21:11:17 +0000 (13:11 -0800)]
Respect the cluster spec prop during TPU system auto query.

PiperOrigin-RevId: 185423314

6 years agoScope and decorator to automatically add control dependencies.
Alexandre Passos [Mon, 12 Feb 2018 21:00:57 +0000 (13:00 -0800)]
Scope and decorator to automatically add control dependencies.

Should mimic the desired behavior of eager code.

For now supports only straight-line code and conditionals.

PiperOrigin-RevId: 185421760

6 years agoAlso add quantization step node to MODEL_VARIABLES collection.
Suharsh Sivakumar [Mon, 12 Feb 2018 20:50:07 +0000 (12:50 -0800)]
Also add quantization step node to MODEL_VARIABLES collection.

PiperOrigin-RevId: 185420228

6 years ago[TF:XLA] Bump open source llvm revision to r324889
Sanjoy Das [Mon, 12 Feb 2018 20:30:01 +0000 (12:30 -0800)]
[TF:XLA] Bump open source llvm revision to r324889

PiperOrigin-RevId: 185417275

6 years agoAdd missing feature in make_parse_example_spec documentation.
A. Unique TensorFlower [Mon, 12 Feb 2018 20:29:05 +0000 (12:29 -0800)]
Add missing feature in make_parse_example_spec documentation.

PiperOrigin-RevId: 185417163

6 years agoAdd yield_single_examples arg to Estimator.predict
A. Unique TensorFlower [Mon, 12 Feb 2018 20:23:16 +0000 (12:23 -0800)]
Add yield_single_examples arg to Estimator.predict

PiperOrigin-RevId: 185416396

6 years ago[Java]: Add link to samples in the tensorflow/models repository.
Asim Shankar [Mon, 12 Feb 2018 20:09:26 +0000 (12:09 -0800)]
[Java]: Add link to samples in the tensorflow/models repository.

PiperOrigin-RevId: 185414475

6 years agoEnable the use of scheduling heuristics to reduce peak memory usage by default
Benoit Steiner [Mon, 12 Feb 2018 20:05:49 +0000 (12:05 -0800)]
Enable the use of scheduling heuristics to reduce peak memory usage by default

PiperOrigin-RevId: 185413855

6 years agoSupport reduction with true keep_dims and squeeze along NHW dimensions.
Yao Zhang [Mon, 12 Feb 2018 19:54:07 +0000 (11:54 -0800)]
Support reduction with true keep_dims and squeeze along NHW dimensions.

PiperOrigin-RevId: 185411786

6 years agoAdding support for tf.reduce_sum with keep_dims=True.
A. Unique TensorFlower [Mon, 12 Feb 2018 19:49:54 +0000 (11:49 -0800)]
Adding support for tf.reduce_sum with keep_dims=True.

PiperOrigin-RevId: 185411141

6 years ago[XLA] An HLO pass that folds BF16 F32 conversions: if an HLO already supports BF16...
Yuanzhong Xu [Mon, 12 Feb 2018 19:26:22 +0000 (11:26 -0800)]
[XLA] An HLO pass that folds BF16 F32 conversions: if an HLO already supports BF16 input/output, conversions before/after it will be removed and the HLO's input/output types will be converted to BF16.

Also updates HloVerifier to allow mixed precision if requested. If an HLO has both both F32 and BF16 inputs, ShapeInference will use F32 as the output type.

PiperOrigin-RevId: 185407143

6 years agoMake variable_ops_test optonly
Sanjoy Das [Mon, 12 Feb 2018 19:12:04 +0000 (11:12 -0800)]
Make variable_ops_test optonly

variable_ops_test sometimes times out in fastbuild mode.  So mark it as optonly.

Running this test with `bazel test -c opt` passes all 1000 of 1000 reruns.
Running it with just `bazel test` fails 5 out of 300 reruns.

PiperOrigin-RevId: 185404726

6 years agoChange the column name in tutorials/wide.md from 'income' to 'income_bracket' to...
Neal Wu [Mon, 12 Feb 2018 18:47:26 +0000 (10:47 -0800)]
Change the column name in tutorials/wide.md from 'income' to 'income_bracket' to match the code

PiperOrigin-RevId: 185400490

6 years agoAdd support for scalars in `tf.contrib.all_reduce`.
A. Unique TensorFlower [Mon, 12 Feb 2018 18:34:20 +0000 (10:34 -0800)]
Add support for scalars in `tf.contrib.all_reduce`.

PiperOrigin-RevId: 185398372

6 years ago[TF:XLA] Add additional test case for tf.gather.
Peter Hawkins [Mon, 12 Feb 2018 18:34:18 +0000 (10:34 -0800)]
[TF:XLA] Add additional test case for tf.gather.

PiperOrigin-RevId: 185398368

6 years agoFix shape inference bug in tensorlist
Alexandre Passos [Mon, 12 Feb 2018 18:27:18 +0000 (10:27 -0800)]
Fix shape inference bug in tensorlist

PiperOrigin-RevId: 185397219

6 years agoUpdate `tf.contrib.data` API docstring.
Derek Murray [Mon, 12 Feb 2018 17:57:40 +0000 (09:57 -0800)]
Update `tf.contrib.data` API docstring.

PiperOrigin-RevId: 185392564

6 years agoParseNodeName fix.
Jacques Pienaar [Mon, 12 Feb 2018 17:28:47 +0000 (09:28 -0800)]
ParseNodeName fix.

ParseNodeName was skipping ops that started with an underscore, leading to warnings that input of an op was undefined and stopping grappler optimizations from being run on the graph.

PiperOrigin-RevId: 185388749

6 years agoInternal Change
A. Unique TensorFlower [Mon, 12 Feb 2018 16:38:17 +0000 (08:38 -0800)]
Internal Change

PiperOrigin-RevId: 185382594

6 years agoFor debugging purposes, it can be useful to know which ops are considered non-pure...
Brian Patton [Mon, 12 Feb 2018 14:40:26 +0000 (06:40 -0800)]
For debugging purposes, it can be useful to know which ops are considered non-pure / non-constant.

PiperOrigin-RevId: 185371882

6 years ago[XLA] Support generating tuple shaped fake data in client testing
A. Unique TensorFlower [Mon, 12 Feb 2018 13:34:05 +0000 (05:34 -0800)]
[XLA] Support generating tuple shaped fake data in client testing

The previous implementation failed over in case of a tuple shaped input
what broke the replay computation tool for the case where the input is a
tuple.

PiperOrigin-RevId: 185366228

6 years agoProvide more diagnostic shape information in output window error message.
Vijay Vasudevan [Mon, 12 Feb 2018 05:19:37 +0000 (21:19 -0800)]
Provide more diagnostic shape information in output window error message.

PiperOrigin-RevId: 185331713

6 years agoAutomated g4 rollback of changelist 185233116
Guangda Lai [Mon, 12 Feb 2018 02:09:11 +0000 (18:09 -0800)]
Automated g4 rollback of changelist 185233116

PiperOrigin-RevId: 185324160

6 years ago[TPUEstimator] Automatically detect the TPU system information, including topology...
Jianwei Xie [Sun, 11 Feb 2018 23:54:39 +0000 (15:54 -0800)]
[TPUEstimator] Automatically detect the TPU system information, including topology for model parallelism.

PiperOrigin-RevId: 185318852

6 years agoDisable flaky halton_sequence_test
A. Unique TensorFlower [Sun, 11 Feb 2018 11:44:24 +0000 (03:44 -0800)]
Disable flaky halton_sequence_test

PiperOrigin-RevId: 185294455

6 years agoAdd support for kConditional to the module group scheduler.
A. Unique TensorFlower [Sun, 11 Feb 2018 04:48:19 +0000 (20:48 -0800)]
Add support for kConditional to the module group scheduler.

PiperOrigin-RevId: 185279412

6 years agoGetting rid of unnecessary GPUDevice typedef.
A. Unique TensorFlower [Sat, 10 Feb 2018 20:45:12 +0000 (12:45 -0800)]
Getting rid of unnecessary GPUDevice typedef.
Passing DepthwiseArgs by reference in host code.

PiperOrigin-RevId: 185263307

6 years agoAdd python/util/is_in_graph_mode.py
A. Unique TensorFlower [Sat, 10 Feb 2018 19:22:55 +0000 (11:22 -0800)]
Add python/util/is_in_graph_mode.py

PiperOrigin-RevId: 185260675

6 years agoAutomated g4 rollback of changelist 185073515
A. Unique TensorFlower [Sat, 10 Feb 2018 11:47:15 +0000 (03:47 -0800)]
Automated g4 rollback of changelist 185073515

PiperOrigin-RevId: 185246348

6 years agoDo not convert layout for Select if condition input is of unknown shape.
Yao Zhang [Sat, 10 Feb 2018 09:45:11 +0000 (01:45 -0800)]
Do not convert layout for Select if condition input is of unknown shape.

PiperOrigin-RevId: 185242138

6 years agoFix grappler to use CudaGpuId instead of TfGpuId to query device states.
Guangda Lai [Sat, 10 Feb 2018 06:47:30 +0000 (22:47 -0800)]
Fix grappler to use CudaGpuId instead of TfGpuId to query device states.

PiperOrigin-RevId: 185233116

6 years agoAdd a test that exhaustively checks Log/Exp/Tanh
Sanjoy Das [Sat, 10 Feb 2018 01:30:03 +0000 (17:30 -0800)]
Add a test that exhaustively checks Log/Exp/Tanh

PiperOrigin-RevId: 185216684

6 years agoimport_graph_def: support "absolute" names with the C API enabled.
Skye Wanderman-Milne [Sat, 10 Feb 2018 01:14:30 +0000 (17:14 -0800)]
import_graph_def: support "absolute" names with the C API enabled.

Passing a name with a trailing '/' to import_graph_def causes that
name to be used as-is (i.e. it is not appended to the existing name
scope and not de-duped with any existing name scopes. This is in order
to re-use an existing name scope). This didn't work with the C API
enabled because it was set to always have the C API uniquify the
prefix.

The fix is to not uniquify the prefix, since calling name_scope in
import_graph_def already has the logic to uniquify the prefix if
necessary. I'm not sure why I thought we needed the C API to do this
to being with.

In addition, this changes the graph_constructor.cc logic to uniquify
names if the prefix cannot be guaranteed unique (see the new test case
in graph_constructor_test.cc for why/when this is necessary).

PiperOrigin-RevId: 185215326

6 years ago[XLA:Tool] Make Hlo parser report the location of the already defined instrucion...
A. Unique TensorFlower [Sat, 10 Feb 2018 00:57:14 +0000 (16:57 -0800)]
[XLA:Tool] Make Hlo parser report the location of the already defined instrucion/computation.

PiperOrigin-RevId: 185213461

6 years ago[XLA] Implement GeneralDot semantics in HloEvaluator.
Kay Zhu [Sat, 10 Feb 2018 00:39:48 +0000 (16:39 -0800)]
[XLA] Implement GeneralDot semantics in HloEvaluator.

Also:
- add a general matmul test, enable interpreter to run dot_operation_test.
- remove now redundant/obselete CHECKS for HandleDot in HloEvaluator.
- improve documentation for DotGeneral a bit.
PiperOrigin-RevId: 185211512

6 years agoUse x*x instead of x^2 to calculate square in huber loss implementation. The reason...
Yuefeng Zhou [Sat, 10 Feb 2018 00:14:00 +0000 (16:14 -0800)]
Use x*x instead of x^2 to calculate square in huber loss implementation. The reason is d(x^y)/dy = x^y * log(x) and when x is zero, it becomes NaN. Even if y is constant, the check op would still report failure.

PiperOrigin-RevId: 185208180

6 years agoDisable flaky spinn_test
Gunhan Gulsoy [Sat, 10 Feb 2018 00:10:34 +0000 (16:10 -0800)]
Disable flaky spinn_test

PiperOrigin-RevId: 185207742

6 years agoAdd pylint check for W0622 redefined-builtin in ci_sanity.sh and fix existing pylint...
Yifei Feng [Sat, 10 Feb 2018 00:02:24 +0000 (16:02 -0800)]
Add pylint check for W0622 redefined-builtin in ci_sanity.sh and fix existing pylint errors.

PiperOrigin-RevId: 185206494

6 years agoAdd delegate API to tflite.
Andrew Selle [Fri, 9 Feb 2018 23:45:00 +0000 (15:45 -0800)]
Add delegate API to tflite.

- Context gets GetNodes, num_nodes and PartitionNodesIntoSubgraphs.
- TfLiteDelegate provides one function that need be implemented
- Delegates choose nodes and those nodes are all compacted into
  a new macro kernel.

PiperOrigin-RevId: 185204338

6 years ago[XLA] Use a real priority queue in list scheduling
A. Unique TensorFlower [Fri, 9 Feb 2018 23:26:13 +0000 (15:26 -0800)]
[XLA] Use a real priority queue in list scheduling

PiperOrigin-RevId: 185201882

6 years agoRecursively creating directories in CreateSummaryFileWriter
Alexandre Passos [Fri, 9 Feb 2018 23:08:24 +0000 (15:08 -0800)]
Recursively creating directories in CreateSummaryFileWriter

PiperOrigin-RevId: 185199219

6 years ago[tf.data] Remove deprecated `tf.contrib.data.Dataset` class.
Derek Murray [Fri, 9 Feb 2018 22:52:24 +0000 (14:52 -0800)]
[tf.data] Remove deprecated `tf.contrib.data.Dataset` class.

This change removes the following class:
* `tf.contrib.data.Dataset`.

IF THIS BREAKS YOU: Replace `tf.contrib.data.Dataset` with `tf.data.Dataset`
when constructing a dataset. Note that you may have to modify downstream
transformations to use the core API. See "tensorflow/contrib/data/README.md" for
details of how to update your code to use the core API.

PiperOrigin-RevId: 185197005

6 years agoUse TFLite CocoaPod in iOS Simple Demo app
Yu-Cheng Ling [Fri, 9 Feb 2018 22:52:15 +0000 (14:52 -0800)]
Use TFLite CocoaPod in iOS Simple Demo app

PiperOrigin-RevId: 185196984

6 years agoRemove header dependence on cuda_config.h to fix opensource custom op support.
Gunhan Gulsoy [Fri, 9 Feb 2018 22:37:24 +0000 (14:37 -0800)]
Remove header dependence on cuda_config.h to fix opensource custom op support.
Fixes #14454
Fixes #12860

PiperOrigin-RevId: 185194924

6 years agoFix read_variable_op GPU test
Akshay Modi [Fri, 9 Feb 2018 22:36:17 +0000 (14:36 -0800)]
Fix read_variable_op GPU test

PiperOrigin-RevId: 185194768

6 years agoEnabled XLA for TF C API.
Mingsheng Hong [Fri, 9 Feb 2018 22:27:03 +0000 (14:27 -0800)]
Enabled XLA for TF C API.

Summary of changes:

1. Set MarkForCompilationPassFlags::tf_xla_cpu_global_jit default to true in
C_API unit test env when XLA-execute is intended. Together with setting session
config config.graph_options.optimizer_options.global_jit_level to > 0, this
turns on XLA for the entire graph (eligible nodes only, with _Arg and _RetVal
nodes excluded).

We decided against defaulting MarkForCompilationPassFlags::tf_xla_cpu_global_jit
to true, due to performance concerns with the single-threaded nature of the XLA
CPU backend (see
https://www.tensorflow.org/performance/xla/jit#turning_on_jit_compilation).

2. In FindCompilationCandidates() during MarkForCompilationPass, skip compiling
any '_Arg'-typed nodes. This is necessary to avoid hitting a "Invalid argument
number" error during MarkForCompilationPass.

3. Extended C API based build rules to link in XLA libraries, and added unit
test "CAPI.Session_Min_XLA_CPU".

Also added some misc improvements and debugging aids.

PiperOrigin-RevId: 185193314

6 years agoMake import_graph_def add default attr values with the C API enabled.
Skye Wanderman-Milne [Fri, 9 Feb 2018 22:25:28 +0000 (14:25 -0800)]
Make import_graph_def add default attr values with the C API enabled.

It turns out that the original Python code modifies the graph_def argument
to add default attr values. I'm not sure if the behavior is covered by
our API guarantees since it's not documented, but let's keep the behavior
consistent for now.

PiperOrigin-RevId: 185193037

6 years agoTEST: test of kernel_results added to hmc_test.py
Ian Langmore [Fri, 9 Feb 2018 22:17:47 +0000 (14:17 -0800)]
TEST:  test of kernel_results added to hmc_test.py
PiperOrigin-RevId: 185191871

6 years agoRemoves const qualifier from ListWorkers
Noah Eisen [Fri, 9 Feb 2018 22:07:40 +0000 (14:07 -0800)]
Removes const qualifier from ListWorkers

PiperOrigin-RevId: 185190346

6 years agoUpdate llvm revision to r324720. This is needed because r324700 introduces an Orc...
A. Unique TensorFlower [Fri, 9 Feb 2018 21:30:40 +0000 (13:30 -0800)]
Update llvm revision to r324720. This is needed because r324700 introduces an Orc API change.

PiperOrigin-RevId: 185185088

6 years agoFixes issue with tfe.make_template when function objects don't have names
Alexandre Passos [Fri, 9 Feb 2018 21:07:00 +0000 (13:07 -0800)]
Fixes issue with tfe.make_template when function objects don't have names

PiperOrigin-RevId: 185181846

6 years agoSplit gpu_id.h and GpuIdManager out from build target //tensorflow/core:gpu_runtime...
Guangda Lai [Fri, 9 Feb 2018 20:20:38 +0000 (12:20 -0800)]
Split gpu_id.h and GpuIdManager out from build target //tensorflow/core:gpu_runtime, to reduce the size of dependencies, so when other lightweight libraries like grappler utils needs the TfToCudaGpuId translation function it doesn't need to depend on things like stream executor and cuda libraries.

PiperOrigin-RevId: 185175757

6 years ago[XLA] Add a test for reduce window with large minor dimension.
A. Unique TensorFlower [Fri, 9 Feb 2018 20:19:29 +0000 (12:19 -0800)]
[XLA] Add a test for reduce window with large minor dimension.

PiperOrigin-RevId: 185175593

6 years agoAdd dynamic_rnn support for CloudTPU Magenta RNN
A. Unique TensorFlower [Fri, 9 Feb 2018 19:33:00 +0000 (11:33 -0800)]
Add dynamic_rnn support for CloudTPU Magenta RNN

PiperOrigin-RevId: 185169370

6 years agoSimplify and extend the management of input-conditional losses and updates.
Francois Chollet [Fri, 9 Feb 2018 19:28:21 +0000 (11:28 -0800)]
Simplify and extend the management of input-conditional losses and updates.

Instead of keeping track of dependencies manually, we rely on the TF graph structure to find dependencies. The resulting implementation is cleaner and more robust.

This does not change any existing behavior. It extends the current behavior by allowing `get_updates_for(inputs)` and `get_losses_for(inputs)` to be called from *any* tensors upstream of the layer, not just the immediate layer's inputs.

PiperOrigin-RevId: 185168680

6 years agoFix lint warnings. NFC
Jacques Pienaar [Fri, 9 Feb 2018 19:17:51 +0000 (11:17 -0800)]
Fix lint warnings. NFC

PiperOrigin-RevId: 185167035

6 years agoAdd export calls for protos.
Anna R [Fri, 9 Feb 2018 19:16:01 +0000 (11:16 -0800)]
Add export calls for protos.

PiperOrigin-RevId: 185166764

6 years agoRemove the unneeded "tf" argument for utility functions.
A. Unique TensorFlower [Fri, 9 Feb 2018 19:14:03 +0000 (11:14 -0800)]
Remove the unneeded "tf" argument for utility functions.

PiperOrigin-RevId: 185166507

6 years agoFix some doc strings that were accidentally removed.
Suharsh Sivakumar [Fri, 9 Feb 2018 19:01:07 +0000 (11:01 -0800)]
Fix some doc strings that were accidentally removed.

PiperOrigin-RevId: 185164375

6 years ago regression_head accepts link_fn as parameter, so the use can use self defined link fn
A. Unique TensorFlower [Fri, 9 Feb 2018 18:45:56 +0000 (10:45 -0800)]
  regression_head accepts link_fn as parameter, so the use can use self defined link fn

PiperOrigin-RevId: 185161896

6 years agoTFTS: Better handling of exogenous features
Allen Lavoie [Fri, 9 Feb 2018 18:13:05 +0000 (10:13 -0800)]
TFTS: Better handling of exogenous features

Adds (dummy) exogenous features to the LSTM model-building example, and adds some small methods needed to support that (fetching the shape of embedded exogenous features).

Also makes it more automatic to export a SavedModel with exogenous features (placeholder shapes will be inferred from the given FeatureColumns), which makes the LSTM example friendlier.

PiperOrigin-RevId: 185157085

6 years agoTFTS: Add exporting to SavedModel to the LSTM example
Allen Lavoie [Fri, 9 Feb 2018 17:25:10 +0000 (09:25 -0800)]
TFTS: Add exporting to SavedModel to the LSTM example

Was previously not using a state manager, which among other issues prevented
exporting.

Fixes #16590.

PiperOrigin-RevId: 185150900