-
Notifications
You must be signed in to change notification settings - Fork 610
Improve im2col for certain cases #715
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
Conversation
This pull request was exported from Phabricator. Differential Revision: D31227743 |
Summary: Pull Request resolved: pytorch#715 Copy across pixels along width dim for im2col. This should help convolution with small number of input channels. Copy across pixels of input width if we can. We can only do this if the following conditions are met. 1) If the number of groups is 1. For number of groups > 1, im2col doesn't copy data across groups. 2) If dilation is 1. For dilation > 1, copying from input across channels is not sequential. 3) For copy from the last channel (end of filter or end of image width) for the current filter, only copy if we have enough in the current channel. Differential Revision: D31227743 fbshipit-source-id: eadc62308f221f8731f566cd35eaeccd40781e6a
8590e56
to
f69c775
Compare
This pull request was exported from Phabricator. Differential Revision: D31227743 |
Summary: Pull Request resolved: pytorch#715 Copy across pixels along width dim for im2col. This should help convolution with small number of input channels. Copy across pixels of input width if we can. We can only do this if the following conditions are met. 1) If the number of groups is 1. For number of groups > 1, im2col doesn't copy data across groups. 2) If dilation is 1. For dilation > 1, copying from input across channels is not sequential. 3) For copy from the last channel (end of filter or end of image width) for the current filter, only copy if we have enough in the current channel. Differential Revision: D31227743 fbshipit-source-id: 1e126e5488ca8f88dd33faa94abf61ae691c4e57
f69c775
to
b595c56
Compare
This pull request was exported from Phabricator. Differential Revision: D31227743 |
Summary: Pull Request resolved: pytorch#715 Copy across pixels along width dim for im2col. This should help convolution with small number of input channels. Copy across pixels of input width if we can. We can only do this if the following conditions are met. 1) If the number of groups is 1. For number of groups > 1, im2col doesn't copy data across groups. 2) If dilation is 1. For dilation > 1, copying from input across channels is not sequential. 3) For copy from the last channel (end of filter or end of image width) for the current filter, only copy if we have enough in the current channel. Differential Revision: D31227743 fbshipit-source-id: 5ea8545c62e39474cad5d4615161b16ec5216603
b595c56
to
608ecb1
Compare
This pull request was exported from Phabricator. Differential Revision: D31227743 |
Summary: Pull Request resolved: pytorch#715 Copy across pixels along width dim for im2col. This should help convolution with small number of input channels. Copy across pixels of input width if we can. We can only do this if the following conditions are met. 1) If the number of groups is 1. For number of groups > 1, im2col doesn't copy data across groups. 2) If dilation is 1. For dilation > 1, copying from input across channels is not sequential. 3) For copy from the last channel (end of filter or end of image width) for the current filter, only copy if we have enough in the current channel. Reviewed By: jspark1105 Differential Revision: D31227743 fbshipit-source-id: 6ce1155839f8fde17031213243ade31cb002b943
This pull request was exported from Phabricator. Differential Revision: D31227743 |
608ecb1
to
f89263e
Compare
Summary: Pull Request resolved: pytorch#715 Copy across pixels along width dim for im2col. This should help convolution with small number of input channels. Copy across pixels of input width if we can. We can only do this if the following conditions are met. 1) If the number of groups is 1. For number of groups > 1, im2col doesn't copy data across groups. 2) If dilation is 1. For dilation > 1, copying from input across channels is not sequential. 3) For copy from the last channel (end of filter or end of image width) for the current filter, only copy if we have enough in the current channel. Reviewed By: jspark1105 Differential Revision: D31227743 fbshipit-source-id: 4df1064bdd99e35635c98bd37d143382fbf3d470
f89263e
to
c7fda9d
Compare
This pull request was exported from Phabricator. Differential Revision: D31227743 |
Summary: Pull Request resolved: pytorch#715 Copy across pixels along width dim for im2col. This should help convolution with small number of input channels. Copy across pixels of input width if we can. We can only do this if the following conditions are met. 1) If the number of groups is 1. For number of groups > 1, im2col doesn't copy data across groups. 2) If dilation is 1. For dilation > 1, copying from input across channels is not sequential. 3) For copy from the last channel (end of filter or end of image width) for the current filter, only copy if we have enough in the current channel. Reviewed By: jspark1105 Differential Revision: D31227743 fbshipit-source-id: 7db9f66b20aad64d3afcca2a47ae60d74b6979f1
c7fda9d
to
f295527
Compare
This pull request was exported from Phabricator. Differential Revision: D31227743 |
Summary: Pull Request resolved: pytorch#715 Copy across pixels along width dim for im2col. This should help convolution with small number of input channels. Copy across pixels of input width if we can. We can only do this if the following conditions are met. 1) If the number of groups is 1. For number of groups > 1, im2col doesn't copy data across groups. 2) If dilation is 1. For dilation > 1, copying from input across channels is not sequential. 3) For copy from the last channel (end of filter or end of image width) for the current filter, only copy if we have enough in the current channel. Reviewed By: jspark1105 Differential Revision: D31227743 fbshipit-source-id: bbe14412c5e402714ed3ba7906d609d9e3c6a2f5
f295527
to
f6b5fe7
Compare
This pull request was exported from Phabricator. Differential Revision: D31227743 |
This pull request has been merged in 0375f13. |
…ytorch#715) Summary: Pull Request resolved: facebookresearch/FBGEMM#715 Differential Revision: D68817290
…ytorch#715) Summary: X-link: pytorch#3640 Pull Request resolved: facebookresearch/FBGEMM#715 Reviewed By: q10, jianyuh Differential Revision: D68817290 fbshipit-source-id: b57b475aa9ee746d8726945b28b71fafd93cfbbe
Summary:
Copy across pixels along width dim for im2col. This should help convolution with small number of input channels.
Copy across pixels of input width if we can. We can only do this
if the following conditions are met.
doesn't copy data across groups.
across channels is not sequential.
end of image width) for the current filter,
only copy if we have enough in the current channel.
Differential Revision: D31227743