A. Unique TensorFlower [Mon, 29 Jan 2018 15:27:48 +0000 (07:27 -0800)]
Remove unused class members
PiperOrigin-RevId:
183662473
Shanqing Cai [Mon, 29 Jan 2018 15:11:29 +0000 (07:11 -0800)]
tfdbg: add tensorboard debugger plugin option to three existing examples
PiperOrigin-RevId:
183661140
Justin Lebar [Sun, 28 Jan 2018 19:21:58 +0000 (11:21 -0800)]
[XLA] Set layout of GTE instructions inside fusion nodes.
Other than the root and parameters of a fusion computation, most other
instructions in a fusion computation don't have a layout. GTEs are an
exception; they should inherit their layout from their operand, which
must be another GTE or a parameter.
Previously LayoutAssignment left GTEs alone, assuming they came in with
the right layout. But this isn't correct, and in fact LayoutAssignment
cleared the layouts of every non-fused instruction before assigning them
for exactly this reason. If we'd done the same to fused instructions,
it would have caught this bug, so we make that change here as well. (We
simplify this loop by removing the check for kOutfeed -- outfeeds do not
produce a result, so there's no shape to keep.)
PiperOrigin-RevId:
183595627
Justin Lebar [Sun, 28 Jan 2018 18:49:33 +0000 (10:49 -0800)]
[XLA] Show layouts of tuple-shaped instructions (other than kTuple) in graphs.
For example the batch-norm ops return a tuple, and those values' layouts
are significant. We still hide the layout on tuples, since this can be
noisy.
PiperOrigin-RevId:
183594622
Justin Lebar [Sun, 28 Jan 2018 18:12:55 +0000 (10:12 -0800)]
[XLA] Reset ShapeVisitor's state between runs of the verifier.
We create the ShapeVisitor once per pass pipeline. Without this change,
after our ShapeVisitor has checked an instruction, it will never again
check that instruction *or any of its transitive inputs*. Yikes.
PiperOrigin-RevId:
183593437
A. Unique TensorFlower [Sun, 28 Jan 2018 03:59:13 +0000 (19:59 -0800)]
Fix use of uninitialied value.
PiperOrigin-RevId:
183558128
Zhixian Yan [Sun, 28 Jan 2018 01:38:59 +0000 (17:38 -0800)]
Internal Change
PiperOrigin-RevId:
183551521
A. Unique TensorFlower [Sat, 27 Jan 2018 13:12:06 +0000 (05:12 -0800)]
Remove unused BUILD dependencies
PiperOrigin-RevId:
183514731
Martin Wicke [Sat, 27 Jan 2018 07:35:51 +0000 (23:35 -0800)]
Adds a deprecated_alias utility function with which to deprecate unmodified aliases.
PiperOrigin-RevId:
183495796
Justin Lebar [Sat, 27 Jan 2018 06:57:08 +0000 (22:57 -0800)]
[XLA] Make DeviceMemoryAllocator::platform() a const pointer.
PiperOrigin-RevId:
183493603
A. Unique TensorFlower [Sat, 27 Jan 2018 06:19:43 +0000 (22:19 -0800)]
[TF:XLA] Update stale comments to match function names.
PiperOrigin-RevId:
183491729
A. Unique TensorFlower [Sat, 27 Jan 2018 04:51:06 +0000 (20:51 -0800)]
Fix build: add std:: to max() in tensorflow/contrib/tpu/profiler/capture_tpu_profile.cc.
PiperOrigin-RevId:
183486778
A. Unique TensorFlower [Sat, 27 Jan 2018 02:59:15 +0000 (18:59 -0800)]
Internal change.
PiperOrigin-RevId:
183479688
A. Unique TensorFlower [Sat, 27 Jan 2018 02:00:08 +0000 (18:00 -0800)]
Add a feature to automatically recapture the traces when no trace event is collected.
PiperOrigin-RevId:
183474367
A. Unique TensorFlower [Sat, 27 Jan 2018 01:57:49 +0000 (17:57 -0800)]
Remove protobuf patch that was installed to resolve #8394. It appears to not be necessary any longer.
PiperOrigin-RevId:
183474194
Mark Heffernan [Sat, 27 Jan 2018 01:50:03 +0000 (17:50 -0800)]
Create different data for each Literal when creating fake data.
Thread a generator through the functions for creating fake arguments so the same
generator can be reused which avoids repeating the same data patterns for each
argument generated.
Also tweak the position-dependent biasing heuristic to create both positive and
negative numbers for small literals.
PiperOrigin-RevId:
183473588
A. Unique TensorFlower [Sat, 27 Jan 2018 01:38:06 +0000 (17:38 -0800)]
Fixed bug: inconsistency with how damping normalization was applied to ConvDiagonalFB blocks.
PiperOrigin-RevId:
183472440
A. Unique TensorFlower [Sat, 27 Jan 2018 01:18:16 +0000 (17:18 -0800)]
Raise to 4 the shard counts of //third_party/tensorflow/contrib/{factorization:kmeans_test,linear_optimizer:sdca_estimator_test}
These tests were getting flaky timeouts when run under asan, sometimes taking
longer than the 5 minute timeout. Increasing the shard count to 4 seems to be
sufficient to cause them not to time out.
PiperOrigin-RevId:
183470183
Justin Lebar [Sat, 27 Jan 2018 01:12:23 +0000 (17:12 -0800)]
[XLA] Add a DeviceAllocator* argument to compilation.
In a later change, the GPU backend will use this allocator to reserve
scratch memory when trying out different convolution algorithms during
compilation.
PiperOrigin-RevId:
183469579
Mark Heffernan [Sat, 27 Jan 2018 00:58:00 +0000 (16:58 -0800)]
Add reduce-precision to evaluator and add implicit broadcast remover pass.
The reduce precision support is cribbed from the CPU/GPU LLVM-emitted
implementation. The implicit broadcast pass removes any implicit broadcasts in
the module replacing them with the equivalent explicit broadcast and reshape
instructions.
PiperOrigin-RevId:
183467648
Yifei Feng [Sat, 27 Jan 2018 00:53:59 +0000 (16:53 -0800)]
Add C0301 line-too-long error to pylint sanity check.
PiperOrigin-RevId:
183467186
Shivani Agrawal [Sat, 27 Jan 2018 00:51:25 +0000 (16:51 -0800)]
[tf.data] Support for initializing all the tables of the given graph.
PiperOrigin-RevId:
183466905
A. Unique TensorFlower [Sat, 27 Jan 2018 00:36:55 +0000 (16:36 -0800)]
Add bidirectional sequence RNN to TFLite Ops.
PiperOrigin-RevId:
183465032
A. Unique TensorFlower [Sat, 27 Jan 2018 00:23:40 +0000 (16:23 -0800)]
[XLA] Don't print "{no layout}" if there is no layout.
PiperOrigin-RevId:
183463264
Justin Lebar [Fri, 26 Jan 2018 23:54:38 +0000 (15:54 -0800)]
[XLA] (Re-land) Add HLO matcher for CustomCall that accepts a call target.
Now with less build breakage!
PiperOrigin-RevId:
183458987
Nick Desaulniers [Fri, 26 Jan 2018 23:01:40 +0000 (15:01 -0800)]
[XLA] optimize NearComparator#ExpectLiteralsNear()
While tracking down the issue of timeouts when running THE ISOLATOR, it was
observed that NearComparator#ExpectLiteralsNear() could be optimized in the
case of matching layouts to not compute multi indexes.
In the process of tracking down timeouts in THE ISOLATOR, I had assumed that
time spent was dominated by either generating input data, executing the input
data on various backends, or comparing the data. Never assume you know where
the time is spent in a program; the profiler may surprise you.
After making that optimization and then profiling the code before and after, I
was surprised by the profile. Image the shock, horror, and disgust I
experienced when discovering that runs of THE ISOLATOR were dominated (45%) by
calls to Literal#ToString() in NearComparator#ExpectLiteralsNear() for huge
(>120 million elements) literals that failed comparisons. No wonder passing
shards of THE ISOLATOR were fast, and failing shards were slow.
Further, computing multi indexes many times is expensive enough (18%) to show
up in profiles, so avoid calculating it until it is necessary.
The optimizations in this patch:
* Don't call Literal#ToString() on huge literals that are going to get written
to disk anyways. The utility of printing said literal to stdout is suspect.
* Initialize NearComparator#miscompares_ to false, only update miscompares_ and
other stats when miscompare occurs.
* Split NearComparator#ExpectLiteralsNear() into two, since we only need to log
and update stats if an actual miscompare occurs.
* Add fast path in NearComparator#ExpectLiteralsNear() for case of matching
layouts, being careful not to compute multi index unless mismatch actually
occurs.
This optimized NearComparator#ExpectLiteralsNear() for the case of many element
literals, with few miscompares. For many miscompares, we cannot avoid
calculating multi indexes, but can fast path for equal layouts. For zero
miscompares, we can at least fast path in the case of matching layouts.
Before this CL, a run of THE ISOLATOR for a single literal with >120 million
elements and a few miscompares took 379s (6.3m). With this CL, the same test
case now takes 44s.
Beautiful flame graphs omitted from public commit message, regrettably.
PiperOrigin-RevId:
183451138
A. Unique TensorFlower [Fri, 26 Jan 2018 22:57:03 +0000 (14:57 -0800)]
Remove dead code
PiperOrigin-RevId:
183450369
A. Unique TensorFlower [Fri, 26 Jan 2018 22:54:42 +0000 (14:54 -0800)]
Raise shard count to 10 for tensorflow/python/kernel_tests:metrics_test
The test was sometimes taking over six minutes to run in asan mode,
causing it to hit the 5 minute timeout. Setting the shard count
to 6 was inufficient, but setting it to 10 brought the runtime
down to about 3:30 in the worst case over 100 runs.
PiperOrigin-RevId:
183449941
Martin Wicke [Fri, 26 Jan 2018 22:46:01 +0000 (14:46 -0800)]
Add a security document discussing high level best practices and explain vulnerability reporting process.
PiperOrigin-RevId:
183448435
Alexandre Passos [Fri, 26 Jan 2018 22:35:04 +0000 (14:35 -0800)]
Improvements to eager linear regression benchmark:
1. Using _shape_tuple
2. Bypassing * over math_ops.mul etc
3. Flatmaps in the tape code
4. Cache for ones similar to for zeros
5. Fast path for _SubGrad
6. Fast global_step += 1 for resource variables
7. Bypassing deprecated args decorator in eager mode
PiperOrigin-RevId:
183446593
Alexandre Passos [Fri, 26 Jan 2018 22:32:45 +0000 (14:32 -0800)]
tfe.metrics.{Mean,Accuracy} return their inputs.
This makes chaining them easier. Control dependencies to ensure updates
happen are implicitly added by the function code.
PiperOrigin-RevId:
183446211
A. Unique TensorFlower [Fri, 26 Jan 2018 22:16:19 +0000 (14:16 -0800)]
To add __init__.py to some paths that are imported by other modules.
PiperOrigin-RevId:
183443656
A. Unique TensorFlower [Fri, 26 Jan 2018 22:14:30 +0000 (14:14 -0800)]
Delete mkl_tfconv_op.cc which seem to be a duplicate of mkl_tfconv_op.h, and did not exist in the external github TF repository.
PiperOrigin-RevId:
183443347
Benoit Steiner [Fri, 26 Jan 2018 22:02:33 +0000 (14:02 -0800)]
Add op level memory usage estimation to the op_level_cost_estimator
PiperOrigin-RevId:
183441321
Adam Roberts [Fri, 26 Jan 2018 21:43:47 +0000 (13:43 -0800)]
Automated g4 rollback of changelist
183321394
PiperOrigin-RevId:
183438398
Benoit Steiner [Fri, 26 Jan 2018 21:23:02 +0000 (13:23 -0800)]
Improved heuristics for swapping
PiperOrigin-RevId:
183435438
A. Unique TensorFlower [Fri, 26 Jan 2018 21:20:42 +0000 (13:20 -0800)]
Add more tests to validate the bucket boundaries for
inputs with equal distributions.
PiperOrigin-RevId:
183435084
A. Unique TensorFlower [Fri, 26 Jan 2018 20:52:54 +0000 (12:52 -0800)]
Make the graph generation of TFBT deterministic.
PiperOrigin-RevId:
183431139
A. Unique TensorFlower [Fri, 26 Jan 2018 20:41:27 +0000 (12:41 -0800)]
Cleanup: Ran clang-format on all *.{h,cc} files in tensorflow/core/framework.
PiperOrigin-RevId:
183429540
A. Unique TensorFlower [Fri, 26 Jan 2018 20:40:01 +0000 (12:40 -0800)]
Cleanup: Ran clang-format on all *.{cc,h} in tensorflow/core/ops.
PiperOrigin-RevId:
183429339
A. Unique TensorFlower [Fri, 26 Jan 2018 20:12:26 +0000 (12:12 -0800)]
Fix the documentation for the dense layer for how rank > 2 inputs are handled.
PiperOrigin-RevId:
183425868
A. Unique TensorFlower [Fri, 26 Jan 2018 19:59:56 +0000 (11:59 -0800)]
Cleanup: Ran clang-format on all *.{cc,h} files in tensorflow/core/kernels.
PiperOrigin-RevId:
183423961
Skye Wanderman-Milne [Fri, 26 Jan 2018 19:51:03 +0000 (11:51 -0800)]
Make softmax_op_test.py work with C API enabled.
PiperOrigin-RevId:
183422829
Skye Wanderman-Milne [Fri, 26 Jan 2018 19:46:44 +0000 (11:46 -0800)]
Fix bug with Operation._control_inputs setter.
PiperOrigin-RevId:
183422192
Gunhan Gulsoy [Fri, 26 Jan 2018 19:46:21 +0000 (11:46 -0800)]
Fix py3 build rules for all py tests under py2tf.
PiperOrigin-RevId:
183422144
Chris Leary [Fri, 26 Jan 2018 19:32:38 +0000 (11:32 -0800)]
[XLA] Improve error message for bad slices.
PiperOrigin-RevId:
183420038
Rohan Jain [Fri, 26 Jan 2018 19:23:02 +0000 (11:23 -0800)]
Performance improvements to some GPU code to use shared locks instead of unique locks for some hotspot cases.
PiperOrigin-RevId:
183418559
Suharsh Sivakumar [Fri, 26 Jan 2018 19:04:47 +0000 (11:04 -0800)]
Add available choices to toco flags and fix minor formatting issues.
PiperOrigin-RevId:
183415713
A. Unique TensorFlower [Fri, 26 Jan 2018 19:00:37 +0000 (11:00 -0800)]
Increase shard count of //third_party/tensorflow/python:nn_batchnorm_test to avoid timeouts
When run under asan, the test runs for about 5 minutes, and sometimes
longer, causing frequent timeouts.
This change increases the shard count of the test to 4, which brings the run time
of the longest running shard under asan to about 2 minutes.
PiperOrigin-RevId:
183414888
A. Unique TensorFlower [Fri, 26 Jan 2018 18:11:09 +0000 (10:11 -0800)]
Cleanup: Ran clang-format on all *.{cc,h} in under grappler.
PiperOrigin-RevId:
183406440
Derek Murray [Fri, 26 Jan 2018 18:09:52 +0000 (10:09 -0800)]
[tf.data] Move slow-path-related code into the slow path in IteratorHandleOp::Compute().
This slightly reduces the amount of work performed when an iterator is accessed (after the first access), and potentially reduces contention if concurrent steps are accessing the same iterator.
PiperOrigin-RevId:
183406221
A. Unique TensorFlower [Fri, 26 Jan 2018 17:47:58 +0000 (09:47 -0800)]
Updating sparsify_gather.
PiperOrigin-RevId:
183402917
A. Unique TensorFlower [Fri, 26 Jan 2018 17:03:49 +0000 (09:03 -0800)]
Kernel utils to support broadcast add and mul.
PiperOrigin-RevId:
183397494
Joshua V. Dillon [Fri, 26 Jan 2018 16:57:10 +0000 (08:57 -0800)]
Change `reduce_logsumexp` to internally use `reshape` rather than `squeeze`
since the latter requires the `axis` arg to be a Python `list`.
PiperOrigin-RevId:
183396533
A. Unique TensorFlower [Fri, 26 Jan 2018 13:15:18 +0000 (05:15 -0800)]
Roll CL
179861781 forward with fix: Wrappers for CUDA 9 warp-synchronous intrinsics.
PiperOrigin-RevId:
183374082
A. Unique TensorFlower [Fri, 26 Jan 2018 13:14:47 +0000 (05:14 -0800)]
Remove dead code
PiperOrigin-RevId:
183374040
A. Unique TensorFlower [Fri, 26 Jan 2018 11:50:58 +0000 (03:50 -0800)]
Fix override annotations
PiperOrigin-RevId:
183367326
A. Unique TensorFlower [Fri, 26 Jan 2018 09:17:13 +0000 (01:17 -0800)]
Fix checkpoint_utils.init_from_checkpoint() to be deterministic.
PiperOrigin-RevId:
183354193
Guangda Lai [Fri, 26 Jan 2018 07:59:19 +0000 (23:59 -0800)]
Set up TensorRT configurations for external use, and add a test.
PiperOrigin-RevId:
183347199
Tayo Oguntebi [Fri, 26 Jan 2018 07:37:20 +0000 (23:37 -0800)]
Adds R1 test for ReduceWindow.
PiperOrigin-RevId:
183345779
A. Unique TensorFlower [Fri, 26 Jan 2018 06:45:59 +0000 (22:45 -0800)]
Go: Update generated wrapper functions for TensorFlow ops.
PiperOrigin-RevId:
183342483
Gunhan Gulsoy [Fri, 26 Jan 2018 06:32:15 +0000 (22:32 -0800)]
For windows cmake build turn on CMAKE_SUPPRESS_REGENERATION to avoid flaky
build failures.
PiperOrigin-RevId:
183341561
A. Unique TensorFlower [Fri, 26 Jan 2018 05:57:50 +0000 (21:57 -0800)]
Clarified documentation on resize_images.align_corners parameter.
PiperOrigin-RevId:
183339087
Max Galkin [Fri, 26 Jan 2018 04:27:11 +0000 (20:27 -0800)]
Log more info about the ill-formed node in ComputeTransitiveFanin.
PiperOrigin-RevId:
183333452
A. Unique TensorFlower [Fri, 26 Jan 2018 04:26:35 +0000 (20:26 -0800)]
internal change
PiperOrigin-RevId:
183333411
Chris Leary [Fri, 26 Jan 2018 03:50:17 +0000 (19:50 -0800)]
[XLA] Add source mapping utility translation unit, use it in the local client.
PiperOrigin-RevId:
183331075
A. Unique TensorFlower [Fri, 26 Jan 2018 03:10:13 +0000 (19:10 -0800)]
[tpu:profiler] Add infeed enqueue operation data to tf_op_stats.proto.
PiperOrigin-RevId:
183328456
Francois Chollet [Fri, 26 Jan 2018 03:05:28 +0000 (19:05 -0800)]
Update tf.keras to the Keras 2.1.3 API.
PiperOrigin-RevId:
183328052
A. Unique TensorFlower [Fri, 26 Jan 2018 02:46:51 +0000 (18:46 -0800)]
Set size of test //third_party/tensorflow/python/data/kernel_tests:dataset_from_generator_op_test to medium
It sometimes takes longer than a minute, and thus gets flaky timeouts.
PiperOrigin-RevId:
183326334
A. Unique TensorFlower [Fri, 26 Jan 2018 02:42:44 +0000 (18:42 -0800)]
Allow passing dummy/custom minmax information on a per-array basis,
unlike the existing --default_ranges_{min,max} flags which only allowed
to set a single global value for all arrays.
This takes the form of a new embedded message in ModelFlags, which is
its own message so that it can be serialized separately. The command-line
interface is --arrays_extra_info_file=some_proto.pbtxt, i.e. we don't
try to make a command-line-flags-only interface, we mandate putting the info
in a file. The rationale is that users may want to specify custom minmax
for hundreds of arrays, so it would be cumbersome to have that all in a
command line.
This should be considered an experimental feature, in the sense that
in properly quantized models, minmax information is already embedded
in the graph (e.g. in FakeQuant nodes). This is an extension of the
existing --default_ranges_{min,max} feature which had turned out to be
too restrictive for many users.
PiperOrigin-RevId:
183326000
Adam Roberts [Fri, 26 Jan 2018 01:58:48 +0000 (17:58 -0800)]
Add input_shape to seq2seq helpers.
PiperOrigin-RevId:
183321394
Akshay Agrawal [Fri, 26 Jan 2018 01:50:40 +0000 (17:50 -0800)]
Replace instances of `control_dependencies(None)` with `init_scope` when
initializing variables.
Today, when variables are constructed (Resource and otherwise), we lift certain
operations, including the VarHandleOp and initialization ops, out of all
control flow contexts; the mechanism for doing so is entering the context
manager returned by `control_dependencies(None)`. This change replaces various
instances of this mechanism with `init_scope`, which clears control dependencies, lifts ops out of function-building graphs, and pauses the gradient tape. As a result,
variables that are created inside graph functions will be automatically hoisted
into an outer context.
PiperOrigin-RevId:
183320576
A. Unique TensorFlower [Fri, 26 Jan 2018 01:32:12 +0000 (17:32 -0800)]
Move flatbuffer verifier to a separate lib
PiperOrigin-RevId:
183318384
Yao Zhang [Fri, 26 Jan 2018 01:27:42 +0000 (17:27 -0800)]
Add an option to input a GraphDef.
PiperOrigin-RevId:
183317862
Skye Wanderman-Milne [Fri, 26 Jan 2018 01:20:07 +0000 (17:20 -0800)]
Make kernel_tests/scalar_test.py work with the C API enabled.
This also moves the set_producer_version function from a specific test
file to test_util.py, since it's needed in two test files now.
PiperOrigin-RevId:
183316990
A. Unique TensorFlower [Fri, 26 Jan 2018 01:08:50 +0000 (17:08 -0800)]
[XLA] Disable half_test_cpu as it is flaky
PiperOrigin-RevId:
183315762
Yuefeng Zhou [Fri, 26 Jan 2018 00:50:24 +0000 (16:50 -0800)]
Record requested cpu cores in OpPerformance.
PiperOrigin-RevId:
183313321
Justin Lebar [Fri, 26 Jan 2018 00:45:52 +0000 (16:45 -0800)]
Automated g4 rollback of changelist
183296506
PiperOrigin-RevId:
183312680
Benoit Steiner [Fri, 26 Jan 2018 00:45:04 +0000 (16:45 -0800)]
Deleted unused data fields
PiperOrigin-RevId:
183312596
Skye Wanderman-Milne [Fri, 26 Jan 2018 00:15:50 +0000 (16:15 -0800)]
Make batch_sequences_with_states_test.py work with C API enabled, take 2.
This fixes the original rollback by using placeholders for the
SparseTensor shapes. The flakiness was caused by the nondeterministic
ordering of the sequences dict.
PiperOrigin-RevId:
183308774
Max Galkin [Fri, 26 Jan 2018 00:08:13 +0000 (16:08 -0800)]
Show friendlier error message on failure in tf_optimizer.i
Without it we trigger a segmentation fault, but later in a different stack, which is not so helpful.
PiperOrigin-RevId:
183307729
Yuefeng Zhou [Thu, 25 Jan 2018 23:59:12 +0000 (15:59 -0800)]
In the TF cost model, ensure when id grows, records for each op's outputs match the number of outputs.
PiperOrigin-RevId:
183306267
A. Unique TensorFlower [Thu, 25 Jan 2018 23:25:58 +0000 (15:25 -0800)]
Adds loss_fn argument in remaining heads.
PiperOrigin-RevId:
183301479
A. Unique TensorFlower [Thu, 25 Jan 2018 23:01:30 +0000 (15:01 -0800)]
[XLA:GPU] Implement conditional as a sequence of thunks in the GPU backend.
This also includes the following fixes:
(1) Update buffer assignment for conditionals so that the buffers corresponding to the true operand and the true computation parameter are colocated, and similarly, the buffers corresponding to the false operand and the false computation parameter are colocated.
(2) Update GPU copy insertion pass to insert copies when constants appear as operands of conditional instructions.
PiperOrigin-RevId:
183297282
Justin Lebar [Thu, 25 Jan 2018 22:56:38 +0000 (14:56 -0800)]
[XLA] Add HLO matcher for CustomCall that accepts a call target.
PiperOrigin-RevId:
183296506
Peter Hawkins [Thu, 25 Jan 2018 22:53:37 +0000 (14:53 -0800)]
Whitelist "bool" as a valid TPU infeed type.
PiperOrigin-RevId:
183296017
A. Unique TensorFlower [Thu, 25 Jan 2018 22:42:03 +0000 (14:42 -0800)]
Drop the manually_create field from RnnState.
Initially, I thought that the shape of RNN state arrays could always be
determined by shape propagation. Then I came across some graphs where this
wasn't so easy to infer, so I introduced manually_create thinking of it
as a hack. Today I took another look at dropping that hack, and had a
"D'oh" moment when I realized that the cyclic nature of RNN graphs makes
it impossible to infer the shapes of all arrays by usual propagation.
For example, in a LSTM cell, the input array is concatenated with
a state array, so if we don't already know the shape of that state array,
shape propagation stops there.
Thus, this change removes manually_create by making toco always behave as
if manually_create=true, i.e. early-creating all RNN state arrays with
the shape explicitly specified by the user. The next TODO item here
(see model_flags.proto) is to introduce a generic 'shape' field, so far
the current 'size' field only allows specifying 1-D shapes.
PiperOrigin-RevId:
183294102
Jonathan Hseu [Thu, 25 Jan 2018 22:39:44 +0000 (14:39 -0800)]
Use LookupOrCreateResource when creating summary writers. The resource may
already exist because it's associated with the device.
PiperOrigin-RevId:
183293761
A. Unique TensorFlower [Thu, 25 Jan 2018 22:38:57 +0000 (14:38 -0800)]
Add OPENSOURCE extension to schema_generated.h
PiperOrigin-RevId:
183293637
Yunxing Dai [Thu, 25 Jan 2018 22:30:15 +0000 (14:30 -0800)]
Make select_and_scatter_test optonly
- Make select_and_scatter_test optonly.
- Reduce number of shards.
PiperOrigin-RevId:
183292230
Eugene Brevdo [Thu, 25 Jan 2018 22:28:41 +0000 (14:28 -0800)]
Automated g4 rollback of changelist
183273334
PiperOrigin-RevId:
183291956
Alexandre Passos [Thu, 25 Jan 2018 22:18:45 +0000 (14:18 -0800)]
Deprecation warning on Variables's += methods
PiperOrigin-RevId:
183290246
A. Unique TensorFlower [Thu, 25 Jan 2018 21:46:54 +0000 (13:46 -0800)]
Remove no longer used param fields from TfLiteResizeBilinerParams
PiperOrigin-RevId:
183284937
Yao Zhang [Thu, 25 Jan 2018 21:21:24 +0000 (13:21 -0800)]
VLOG shape inference and annotation return status.
PiperOrigin-RevId:
183280222
A. Unique TensorFlower [Thu, 25 Jan 2018 20:24:58 +0000 (12:24 -0800)]
Automated g4 rollback of changelist
183251689
PiperOrigin-RevId:
183273334
Yifei Feng [Thu, 25 Jan 2018 20:02:36 +0000 (12:02 -0800)]
Add C0330 bad-continuation check to pylint.
PiperOrigin-RevId:
183270896
Sanjoy Das [Thu, 25 Jan 2018 19:17:08 +0000 (11:17 -0800)]
[XLA] Make xla_hlo_profile_test less flaky
Instead of relying on some oeprations always taking longer than others (and this
appearing in a specific order in the rendered HLO profile), pick them out by
opcode.
PiperOrigin-RevId:
183268593
A. Unique TensorFlower [Thu, 25 Jan 2018 18:36:25 +0000 (10:36 -0800)]
Simplify the template mechanism by specifying templates using multi-line strings instead of functions. This loses the syntax verification on templates, but it avoids the clutter of lint overrides and the duplication of parameter names, so things are more readable.
Addresses #16318
PiperOrigin-RevId:
183260854
Akshay Modi [Thu, 25 Jan 2018 17:53:10 +0000 (09:53 -0800)]
Surface error if input is not flat list of eager tensors
PiperOrigin-RevId:
183253112
Eugene Brevdo [Thu, 25 Jan 2018 17:44:04 +0000 (09:44 -0800)]
[TF RNN] Ensure dynamic_rnn runs at least one step to propagate dynamic shape info.
PiperOrigin-RevId:
183251689