diff options
author | A. Unique TensorFlower <gardener@tensorflow.org> | 2018-09-17 17:49:36 -0700 |
---|---|---|
committer | TensorFlower Gardener <gardener@tensorflow.org> | 2018-09-17 17:53:46 -0700 |
commit | 185aa89912376d4088c22615908696cd30f9951b (patch) | |
tree | ba465945c19904129b830cc2465a3ee7b58b9247 /tensorflow/core/BUILD | |
parent | 4338803b98cd825b0b1d810bcc51c9a79734feb6 (diff) |
Eliminate VisitableAllocator.
The visitor pattern is used to allow pre-registration of memory for
DMA access, e.g. for fast GPU/CPU i/o and for RDMA networking. The
VisitableAllocator interface was introduced to support this use some
time ago, prior to SubAllocators. Memory registration works best if
it's done infrequently, on large pieces of memory, rather than on
every piece that's dynamically allocated/freed. This usage pattern
fits the SubAllocator better than a general Allocator. This change
moves memory allocation visitor access to SubAllocator and eliminates
the VisitableAllocator subclass of Allocator.
This change also more rigorously enforces the requirement that all
Visitors be declared prior to memory allocation begining. This is
accomplished by requiring that Visitors be provided to the SubAllocator
constructor.
This refactoring will ease an upcoming CL introducing
NUMA specific CPU devices. It also should fix some performance
pitfalls (e.g. accidental use of PoolAllocator) introduced by an
earlier refactoring of ProcessState that was also in preparation for
NUMA. It restores the default use of the cpu_allocator() value (i.e.
no SubAllocator) by model executions that don't use allocation
visitors (since visitor registration must precede the first allocation,
hence can be detected at that time).
PiperOrigin-RevId: 213371553
Diffstat (limited to 'tensorflow/core/BUILD')
-rw-r--r-- | tensorflow/core/BUILD | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/tensorflow/core/BUILD b/tensorflow/core/BUILD index d55bd8d7ed..9bcf5b0865 100644 --- a/tensorflow/core/BUILD +++ b/tensorflow/core/BUILD @@ -2783,7 +2783,6 @@ CORE_CPU_LIB_HEADERS = CORE_CPU_BASE_HDRS + [ "common_runtime/step_stats_collector.h", "common_runtime/threadpool_device.h", "common_runtime/tracing_device.h", - "common_runtime/visitable_allocator.h", "common_runtime/process_state.h", "common_runtime/pool_allocator.h", "graph/gradients.h", |