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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Eigen Tensor library for convolutions on CPU #22550

Open
snippler opened this issue Jul 5, 2019 · 2 comments
Open

Eigen Tensor library for convolutions on CPU #22550

snippler opened this issue Jul 5, 2019 · 2 comments
Labels
function request A request for a new function or the addition of new arguments/modes to an existing function. module: arm Related to ARM architectures builds of PyTorch. Includes Apple M1 module: convolution Problems related to convolutions (THNN, THCUNN, CuDNN) module: cpu CPU specific problem (e.g., perf, algorithm) module: performance Issues related to performance, either of kernel code or framework glue triaged This issue has been looked at a team member, and triaged and prioritized into an appropriate module

Comments

@snippler
Copy link

snippler commented Jul 5, 2019

馃殌 Feature

Add option of Eigen Tensor library implementation of convolution on ARM CPU

Motivation

While convolutions on Intel CPUs are quite fast, there are issues on ARM processors. I tried NNPack which speeds up the default implementation. However TensorFlow is much faster on Raspberry, and also NNabla. The underlying library is Eigen Tensor library which often is even better than ARM compute library.

cc @VitalyFedyunin @ngimel @mruberry

@vishwakftw vishwakftw added module: operators module: convolution Problems related to convolutions (THNN, THCUNN, CuDNN) labels Jul 6, 2019
@snippler
Copy link
Author

snippler commented Jul 8, 2019

I now noticed that there is Eigen in Caffe2. Weird that it is not available in PyTorch.

@zou3519 zou3519 added the triaged This issue has been looked at a team member, and triaged and prioritized into an appropriate module label Jul 8, 2019
@Yangqing
Copy link
Contributor

Yangqing commented Aug 6, 2019

The actual implementation is here: https://github.com/pytorch/pytorch/blob/master/caffe2/operators/conv_op_eigen.cc if you would like to give it a port or a try. Whether Eigen can be used in the unified PyTorch repo or not is... a directional thing that I'll refrain from commenting.

@gchanan gchanan added module: performance Issues related to performance, either of kernel code or framework glue module: cpu CPU specific problem (e.g., perf, algorithm) labels Oct 24, 2019
@gchanan gchanan added the enhancement Not as big of a feature, but technically not a bug. Should be easy to fix label Nov 7, 2019
@mruberry mruberry added module: arm Related to ARM architectures builds of PyTorch. Includes Apple M1 function request A request for a new function or the addition of new arguments/modes to an existing function. and removed enhancement Not as big of a feature, but technically not a bug. Should be easy to fix module: operators (deprecated) labels Oct 10, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
function request A request for a new function or the addition of new arguments/modes to an existing function. module: arm Related to ARM architectures builds of PyTorch. Includes Apple M1 module: convolution Problems related to convolutions (THNN, THCUNN, CuDNN) module: cpu CPU specific problem (e.g., perf, algorithm) module: performance Issues related to performance, either of kernel code or framework glue triaged This issue has been looked at a team member, and triaged and prioritized into an appropriate module
Projects
None yet
Development

No branches or pull requests

6 participants