From ba368bf69621bdcf2c42fbb8a0ae25272f4df648 Mon Sep 17 00:00:00 2001 From: lidanqing Date: Thu, 29 Aug 2019 12:15:17 +0200 Subject: [PATCH] clean up intel labeled TODOs (#19476) test=develop --- .../operators/mkldnn/concat_mkldnn_op.cc | 4 +- .../fluid/operators/mkldnn/conv_mkldnn_op.cc | 5 +- .../mkldnn/conv_transpose_mkldnn_op.cc | 4 +- .../mkldnn/gaussian_random_mkldnn_op.cc | 2 - .../operators/mkldnn/quantize_mkldnn_op.cc | 2 - .../operators/mkldnn/requantize_mkldnn_op.cc | 4 +- .../fluid/operators/mkldnn/sum_mkldnn_op.cc | 1 - .../fluid/operators/ngraph/ops/reshape_op.h | 3 +- .../mkldnn_post_training_strategy.py | 2 - .../mkldnn/test_elementwise_mul_mkldnn_op.py | 67 ------------------- 10 files changed, 6 insertions(+), 88 deletions(-) diff --git a/paddle/fluid/operators/mkldnn/concat_mkldnn_op.cc b/paddle/fluid/operators/mkldnn/concat_mkldnn_op.cc index 505a628f50..8c3b4e7ab4 100644 --- a/paddle/fluid/operators/mkldnn/concat_mkldnn_op.cc +++ b/paddle/fluid/operators/mkldnn/concat_mkldnn_op.cc @@ -159,8 +159,8 @@ class ConcatPrimitiveFactory { std::vector srcs_pd; std::vector srcs; std::vector inputs; - boost::optional dst_mem; // TODO(mgallus): change to std::optional -}; // upon introduction of C++17 to paddle + boost::optional dst_mem; +}; template class ConcatMKLDNNOpKernel : public paddle::framework::OpKernel { diff --git a/paddle/fluid/operators/mkldnn/conv_mkldnn_op.cc b/paddle/fluid/operators/mkldnn/conv_mkldnn_op.cc index dbb792616a..e84bcc58ce 100644 --- a/paddle/fluid/operators/mkldnn/conv_mkldnn_op.cc +++ b/paddle/fluid/operators/mkldnn/conv_mkldnn_op.cc @@ -157,7 +157,6 @@ class ConvMKLDNNOpKernel : public paddle::framework::OpKernel { int groups = ctx.Attr("groups"); bool is_conv3d = strides.size() == 3U; - // TODO(tpatejko): add support for dilation PADDLE_ENFORCE( is_conv3d ? dilations.size() == 3 && dilations[0] == 1 && dilations[1] == 1 && @@ -212,8 +211,7 @@ class ConvMKLDNNOpKernel : public paddle::framework::OpKernel { src_tz, platform::MKLDNNGetDataType(), chosen_memory_format); auto weights_md = platform::MKLDNNMemDesc( weights_tz, platform::MKLDNNGetDataType(), weights_format); - std::vector bias_tz; // TODO(mgallus): avoid empty vector creation. - // Currently used whenever bias is != nullptr. + std::vector bias_tz; auto dst_md = platform::MKLDNNMemDesc( dst_tz, platform::MKLDNNGetDataType(), chosen_memory_format); @@ -364,7 +362,6 @@ class ConvMKLDNNOpKernel : public paddle::framework::OpKernel { "residual fusion does not support force output with fp32"); bool is_conv3d = strides.size() == 3U; - // TODO(tpatejko): add support for dilation PADDLE_ENFORCE( is_conv3d ? dilations.size() == 3 && dilations[0] == 1 && dilations[1] == 1 && diff --git a/paddle/fluid/operators/mkldnn/conv_transpose_mkldnn_op.cc b/paddle/fluid/operators/mkldnn/conv_transpose_mkldnn_op.cc index 86be8f5ace..79361d45f3 100644 --- a/paddle/fluid/operators/mkldnn/conv_transpose_mkldnn_op.cc +++ b/paddle/fluid/operators/mkldnn/conv_transpose_mkldnn_op.cc @@ -69,7 +69,6 @@ class ConvTransposeMKLDNNOpKernel : public paddle::framework::OpKernel { std::vector dilations = ctx.Attr>("dilations"); int groups = ctx.Attr("groups"); - // TODO(tpatejko): add support for dilation PADDLE_ENFORCE( dilations.size() == 2 && dilations[0] == 1 && dilations[1] == 1, "dilation in convolution is not implemented yet"); @@ -150,8 +149,7 @@ class ConvTransposeMKLDNNOpKernel : public paddle::framework::OpKernel { src_tz, platform::MKLDNNGetDataType(), chosen_memory_format); auto weights_md = platform::MKLDNNMemDesc( weights_tz, platform::MKLDNNGetDataType(), chosen_memory_format); - std::vector bias_tz; // TODO(mgallus): avoid empty vector creation. - // Currently used whenever bias is != nullptr. + std::vector bias_tz; auto dst_md = platform::MKLDNNMemDesc( dst_tz, platform::MKLDNNGetDataType(), chosen_memory_format); diff --git a/paddle/fluid/operators/mkldnn/gaussian_random_mkldnn_op.cc b/paddle/fluid/operators/mkldnn/gaussian_random_mkldnn_op.cc index 76b00b396c..d992765ce9 100644 --- a/paddle/fluid/operators/mkldnn/gaussian_random_mkldnn_op.cc +++ b/paddle/fluid/operators/mkldnn/gaussian_random_mkldnn_op.cc @@ -40,8 +40,6 @@ class GaussianMKLDNNKernel : public paddle::framework::OpKernel { data[i] = dist(engine); } - // The format of output is set as the mkldnn's format - // TODO(@mozga-intel) The format of matrix sets inside the another layers. tensor->set_layout(DataLayout::kMKLDNN); tensor->set_format(mkldnn::memory::format::oihw); } diff --git a/paddle/fluid/operators/mkldnn/quantize_mkldnn_op.cc b/paddle/fluid/operators/mkldnn/quantize_mkldnn_op.cc index 11c2b83d68..e0e7829cd8 100644 --- a/paddle/fluid/operators/mkldnn/quantize_mkldnn_op.cc +++ b/paddle/fluid/operators/mkldnn/quantize_mkldnn_op.cc @@ -124,7 +124,5 @@ class QuantOpKernel : public framework::OpKernel { } // namespace paddle namespace ops = paddle::operators; -// TODO(Xiaoli) Support FP32->S8 quantization. - REGISTER_OP_KERNEL(quantize, MKLDNN, ::paddle::platform::CPUPlace, ops::QuantOpKernel); diff --git a/paddle/fluid/operators/mkldnn/requantize_mkldnn_op.cc b/paddle/fluid/operators/mkldnn/requantize_mkldnn_op.cc index 44e8281424..9dfbafe53b 100644 --- a/paddle/fluid/operators/mkldnn/requantize_mkldnn_op.cc +++ b/paddle/fluid/operators/mkldnn/requantize_mkldnn_op.cc @@ -47,9 +47,7 @@ class ReQuantOpKernel : public framework::OpKernel { std::vector dst_tz = paddle::framework::vectorize2int(output->dims()); mkldnn::memory::data_type src_dt = paddle::framework::ToMKLDNNDataType(input->type()); - mkldnn::memory::data_type dst_dt = src_dt; // TODO(Xiaoli) support - // requantize from different - // data type (e.g., s8 to u8) + mkldnn::memory::data_type dst_dt = src_dt; mkldnn::memory::format src_fmt = memory::format::nhwc; mkldnn::memory::format dst_fmt = memory::format::nhwc; diff --git a/paddle/fluid/operators/mkldnn/sum_mkldnn_op.cc b/paddle/fluid/operators/mkldnn/sum_mkldnn_op.cc index 6f64157b64..0649c059ec 100644 --- a/paddle/fluid/operators/mkldnn/sum_mkldnn_op.cc +++ b/paddle/fluid/operators/mkldnn/sum_mkldnn_op.cc @@ -139,7 +139,6 @@ class SumMKLDNNOpKernel : public paddle::framework::OpKernel { output->set_layout(DataLayout::kMKLDNN); output->set_format(output_format); } else { // Fallback to naive version - // TODO(@mozga-intel) Add MKLDNN SelectedRows & LoDTensorArray support SumKernel reference_kernel; reference_kernel.Compute(ctx); } diff --git a/paddle/fluid/operators/ngraph/ops/reshape_op.h b/paddle/fluid/operators/ngraph/ops/reshape_op.h index 53a2aebe23..89ad04f06f 100644 --- a/paddle/fluid/operators/ngraph/ops/reshape_op.h +++ b/paddle/fluid/operators/ngraph/ops/reshape_op.h @@ -57,8 +57,7 @@ static void BuildReshapeNode( std::shared_ptr input = platform::GetInputNode(op, "X", ngb_node_map); auto input_shape = input->get_shape(); - // TODO(mozga-intel) The vector of shape is not supported yet, that's - // asDispensable() operator" + std::shared_ptr shape = platform::GetInputNode(op, "Shape", ngb_node_map); diff --git a/python/paddle/fluid/contrib/slim/quantization/mkldnn_post_training_strategy.py b/python/paddle/fluid/contrib/slim/quantization/mkldnn_post_training_strategy.py index 1b34983001..ad5ef33bf7 100644 --- a/python/paddle/fluid/contrib/slim/quantization/mkldnn_post_training_strategy.py +++ b/python/paddle/fluid/contrib/slim/quantization/mkldnn_post_training_strategy.py @@ -83,8 +83,6 @@ class MKLDNNPostTrainingQuantStrategy(Strategy): if six.PY3: data = warmup_reader.__next__() - # TODO (Intel) Remove limits that MKLDNNPostTrainingQuantStrategy - # only support image classification num_images = len(data) image_data = [img.tolist() for (img, _) in data] image_data = np.array(image_data).astype("float32").reshape( diff --git a/python/paddle/fluid/tests/unittests/mkldnn/test_elementwise_mul_mkldnn_op.py b/python/paddle/fluid/tests/unittests/mkldnn/test_elementwise_mul_mkldnn_op.py index a9f748b5e4..438a2ce5dc 100644 --- a/python/paddle/fluid/tests/unittests/mkldnn/test_elementwise_mul_mkldnn_op.py +++ b/python/paddle/fluid/tests/unittests/mkldnn/test_elementwise_mul_mkldnn_op.py @@ -152,73 +152,6 @@ class TestElementwiseMulMKLDNNOp_Integrated_With_Convs(ElementwiseMulOp): pass -# TODO(LeoZhao-Intel): re-enable this case -# https://github.com/PaddlePaddle/Paddle/issues/16764 -@unittest.skip("Not supported well on avx2.") -class TestElementwiseMulMKLDNNOp_BroadcastNCHW16c(ElementwiseMulOp): - def init_input_output(self): - x = np.random.rand(1, 16, 2, 2).astype(self.dtype) - self.x = x.transpose(0, 2, 3, 1).reshape(1, 16, 2, 2) - self.y = np.random.rand(1, 16).astype(self.dtype) - - self.out = x * self.y.reshape(1, 16, 1, 1) - self.out = self.out.transpose(0, 2, 3, 1).reshape(1, 16, 2, 2) - - def setUp(self): - super(TestElementwiseMulMKLDNNOp_BroadcastNCHW16c, self).setUp() - self.attrs["x_data_format"] = "nchw16c" - self.attrs["y_data_format"] = "nc" - self._cpu_only = True - - def init_kernel_type(self): - self.use_mkldnn = True - - def init_axis(self): - self.axis = 0 - - def test_check_grad_normal(self): - pass - - def test_check_grad_ingore_x(self): - pass - - def test_check_grad_ingore_y(self): - pass - - -@unittest.skip( - "Not implemented yet.") # TODO(mgallus): enable when implemented. -class TestElementwiseMulMKLDNNOp_BroadcastNCHW8c(ElementwiseMulOp): - def init_input_output(self): - x = np.random.rand(1, 8, 2, 2).astype(self.dtype) - self.x = x.transpose(0, 2, 3, 1).reshape(1, 8, 2, 2) - self.y = np.random.rand(1, 8).astype(self.dtype) - - self.out = x * self.y.reshape(1, 8, 1, 1) - self.out = self.out.transpose(0, 2, 3, 1).reshape(1, 8, 2, 2) - - def setUp(self): - super(TestElementwiseMulMKLDNNOp_BroadcastNCHW8c, self).setUp() - self.attrs["x_data_format"] = "nchw8c" - self.attrs["y_data_format"] = "nc" - self._cpu_only = True - - def init_kernel_type(self): - self.use_mkldnn = True - - def init_axis(self): - self.axis = 0 - - def test_check_grad_normal(self): - pass - - def test_check_grad_ingore_x(self): - pass - - def test_check_grad_ingore_y(self): - pass - - class TestElementwiseMulMKLDNNOp_FallbackNCHW(ElementwiseMulOp): def init_input_output(self): self.x = np.random.rand(1, 16, 2, 2).astype(self.dtype) -- GitLab