TFTS: Fix race conditions in adaptive statistics.

Switches variables to ResourceVariables. Existing control dependencies are then
sufficient for preventing single-machine race conditions.

PiperOrigin-RevId: 161157061
This commit is contained in:
Allen Lavoie 2017-07-06 18:14:10 -07:00 committed by TensorFlower Gardener
parent b031107cdf
commit 3926a3aca1

View File

@ -696,9 +696,10 @@ class InputStatisticsFromMiniBatch(object):
# Create/retreive variables representing input statistics, initialized
# without data to avoid deadlocking if variables are initialized before
# queue runners are started.
with variable_scope.variable_scope("input_statistics"):
with variable_scope.variable_scope("input_statistics", use_resource=True):
statistics = self._create_variable_statistics_object()
with variable_scope.variable_scope("input_statistics_auxiliary"):
with variable_scope.variable_scope(
"input_statistics_auxiliary", use_resource=True):
# Secondary statistics, necessary for the incremental computation of the
# primary statistics (e.g. counts and sums for computing a mean
# incrementally).