| Commit message (Collapse) | Author | Age |
|
|
|
| |
PiperOrigin-RevId: 215590440
|
|
|
|
| |
PiperOrigin-RevId: 215291195
|
|
|
|
| |
PiperOrigin-RevId: 215243030
|
|
|
|
|
|
| |
for supported operating systems.
PiperOrigin-RevId: 214886845
|
|
|
|
|
|
| |
All devices implement the same tracing logic in an override of `Device::Compute()`. However, that logic does not have access to the cached `NodeItem::kernel_is_expensive` bit for the kernel, so it must make a virtual call to `OpKernel::IsExpensive()`. By inlining the logic into `ExecutorState::Process()`, we avoid making an unnecessary virtual call on each kernel invocation (when a trace controller is attached).
PiperOrigin-RevId: 214332492
|
|
|
|
| |
PiperOrigin-RevId: 213749129
|
|
|
|
| |
PiperOrigin-RevId: 213693027
|
|
|
|
|
|
|
|
|
|
| |
Being able to run CPU tests remotely while running GPU tests locally required
multiple changes:
1. Unify how we tag GPU tests in TF; we now always use tf_cuda_tests_tags().
2. Tag tests using tf_cuda_tests_tags() with 'local' and 'gpu'; this makes
them not run on non-gpu builds and always runs them locally.
PiperOrigin-RevId: 213601626
|
|
|
|
| |
PiperOrigin-RevId: 212749761
|
|
|
|
| |
PiperOrigin-RevId: 212736286
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Change Variant Decode to accept VariantTensorData (non-ref).
This should allow some optimization in the future.
In the meantime it means removing the variant.h include from tensor.h, since
variant_encode_decode.h now relies on tensor.h and variant.h now relies on that.
It also means we found a bunch of places where tensor.proto.h, variant.h, and
mutex.h were being imported through tensor.h (along with a bunch of other crap);
so now we directly import them in order to compile.
2. Move Variant registry to use TypeIndex instead of a TypeName string; this should
speed up registry lookups.
PiperOrigin-RevId: 212478896
|
|
|
|
|
|
|
|
| |
is enabled.
Some builds install a `TraceCollector` at process startup, but it is mostly not enabled. This inhibits the recent optimization to avoid accessing `OpKernel::name()` and `OpKernel::type_string()` every time a kernel is launched. By caching the `TraceCollector` in the `TracingDevice` and adding a method to enquire about its state, we increase the applicability of the optimization.
PiperOrigin-RevId: 211752728
|
|
|
|
| |
PiperOrigin-RevId: 211639440
|
|
|
|
| |
PiperOrigin-RevId: 211487989
|
|
|
|
| |
PiperOrigin-RevId: 211110958
|
|
|
|
|
|
|
|
| |
There are several API migrations happening:
* ArraySlice's sub-slice constructor => .subspan
* MutableArraySlice's container pointer constructor => absl::MakeSpan
PiperOrigin-RevId: 210946124
|
|
|
|
|
|
| |
This will make it easier to replace tensorflow::StringPiece with absl::string_view, as absl::string_view does not contain a ToString method.
PiperOrigin-RevId: 210550029
|
|
|
|
|
|
|
|
|
|
| |
conversions.
That is, instances of sp.ToString() are replaced with string(sp).
This will allow tensorflow::StringPiece::ToString to be removed, which is necessary before it can be replaced with absl::string_view.
PiperOrigin-RevId: 210394878
|
|
|
|
| |
PiperOrigin-RevId: 210127626
|
|
|
|
|
|
|
|
| |
That is, instances of sp.ToString() are replaced with string(sp).
This will allow tensorflow::StringPiece::ToString to be removed, which is necessary before it can be replaced with absl::string_view.
PiperOrigin-RevId: 209806694
|
|
|
|
| |
PiperOrigin-RevId: 209679086
|
|
|
|
|
|
|
|
| |
always available).
Previously, absl was not enabled for mobile or for makefile-based builds.
PiperOrigin-RevId: 209648505
|
|\
| |
| |
| | |
PiperOrigin-RevId: 209433836
|
| |
| |
| |
| |
| |
| |
| | |
This prevents most of TensorFlow from needing to depend
on libprotoc.
PiperOrigin-RevId: 208929776
|
|/ |
|
|
|
|
|
|
|
|
|
|
| |
Previously, specifying --define=using_mkl_dnn_only=true would cause
MKL-ML-dependent code to be #ifdef'd out, but dependencies on MKL-ML itself
would still be present. This change makes all library dependencies on MKL
properly select MKL-ML, MKL-DNN, or both, depending on the selected
configuration.
PiperOrigin-RevId: 208710102
|
|\
| |
| |
| | |
PiperOrigin-RevId: 208565050
|
| |
| |
| |
| | |
PiperOrigin-RevId: 208104156
|
|\ \
| | |
| | |
| | | |
PiperOrigin-RevId: 208101398
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Because ~mutex_lock() is marked as an UNLOCK_FUNCTION, we have to mark
the move constructor as locking ml.mu_. Otherwise if you try to move a
mutex_lock, clang sees the destructor call and thinks that the mutex has
been unlocked for good.
Same for tf_shared_lock.
Also make tf_shared_lock's move constructor non-explicit. This is just
a performance optimization; tf_shared_lock was already copyable.
PiperOrigin-RevId: 207610922
|
| | |
| | |
| | |
| | | |
PiperOrigin-RevId: 207152562
|
|\ \ \
| | | |
| | | |
| | | | |
PiperOrigin-RevId: 207008537
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
PiperOrigin-RevId: 206953477
|
| | | | |
| | | | |
| | | | |
| | | | | |
PiperOrigin-RevId: 206938428
|
| | | | |
| | | | |
| | | | |
| | | | | |
PiperOrigin-RevId: 206879653
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
third_party/tensorflow/core/kernels:android_tensorflow_image_op
PiperOrigin-RevId: 206856355
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | | |
PiperOrigin-RevId: 206843515
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Google Cloud Engine zone tensorflow is running in.
PiperOrigin-RevId: 206817614
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
PiperOrigin-RevId: 206812942
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
dependencies.
PiperOrigin-RevId: 206473913
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
When loading large tensors, the cost of creating a new BundleReader is small relative to the load time for the Tensor. When reading from network storage, using a threadpool for large tensor loads allows us to push expensive operations (alloc, fetch, checksum) to separate cores.
PiperOrigin-RevId: 206330021
|
| |_|/ / /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Both s3_crypto.cc and s3_crypto.h have been moved to
aws_crypto.cc and aws_crypto.h files. However, due to some
overlapping merge or update, s3_crypto.cc and s3_crypto.h
reappeared.
This fix removes unneeded s3_crypto.cc and s3_crypto.h files.
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
in preparation for using NUMA node specific allocators.
Also, add stub NUMA functions on the platform interface to
platform/windows/port.cc.
PiperOrigin-RevId: 205413998
|
| |_|_|/
|/| | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
unnecessary transitive dependencies.
PiperOrigin-RevId: 204154526
|
|/ / / |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
by extending the core/platform API with some basic functionality.
The new functions allow:
1. Determining how many NUMA nodes are available.
2. Setting the executing thread to be bound to a particular node,
or not bound at all.
3. Allocating memory affiliated with a particular node.
This change introduces the API only, there is not yet a real
implementation.
PiperOrigin-RevId: 204042160
|
| | |
| | |
| | |
| | | |
PiperOrigin-RevId: 203959955
|
| | |
| | |
| | |
| | | |
PiperOrigin-RevId: 203791186
|
| | |
| | |
| | |
| | |
| | |
| | | |
TowerLocalVariables.
PiperOrigin-RevId: 203520287
|