aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
...
* Introduce Python-only extensions to the C APIGravatar Skye Wanderman-Milne2017-07-12
| | | | | | | | | Implements an incomplete version of Operation._add_control_input() using a new extension to make sure the plumbing works. This also adds header guards to c_api_internal.h, which were missing. For some reason the missing guards caused problems in the cmake build even though there doesn't appear to be any #include cycles. PiperOrigin-RevId: 161705859
* Rename TpuEstimator to TPUEstimator and TpuConfig to TPUConfig to follow PEP8Gravatar Jonathan Hseu2017-07-12
| | | | | | naming conventions. PiperOrigin-RevId: 161704561
* Add tf.contrib.nn.rank_sampled_softmax_loss, a variant of ↵Gravatar A. Unique TensorFlower2017-07-12
| | | | | | tf.nn.sampled_softmax_loss that has been shown to improve rank loss. Paper: https://arxiv.org/abs/1707.03073 PiperOrigin-RevId: 161702455
* Add shape check for MakeQuantileSummariesOp.Gravatar A. Unique TensorFlower2017-07-12
| | | | PiperOrigin-RevId: 161698801
* Remove unused flag: xla_hlo_graph_for_compute_constantGravatar A. Unique TensorFlower2017-07-12
| | | | PiperOrigin-RevId: 161686867
* BUILD cleanup in tensorflow/compiler/...Gravatar A. Unique TensorFlower2017-07-12
| | | | PiperOrigin-RevId: 161679855
* Automated g4 rollback of changelist 161218103Gravatar A. Unique TensorFlower2017-07-12
| | | | PiperOrigin-RevId: 161671226
* Refactor some of TensorForest V4 to make the tree model valid during ↵Gravatar A. Unique TensorFlower2017-07-12
| | | | | | training time, instead of only after FinalizeTreeOp. PiperOrigin-RevId: 161663317
* [TF:XLA] Add initial implementation of the Stack operators to the TF/XLA ↵Gravatar Peter Hawkins2017-07-12
| | | | | | bridge. Stacks are used when computing loop gradients. PiperOrigin-RevId: 161659980
* Add checks to TensorForest that help with debugging when labels are wrong.Gravatar A. Unique TensorFlower2017-07-12
| | | | PiperOrigin-RevId: 161657633
* Add platform bridge for grpc response reader.Gravatar Suharsh Sivakumar2017-07-12
| | | | PiperOrigin-RevId: 161632224
* [XLA] Propagate Status from DeviceMemoryAllocator on failure.Gravatar A. Unique TensorFlower2017-07-11
| | | | PiperOrigin-RevId: 161629493
* Add scratch allocator option for 1D, 2D, 3D, and batched cufft plan creation.Gravatar Yangzihao Wang2017-07-11
| | | | PiperOrigin-RevId: 161627209
* Emit the correct LLVM opcode for kMinimum and kMaximum over unsignedGravatar A. Unique TensorFlower2017-07-11
| | | | | | integral types. PiperOrigin-RevId: 161624003
* Make ClientLibraryTestBase able to test all layouts for all input arguments.Gravatar A. Unique TensorFlower2017-07-11
| | | | PiperOrigin-RevId: 161622376
* Use graph._c_graph instead of global USE_C_APIGravatar A. Unique TensorFlower2017-07-11
| | | | | | | | | | Looking at graph._c_graph should be safer. The logic would be as follows. You need to set _USE_C_API global when you create the graph. Once the graph is created, it is either in the "C API mode" or in the old mode. All ops created on this graph inherit its mode and don't look at the global. PiperOrigin-RevId: 161620767
* Mark SessionBundle targets as no longer supported.Gravatar Sukriti Ramesh2017-07-11
| | | | PiperOrigin-RevId: 161616162
* Add warning to Experiment so that users know to set environment=cloud if ↵Gravatar A. Unique TensorFlower2017-07-11
| | | | | | | | | they have an explicit cluster and master (i.e. give an indication that they intend to be running distributed). PiperOrigin-RevId: 161612632
* Java: Make maven release script runnable from any directory.Gravatar Asim Shankar2017-07-11
| | | | PiperOrigin-RevId: 161611475
* Further BUILD cleanup in tensorflow/contrib/...Gravatar A. Unique TensorFlower2017-07-11
| | | | PiperOrigin-RevId: 161609382
* Fix lint errors in ops.py and ops_test.pyGravatar A. Unique TensorFlower2017-07-11
| | | | PiperOrigin-RevId: 161598138
* Use C API to implement Operation._input_typesGravatar A. Unique TensorFlower2017-07-11
| | | | | | | | | | | | | This change first converts _input_types into a property and renames the member to _input_types_val. We keep _input_dtypes as an alias for _input_types as it was before this change. Similarly to _output_types, we can't enable normal tests yet. Instead, we add a simple temporary test for _input_types. Also, fix two minor typos in doc strings of function.py PiperOrigin-RevId: 161597185
* Add missing deprecation warnings.Gravatar Mark Daoust2017-07-11
| | | | | | Fixes #11422 PiperOrigin-RevId: 161581508
* TFTS: Increase test timeouts to avoid ASan failuresGravatar Allen Lavoie2017-07-11
| | | | PiperOrigin-RevId: 161581264
* Make ScheduledEmbeddingTrainingHelper more readable and consistent with ↵Gravatar Adam Roberts2017-07-11
| | | | | | output ScheduledOutputTrainingHelper helper. Also results in minor speedup. PiperOrigin-RevId: 161577148
* fix #11372, #11396Gravatar A. Unique TensorFlower2017-07-11
| | | | PiperOrigin-RevId: 161569039
* Speed up HeapSimulator's UniqueOperandSourceBuffers.Gravatar Justin Lebar2017-07-11
| | | | | | | | Instead of constructing a temporary set, adding all its members to our big set, then flattening into a vector, add the members to our vector directly, then sort it and remove duplicates at the end. PiperOrigin-RevId: 161565289
* Remove HashStr and HashStringPiece (a one-off).Gravatar Justin Lebar2017-07-11
| | | | | | | Now that we have tensorflow::hash and it's the default hasher for FlatMap and FlatSet, we can get rid of HashStr and HashStringPiece. PiperOrigin-RevId: 161560034
* Switch FlatMap and FlatSet to use a non-identity hasher for pointers.Gravatar Justin Lebar2017-07-11
| | | | | | | | | | | | Previously the default hasher for FlatMap and FlatSet used std::hash by default. Most stdlibs' std::hash for pointers is the identity function. This works for std::unordered_{set,map} because those are prime-sized hashtables. But FlatSet and FlatMap are power-of-two-sized, and so the identity function is bad, bad news. This change also switches us to use Hash64 for strings, rather than std::hash. PiperOrigin-RevId: 161553663
* Changed title (first-level header).Gravatar A. Unique TensorFlower2017-07-11
| | | | PiperOrigin-RevId: 161544671
* Go: Update generated wrapper functions for TensorFlow ops.Gravatar A. Unique TensorFlower2017-07-11
| | | | PiperOrigin-RevId: 161544617
* Update ops-related pbtxt files.Gravatar A. Unique TensorFlower2017-07-11
| | | | PiperOrigin-RevId: 161543495
* Slight changes and improvements of style of comment to ↵Gravatar A. Unique TensorFlower2017-07-11
| | | | | | tf.contrib.layers.optimize_loss without changing the actual contents. PiperOrigin-RevId: 161542768
* Move the tf.contrib.data README to the programmers' guide.Gravatar Derek Murray2017-07-11
| | | | PiperOrigin-RevId: 161542200
* Add an axis parameter to tf.gather. Fixes GitHub issue #11223.Gravatar RJ Ryan2017-07-11
| | | | | | | | | | | | This brings tf.gather closer to compatibility with numpy.take. To emulate gathering over an axis generally requires inefficient workarounds, e.g. transpose/gather/transpose. This technique is gaining popularity (hundreds of uses inside and outside of Google), so it is worth supporting efficiently. For an `[a_0, ..., a_i, ..., a_n]` tensor, gathering `N` elements from axis `i` requires `(a_0*...*a_i-1) * N` copies of `(a_i+1 * ... * a_n)` elements each. The CPU kernel does this with memcpy which is far more efficient than transpose/gather/transpose since it requires no intermediate allocations and copies. The GPU kernel does the same number of copies but in parallel across multiple hardware threads. Since this is a backwards incompatible change, this adds a "GatherV2" op with an axis input, and simultaneously supports backwards compatibility with "Gather" ops by defaulting to axis 0 if a 3rd input is not present. PiperOrigin-RevId: 161541416
* Update toolchain configuration artifacts to work with latest version of bazelGravatar A. Unique TensorFlower2017-07-11
| | | | PiperOrigin-RevId: 161531749
* [TF:XLA] Fix copy-and-paste bug in CHECK statement.Gravatar Peter Hawkins2017-07-11
| | | | PiperOrigin-RevId: 161527685
* [XLA:CPU] Support for CPU outfeed and a xfeed (infeed/outfeed) test.Gravatar A. Unique TensorFlower2017-07-11
| | | | | | Note: does not yet support nested tuples, for symmetry with the current infeed limitations. PiperOrigin-RevId: 161502502
* tfprof further clean upsGravatar A. Unique TensorFlower2017-07-10
| | | | PiperOrigin-RevId: 161486865
* Removed the _tensor_summary_v2 op.Gravatar A. Unique TensorFlower2017-07-10
| | | | | | Made the tensor_summary op directly use the TensorSummaryV2 kernel. PiperOrigin-RevId: 161486007
* Go: Update generated wrapper functions for TensorFlow ops.Gravatar A. Unique TensorFlower2017-07-10
| | | | PiperOrigin-RevId: 161478803
* Update ops-related pbtxt files.Gravatar A. Unique TensorFlower2017-07-10
| | | | PiperOrigin-RevId: 161478409
* Merge changes from github.Gravatar Shanqing Cai2017-07-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | END_PUBLIC --- Commit d0f53f77f authored by Penghao Cen<scorpiocph@gmail.com> Committed by Shanqing Cai<cais@google.com>: Minor fix typo (#11323) --- Commit 02fcf564e authored by Chris Song<sjhshy@gmail.com> Committed by Chris Song<sjhshy@gmail.com>: Fix misspells. --- Commit 764c9b6b4 authored by Louis Tiao<ltiao@users.noreply.github.com> Committed by GitHub<noreply@github.com>: Fixed typo in docstring --- Commit f8cd1283e authored by Shanqing Cai<cais@google.com> Committed by Shanqing Cai<cais@google.com>: Chaser --- Commit 01383b946 authored by Shanqing Cai<cais@google.com> Committed by Shanqing Cai<cais@google.com>: Adapt TensorFlowTestCase.setUp() to new reset_default_graph() semantics Avoid calling reset_default_graph() directly to prevent exceptions in cases where test methods error out from within nested graph contexts, which can leave _default_graph_stack non-empty in certain Python versions. --- Commit 0ffc37890 authored by Amit Patankar<amitpatankar@google.com> Committed by Amit Patankar<amitpatankar@google.com>: Removing second declaration of functions. --- Commit f9c9cacb0 authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Refactor ElementalIrEmitter's slice index finding code into IrArray::Index::SourceIndexOfSlice(). PiperOrigin-RevId: 161140653 --- Commit ba297aec9 authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Update ops-related pbtxt files. PiperOrigin-RevId: 161138258 --- Commit 68d666737 authored by Alexandre Passos<apassos@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Fixes a reentrant lock issue with tensors using ndarray memory which uses tensor memory. PiperOrigin-RevId: 161137788 --- Commit a2ee8bca3 authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Add support for int8 x int8 -> int32 matrix multiplication via cublasGemmEx to stream_executor. PiperOrigin-RevId: 161137741 --- Commit 755fa7b50 authored by Mark Daoust<markdaoust@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Block generate_test, and docs generating from running in python3. - Doc generation is currently unsupported in python3 - These both end in errors in python 3.5.1+ PiperOrigin-RevId: 161137467 --- Commit 97cbcac45 authored by Peter Hawkins<phawkins@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: [TF:XLA] Fix failure in functionalize_control_flow rewrite for Enter nodes that are unused. Make sure we ignore such nodes without producing an error. PiperOrigin-RevId: 161136545 --- Commit dabcb60bc authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: [XLA] Add reasonable error messages to Builder::Build for bad parameter numbers. PiperOrigin-RevId: 161136262 --- Commit 0cbd249e8 authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Add complex tensors support to `matrix_determinant`. PiperOrigin-RevId: 161132422 --- Commit 335f1f14d authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Extend static shape inference for SparseTensors with dense_shapes constructed using slicing. PiperOrigin-RevId: 161132391 --- Commit 53604916e authored by Jianwei Xie<xiejw@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Fixed the missing labels test in TPUEstimator. PiperOrigin-RevId: 161131282 --- Commit 9f57dc8dd authored by Bruno Rosa<bruno.rosa@eldorado.org.br> Committed by Bruno Rosa<bruno.rosa@eldorado.org.br>: Use mcpu instead of march for ppc64le march is not support by gcc on ppc64le --- Commit 7d5c74a9c authored by Skye Wanderman-Milne<skyewm@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Move duplicate detection logic from Graph to FunctionLibraryDefinition Turns out this is more useful, since there are many function libraries that don't belong to a graph. This will be used in a future change. Note that this maintains the current behavior of Graph. In addition, updates FunctionDefsEqual() to handle unset attr entries (I ran into this when using this in said future change). PiperOrigin-RevId: 161126628 --- Commit 2caec3af1 authored by Shanqing Cai<cais@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Disable more timeseries py tests failing in OSS PIP GPU builds PiperOrigin-RevId: 161124799 --- Commit 0b5cce367 authored by Eugene Brevdo<ebrevdo@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Get TopK op working on GPU again. Extend using cub's radix sort. 1. Undo rollback of Andreas Kirsch's initial implementation. 2. Use cub segmented radix sort if Andreas' heap-based impl for large k and small num_cols (thresholds of k=100, n=1000 determined empirically). 3. Use cub segmented radix sort if k == num_cols (this case is always faster). 4. Added benchmarks. Benchmarks show that the GPU implementation is up to 3x slower for small k but can be 10x faster for large num_cols and k. Benchmarks: Benchmark: m_128_n_10_k_5_use_gpu_False wall_time: 0.000166 s Throughput: 0.0077 GB/s Benchmark: m_128_n_10_k_5_use_gpu_True wall_time: 0.000796 s Throughput: 0.00161 GB/s Benchmark: m_128_n_10_k_9_use_gpu_False wall_time: 0.00017 s Throughput: 0.00751 GB/s Benchmark: m_128_n_10_k_9_use_gpu_True wall_time: 0.000796 s Throughput: 0.00161 GB/s Benchmark: m_128_n_10_k_10_use_gpu_False wall_time: 0.00017 s Throughput: 0.00753 GB/s Benchmark: m_128_n_10_k_10_use_gpu_True wall_time: 0.000775 s Throughput: 0.00165 GB/s Benchmark: m_128_n_100_k_1_use_gpu_False wall_time: 0.000155 s Throughput: 0.0826 GB/s Benchmark: m_128_n_100_k_1_use_gpu_True wall_time: 0.000796 s Throughput: 0.0161 GB/s Benchmark: m_128_n_100_k_50_use_gpu_False wall_time: 0.000247 s Throughput: 0.0519 GB/s Benchmark: m_128_n_100_k_50_use_gpu_True wall_time: 0.0008 s Throughput: 0.016 GB/s Benchmark: m_128_n_100_k_99_use_gpu_False wall_time: 0.000261 s Throughput: 0.049 GB/s Benchmark: m_128_n_100_k_99_use_gpu_True wall_time: 0.000794 s Throughput: 0.0161 GB/s Benchmark: m_128_n_100_k_100_use_gpu_False wall_time: 0.000239 s Throughput: 0.0536 GB/s Benchmark: m_128_n_100_k_100_use_gpu_True wall_time: 0.000777 s Throughput: 0.0165 GB/s Benchmark: m_128_n_1000_k_1_use_gpu_False wall_time: 0.000324 s Throughput: 0.395 GB/s Benchmark: m_128_n_1000_k_1_use_gpu_True wall_time: 0.000916 s Throughput: 0.14 GB/s Benchmark: m_128_n_1000_k_10_use_gpu_False wall_time: 0.00042 s Throughput: 0.305 GB/s Benchmark: m_128_n_1000_k_10_use_gpu_True wall_time: 0.000902 s Throughput: 0.142 GB/s Benchmark: m_128_n_1000_k_500_use_gpu_False wall_time: 0.0011 s Throughput: 0.116 GB/s Benchmark: m_128_n_1000_k_500_use_gpu_True wall_time: 0.00097 s Throughput: 0.132 GB/s Benchmark: m_128_n_1000_k_990_use_gpu_False wall_time: 0.00133 s Throughput: 0.0962 GB/s Benchmark: m_128_n_1000_k_990_use_gpu_True wall_time: 0.000993 s Throughput: 0.129 GB/s Benchmark: m_128_n_1000_k_1000_use_gpu_False wall_time: 0.00102 s Throughput: 0.126 GB/s Benchmark: m_128_n_1000_k_1000_use_gpu_True wall_time: 0.000964 s Throughput: 0.133 GB/s Benchmark: m_128_n_10000_k_10_use_gpu_False wall_time: 0.002 s Throughput: 0.64 GB/s Benchmark: m_128_n_10000_k_10_use_gpu_True wall_time: 0.00288 s Throughput: 0.445 GB/s Benchmark: m_128_n_10000_k_100_use_gpu_False wall_time: 0.00233 s Throughput: 0.549 GB/s Benchmark: m_128_n_10000_k_100_use_gpu_True wall_time: 0.00325 s Throughput: 0.394 GB/s Benchmark: m_128_n_10000_k_5000_use_gpu_False wall_time: 0.0127 s Throughput: 0.101 GB/s Benchmark: m_128_n_10000_k_5000_use_gpu_True wall_time: 0.00381 s Throughput: 0.336 GB/s Benchmark: m_128_n_10000_k_9900_use_gpu_False wall_time: 0.015 s Throughput: 0.0853 GB/s Benchmark: m_128_n_10000_k_9900_use_gpu_True wall_time: 0.00438 s Throughput: 0.292 GB/s Benchmark: m_128_n_10000_k_10000_use_gpu_False wall_time: 0.0104 s Throughput: 0.123 GB/s Benchmark: m_128_n_10000_k_10000_use_gpu_True wall_time: 0.00427 s Throughput: 0.3 GB/s Benchmark: m_128_n_100000_k_100_use_gpu_False wall_time: 0.0148 s Throughput: 0.865 GB/s Benchmark: m_128_n_100000_k_100_use_gpu_True wall_time: 0.0262 s Throughput: 0.488 GB/s Benchmark: m_128_n_100000_k_1000_use_gpu_False wall_time: 0.0201 s Throughput: 0.636 GB/s Benchmark: m_128_n_100000_k_1000_use_gpu_True wall_time: 0.0263 s Throughput: 0.486 GB/s Benchmark: m_128_n_100000_k_50000_use_gpu_False wall_time: 0.214 s Throughput: 0.0599 GB/s Benchmark: m_128_n_100000_k_50000_use_gpu_True wall_time: 0.0322 s Throughput: 0.398 GB/s Benchmark: m_128_n_100000_k_99000_use_gpu_False wall_time: 0.262 s Throughput: 0.0489 GB/s Benchmark: m_128_n_100000_k_99000_use_gpu_True wall_time: 0.0377 s Throughput: 0.34 GB/s Benchmark: m_128_n_100000_k_100000_use_gpu_False wall_time: 0.118 s Throughput: 0.108 GB/s Benchmark: m_128_n_100000_k_100000_use_gpu_True wall_time: 0.0365 s Throughput: 0.351 GB/s END_PUBLIC BEGIN_PUBLIC BEGIN_PUBLIC Automated g4 rollback of changelist 157169178 PiperOrigin-RevId: 161476569
* [XLA] Fix bugs and incomplete comment in reduce_precision_test.cc.Gravatar A. Unique TensorFlower2017-07-10
| | | | | | We want a bitwise or, not bitwise and, to add in the sign bit. This was previously just creating zeros instead of negative test values. PiperOrigin-RevId: 161473273
* To add an arg 'name' to Experiment.evaluate() in order to distinguish ↵Gravatar A. Unique TensorFlower2017-07-10
| | | | | | multiple 'one-pass' evaluations. PiperOrigin-RevId: 161470441
* Go: Update generated wrapper functions for TensorFlow ops.Gravatar A. Unique TensorFlower2017-07-10
| | | | PiperOrigin-RevId: 161461980
* Add a call to AddDefaultAttrsToGraphDef when loading deprecated ↵Gravatar Kiril Gorovoy2017-07-10
| | | | | | SessionBundles that may run into a problem with undefined attributes. PiperOrigin-RevId: 161461770
* Update ops-related pbtxt files.Gravatar A. Unique TensorFlower2017-07-10
| | | | PiperOrigin-RevId: 161461239
* Use C API to implement Operation.typeGravatar A. Unique TensorFlower2017-07-10
| | | | | | | The code is excercised by many tests in ops_test.py, math_ops_test*.py, session_*test.py. PiperOrigin-RevId: 161460668
* Add a PadV2 op with support for specifying a pad value.Gravatar RJ Ryan2017-07-10
| | | | | | Added a `constant_values` keyword argument to the tf.pad Python API for compatibility with numpy.pad. For now, only scalar values are supported. To efficiently support specifying a `[D, 2]` tensor for `constant_values` to pick per-dimension pre/post constant values will require adding Eigen and XLA support first. PiperOrigin-RevId: 161460091