Skip to content

Commit 783f9ea

Browse files
author
sweetsky0901
committed
del using in .h
1 parent e12d1a1 commit 783f9ea

File tree

1 file changed

+47
-34
lines changed

1 file changed

+47
-34
lines changed

paddle/operators/norm_op.h

Lines changed: 47 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,6 @@ limitations under the License. */
1919
namespace paddle {
2020
namespace operators {
2121

22-
template <typename T, int MajorType = Eigen::RowMajor,
23-
typename IndexType = Eigen::DenseIndex>
24-
using EigenVector = framework::EigenVector<T, MajorType, IndexType>;
25-
template <typename T, int MajorType = Eigen::RowMajor,
26-
typename IndexType = Eigen::DenseIndex>
27-
using EigenMatrix = framework::EigenMatrix<T, MajorType, IndexType>;
28-
2922
template <typename DeviceContext, typename T, typename AttrType = T>
3023
class NormKernel : public framework::OpKernel<T> {
3124
public:
@@ -42,29 +35,37 @@ class NormKernel : public framework::OpKernel<T> {
4235
int fea_len = height * width;
4336
auto* place =
4437
context.template device_context<DeviceContext>().eigen_device();
45-
auto x = EigenMatrix<T>::From(
46-
*in_x, framework::make_ddim({batch_size, fea_len * channels}));
38+
auto x =
39+
framework::EigenMatrix<T, Eigen::RowMajor, Eigen::DenseIndex>::From(
40+
*in_x, framework::make_ddim({batch_size, fea_len * channels}));
4741
// get square
4842
framework::Tensor x_square;
4943
x_square.mutable_data<T>(in_x->dims(), context.GetPlace());
50-
auto x_square_eigen = EigenMatrix<T>::From(
51-
x_square, framework::make_ddim({batch_size, fea_len * channels}));
44+
auto x_square_eigen =
45+
framework::EigenMatrix<T, Eigen::RowMajor, Eigen::DenseIndex>::From(
46+
x_square, framework::make_ddim({batch_size, fea_len * channels}));
5247
x_square_eigen.device(*place) = x.square();
53-
auto scale_eigen = EigenVector<T>::Flatten(*scale);
48+
auto scale_eigen =
49+
framework::EigenVector<T, Eigen::RowMajor, Eigen::DenseIndex>::Flatten(
50+
*scale);
5451
for (int n = 0; n < batch_size; ++n) {
5552
framework::Tensor in_x_batch = in_x->Slice(n, n + 1);
56-
auto in_x_batch_eigen = EigenMatrix<T>::From(
57-
in_x_batch, framework::make_ddim({channels, fea_len}));
53+
auto in_x_batch_eigen =
54+
framework::EigenMatrix<T, Eigen::RowMajor, Eigen::DenseIndex>::From(
55+
in_x_batch, framework::make_ddim({channels, fea_len}));
5856
framework::Tensor x_square_batch = x_square.Slice(n, n + 1);
59-
auto x_square_batch_eigen = EigenMatrix<T>::From(
60-
x_square_batch, framework::make_ddim({channels, fea_len}));
57+
auto x_square_batch_eigen =
58+
framework::EigenMatrix<T, Eigen::RowMajor, Eigen::DenseIndex>::From(
59+
x_square_batch, framework::make_ddim({channels, fea_len}));
6160
framework::Tensor out_batch = out->Slice(n, n + 1);
62-
auto out_batch_eigen = EigenMatrix<T>::From(
63-
out_batch, framework::make_ddim({channels, fea_len}));
61+
auto out_batch_eigen =
62+
framework::EigenMatrix<T, Eigen::RowMajor, Eigen::DenseIndex>::From(
63+
out_batch, framework::make_ddim({channels, fea_len}));
6464
framework::Tensor tmp_tensor;
6565
tmp_tensor.mutable_data<T>(framework::make_ddim({1, fea_len}),
6666
context.GetPlace());
67-
auto tmp = EigenVector<T>::Flatten(tmp_tensor);
67+
auto tmp = framework::EigenVector<T, Eigen::RowMajor,
68+
Eigen::DenseIndex>::Flatten(tmp_tensor);
6869
// get colsum and sqrt , inverse
6970
auto dim = Eigen::array<int, 1>({{0}});
7071
tmp.device(*place) = x_square_batch_eigen.sum(dim);
@@ -102,40 +103,52 @@ class NormGradKernel : public framework::OpKernel<T> {
102103
auto* place =
103104
context.template device_context<DeviceContext>().eigen_device();
104105

105-
auto scale_eigen = EigenVector<T>::Flatten(*scale);
106-
auto x = EigenMatrix<T>::From(
107-
*in_x, framework::make_ddim({batch_size, fea_len * channels}));
106+
auto scale_eigen =
107+
framework::EigenVector<T, Eigen::RowMajor, Eigen::DenseIndex>::Flatten(
108+
*scale);
109+
auto x =
110+
framework::EigenMatrix<T, Eigen::RowMajor, Eigen::DenseIndex>::From(
111+
*in_x, framework::make_ddim({batch_size, fea_len * channels}));
108112
// get square
109113
framework::Tensor x_square;
110114
x_square.mutable_data<T>(in_x->dims(), context.GetPlace());
111-
auto x_square_eigen = EigenMatrix<T>::From(
112-
x_square, framework::make_ddim({batch_size, fea_len * channels}));
115+
auto x_square_eigen =
116+
framework::EigenMatrix<T, Eigen::RowMajor, Eigen::DenseIndex>::From(
117+
x_square, framework::make_ddim({batch_size, fea_len * channels}));
113118
x_square_eigen.device(*place) = x.square();
114119

115120
for (int n = 0; n < batch_size; ++n) {
116121
framework::Tensor in_x_batch = in_x->Slice(n, n + 1);
117-
auto in_x_batch_eigen = EigenMatrix<T>::From(
118-
in_x_batch, framework::make_ddim({channels, fea_len}));
122+
auto in_x_batch_eigen =
123+
framework::EigenMatrix<T, Eigen::RowMajor, Eigen::DenseIndex>::From(
124+
in_x_batch, framework::make_ddim({channels, fea_len}));
119125
framework::Tensor in_g_batch = in_x_grad->Slice(n, n + 1);
120-
auto in_g_batch_eigen = EigenMatrix<T>::From(
121-
in_g_batch, framework::make_ddim({channels, fea_len}));
126+
auto in_g_batch_eigen =
127+
framework::EigenMatrix<T, Eigen::RowMajor, Eigen::DenseIndex>::From(
128+
in_g_batch, framework::make_ddim({channels, fea_len}));
122129
framework::Tensor x_square_batch = x_square.Slice(n, n + 1);
123-
auto x_square_batch_eigen = EigenMatrix<T>::From(
124-
x_square_batch, framework::make_ddim({channels, fea_len}));
130+
auto x_square_batch_eigen =
131+
framework::EigenMatrix<T, Eigen::RowMajor, Eigen::DenseIndex>::From(
132+
x_square_batch, framework::make_ddim({channels, fea_len}));
125133
framework::Tensor outg_batch = out_grad->Slice(n, n + 1);
126-
auto outg_batch_eigen = EigenMatrix<T>::From(
127-
outg_batch, framework::make_ddim({channels, fea_len}));
134+
auto outg_batch_eigen =
135+
framework::EigenMatrix<T, Eigen::RowMajor, Eigen::DenseIndex>::From(
136+
outg_batch, framework::make_ddim({channels, fea_len}));
128137

129138
framework::Tensor tmp_tensor;
130139
tmp_tensor.mutable_data<T>(framework::make_ddim({1, fea_len}),
131140
context.GetPlace());
132-
auto tmp_eigen = EigenVector<T>::Flatten(tmp_tensor);
141+
auto tmp_eigen =
142+
framework::EigenVector<T, Eigen::RowMajor,
143+
Eigen::DenseIndex>::Flatten(tmp_tensor);
133144
auto dim = Eigen::array<int, 1>({{0}});
134145
tmp_eigen.device(*place) = (in_x_batch_eigen * outg_batch_eigen).sum(dim);
135146
framework::Tensor norm_tmp_tensor;
136147
norm_tmp_tensor.mutable_data<T>(framework::make_ddim({1, fea_len}),
137148
context.GetPlace());
138-
auto norm_tmp_eigen = EigenVector<T>::Flatten(norm_tmp_tensor);
149+
auto norm_tmp_eigen =
150+
framework::EigenVector<T, Eigen::RowMajor,
151+
Eigen::DenseIndex>::Flatten(norm_tmp_tensor);
139152
norm_tmp_eigen.device(*place) =
140153
(x_square_batch_eigen.sum(dim) + epsilon).sqrt();
141154
Eigen::array<int, 2> broadcast_dim_col;

0 commit comments

Comments
 (0)