diff --git a/tensorflow/python/keras/BUILD b/tensorflow/python/keras/BUILD index ca44a7bbe9aab9b499b13a9e7f87dc38fb00fc59..c056996f960a5ce0deee165fb1735567ae9e51fd 100755 --- a/tensorflow/python/keras/BUILD +++ b/tensorflow/python/keras/BUILD @@ -369,7 +369,7 @@ py_test( name = "convolutional_test", size = "large", srcs = ["layers/convolutional_test.py"], - shard_count = 4, + shard_count = 11, srcs_version = "PY2AND3", deps = [ ":keras", diff --git a/tensorflow/python/keras/backend.py b/tensorflow/python/keras/backend.py index 381e0ae3e30ec1e1850c92b7800759bb2e7d6461..c93a716b3cb758874c16d6c960765fba8a8500b5 100644 --- a/tensorflow/python/keras/backend.py +++ b/tensorflow/python/keras/backend.py @@ -568,6 +568,10 @@ def _get_available_gpus(): Returns: A list of available GPU devices. """ + if ops.executing_eagerly_outside_functions(): + # Returns names of devices directly. + return [name for name in context.list_devices() if 'GPU' in name] + global _LOCAL_DEVICES if _LOCAL_DEVICES is None: _LOCAL_DEVICES = get_session().list_devices() diff --git a/tensorflow/python/keras/layers/convolutional_test.py b/tensorflow/python/keras/layers/convolutional_test.py index d3339a8413095cae2b74e19d768fcda0e1b4e4fb..81af06b4eca3a962d95b59e73dc3148d0312c733 100644 --- a/tensorflow/python/keras/layers/convolutional_test.py +++ b/tensorflow/python/keras/layers/convolutional_test.py @@ -24,13 +24,13 @@ import numpy as np from tensorflow.python import keras from tensorflow.python.eager import context -from tensorflow.python.framework import test_util as tf_test_util +from tensorflow.python.keras import keras_parameterized from tensorflow.python.keras import testing_utils from tensorflow.python.platform import test -@tf_test_util.run_all_in_graph_and_eager_modes -class Convolution1DTest(test.TestCase): +@keras_parameterized.run_all_keras_modes +class Convolution1DTest(keras_parameterized.TestCase): def _run_test(self, kwargs, arg, values): num_samples = 2 @@ -100,8 +100,8 @@ class Convolution1DTest(test.TestCase): self.assertEqual(layer.bias.constraint, b_constraint) -@tf_test_util.run_all_in_graph_and_eager_modes -class Conv2DTest(test.TestCase): +@keras_parameterized.run_all_keras_modes +class Conv2DTest(keras_parameterized.TestCase): def _run_test(self, kwargs, arg, values): num_samples = 2 @@ -175,8 +175,8 @@ class Conv2DTest(test.TestCase): self.assertEqual(layer.bias.constraint, b_constraint) -@tf_test_util.run_all_in_graph_and_eager_modes -class Conv2DTransposeTest(test.TestCase): +@keras_parameterized.run_all_keras_modes +class Conv2DTransposeTest(keras_parameterized.TestCase): def _run_test(self, kwargs, arg, values): num_samples = 2 @@ -267,8 +267,8 @@ class Conv2DTransposeTest(test.TestCase): expected_output=expected_output) -@tf_test_util.run_all_in_graph_and_eager_modes -class Conv3DTransposeTest(test.TestCase): +@keras_parameterized.run_all_keras_modes +class Conv3DTransposeTest(keras_parameterized.TestCase): def _run_test(self, kwargs, arg, values): num_samples = 2 @@ -336,8 +336,8 @@ class Conv3DTransposeTest(test.TestCase): self.assertEqual(layer.bias.constraint, b_constraint) -@tf_test_util.run_all_in_graph_and_eager_modes -class SeparableConv1DTest(test.TestCase): +@keras_parameterized.run_all_keras_modes +class SeparableConv1DTest(keras_parameterized.TestCase): def _run_test(self, kwargs, arg, values): num_samples = 2 @@ -411,8 +411,8 @@ class SeparableConv1DTest(test.TestCase): self.assertEqual(layer.bias.constraint, b_constraint) -@tf_test_util.run_all_in_graph_and_eager_modes -class SeparableConv2DTest(test.TestCase): +@keras_parameterized.run_all_keras_modes +class SeparableConv2DTest(keras_parameterized.TestCase): def _run_test(self, kwargs, arg, values): num_samples = 2 @@ -489,8 +489,8 @@ class SeparableConv2DTest(test.TestCase): self.assertEqual(layer.bias.constraint, b_constraint) -@tf_test_util.run_all_in_graph_and_eager_modes -class Conv3DTest(test.TestCase): +@keras_parameterized.run_all_keras_modes +class Conv3DTest(keras_parameterized.TestCase): def _run_test(self, kwargs, arg, values): num_samples = 2 @@ -557,8 +557,8 @@ class Conv3DTest(test.TestCase): self.assertEqual(layer.bias.constraint, b_constraint) -@tf_test_util.run_all_in_graph_and_eager_modes -class ZeroPaddingTest(test.TestCase): +@keras_parameterized.run_all_keras_modes +class ZeroPaddingTest(keras_parameterized.TestCase): def test_zero_padding_1d(self): num_samples = 2 @@ -726,8 +726,8 @@ class ZeroPaddingTest(test.TestCase): keras.layers.ZeroPadding3D(padding=None) -@tf_test_util.run_all_in_graph_and_eager_modes -class UpSamplingTest(test.TestCase): +@keras_parameterized.run_all_keras_modes +class UpSamplingTest(keras_parameterized.TestCase): def test_upsampling_1d(self): with self.session(use_gpu=True): @@ -875,8 +875,8 @@ class UpSamplingTest(test.TestCase): np.testing.assert_allclose(np_output, expected_out) -@tf_test_util.run_all_in_graph_and_eager_modes -class CroppingTest(test.TestCase): +@keras_parameterized.run_all_keras_modes +class CroppingTest(keras_parameterized.TestCase): def test_cropping_1d(self): num_samples = 2 @@ -1017,8 +1017,8 @@ class CroppingTest(test.TestCase): keras.layers.Cropping3D(cropping=None) -@tf_test_util.run_all_in_graph_and_eager_modes -class DepthwiseConv2DTest(test.TestCase): +@keras_parameterized.run_all_keras_modes +class DepthwiseConv2DTest(keras_parameterized.TestCase): def _run_test(self, kwargs, arg, values): num_samples = 2 @@ -1044,17 +1044,18 @@ class DepthwiseConv2DTest(test.TestCase): self._run_test(kwargs, 'data_format', ['channels_first']) self._run_test(kwargs, 'depth_multiplier', [1, 2]) - kwargs = {'kernel_size': 3, - 'padding': 'valid', - 'data_format': 'channels_first', - 'activation': None, - 'depthwise_regularizer': 'l2', - 'bias_regularizer': 'l2', - 'activity_regularizer': 'l2', - 'depthwise_constraint': 'unit_norm', - 'use_bias': True, - 'strides': (2, 2), - } + kwargs = { + 'kernel_size': 3, + 'padding': 'valid', + 'data_format': 'channels_last', + 'activation': None, + 'depthwise_regularizer': 'l2', + 'bias_regularizer': 'l2', + 'activity_regularizer': 'l2', + 'depthwise_constraint': 'unit_norm', + 'use_bias': True, + 'strides': (2, 2), + } self._run_test(kwargs, 'depth_multiplier', [1]) if __name__ == '__main__':