Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Neon Depthwise Convolution Transpose Function #3792

Merged
merged 5 commits into from
Sep 7, 2017

Conversation

hedaoyuan
Copy link
Contributor

Add a depthwise convolution transpose function based on ARM-NEON optimization.

@hedaoyuan hedaoyuan requested a review from NHZlX September 6, 2017 11:09
Copy link
Contributor

@NHZlX NHZlX left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see that the NeonDepthwiseConvTranspose support the situation that stride == 2. But why not change here https://github.com/hedaoyuan/Paddle/blob/90bf4f60aea012a3eeb819fe4655069d66dbe6e6/paddle/function/neon/NeonDepthwiseConvTranspose.cpp#L102

@@ -474,6 +475,97 @@ struct DepthwiseConvKernel<4, 2> {
}
};

template <class T>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we put the padding function into the neon_util file or something else. In case there are neon extensions of other convolution which use padding method.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it can be moved into neon_util.h after it is really needed.

@hedaoyuan
Copy link
Contributor Author

I see that the NeonDepthwiseConvTranspose support the situation that stride == 2. But why not change here

In conv_transpose stride only used to convert input data(some operator like padding), after converted, the convolution process can be considered to be a stride size of 1.
https://github.com/vdumoulin/conv_arithmetic

@NHZlX
Copy link
Contributor

NHZlX commented Sep 7, 2017

LGTM

@hedaoyuan hedaoyuan merged commit a8efed0 into PaddlePaddle:develop Sep 7, 2017
@hedaoyuan hedaoyuan added this to Convolution Optimization in Embedded and Mobile Deployment Sep 15, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Embedded and Mobile Deployment
Convolution Optimization
Development

Successfully merging this pull request may close these issues.

None yet

2 participants