diff --git a/official/benchmark/resnet_ctl_imagenet_benchmark.py b/official/benchmark/resnet_ctl_imagenet_benchmark.py index c45c132e992e6f471d2d1fcb2e080defe9397c8c..53d7f010437bc90653a94ea29ee7b09ada493629 100644 --- a/official/benchmark/resnet_ctl_imagenet_benchmark.py +++ b/official/benchmark/resnet_ctl_imagenet_benchmark.py @@ -236,6 +236,17 @@ class Resnet50CtlBenchmarkBase(CtlBenchmark): FLAGS.batch_size = 128 self._run_and_report_benchmark() + def benchmark_1_gpu_fp16(self): + """Test Keras model with 1 GPU with tf.keras mixed precision.""" + self._setup() + + FLAGS.num_gpus = 1 + FLAGS.distribution_strategy = 'one_device' + FLAGS.model_dir = self._get_model_dir('benchmark_1_gpu_fp16') + FLAGS.batch_size = 256 + FLAGS.dtype = 'fp16' + self._run_and_report_benchmark() + def benchmark_1_gpu_amp(self): """Test Keras model with 1 GPU with automatic mixed precision.""" self._setup() @@ -273,6 +284,19 @@ class Resnet50CtlBenchmarkBase(CtlBenchmark): FLAGS.single_l2_loss_op = True self._run_and_report_benchmark() + def benchmark_1_gpu_fp16_eager(self): + """Test Keras model with 1 GPU with fp16 and pure eager mode.""" + self._setup() + + FLAGS.num_gpus = 1 + FLAGS.distribution_strategy = 'one_device' + FLAGS.model_dir = self._get_model_dir('benchmark_1_gpu_fp16_eager') + FLAGS.batch_size = 128 + FLAGS.dtype = 'fp16' + FLAGS.use_tf_function = False + FLAGS.single_l2_loss_op = True + self._run_and_report_benchmark() + def benchmark_8_gpu(self): """Test Keras model with 8 GPUs.""" self._setup() @@ -283,6 +307,17 @@ class Resnet50CtlBenchmarkBase(CtlBenchmark): FLAGS.batch_size = 128 * 8 # 8 GPUs self._run_and_report_benchmark() + def benchmark_8_gpu_fp16(self): + """Test Keras model with 8 GPUs with tf.keras mixed precision.""" + self._setup() + + FLAGS.num_gpus = 8 + FLAGS.distribution_strategy = 'mirrored' + FLAGS.model_dir = self._get_model_dir('benchmark_8_gpu_fp16') + FLAGS.batch_size = 256 * 8 # 8 GPUs + FLAGS.dtype = 'fp16' + self._run_and_report_benchmark() + def benchmark_8_gpu_amp(self): """Test Keras model with 8 GPUs with automatic mixed precision.""" self._setup()