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

NNPACK build error #3

Closed
kaishijeng opened this issue Mar 25, 2016 · 7 comments
Closed

NNPACK build error #3

kaishijeng opened this issue Mar 25, 2016 · 7 comments

Comments

@kaishijeng
Copy link

After python configure.py, I got the following error with ninja

ninja: error: build.ninja:271: unknown pool name

DO you know why?

@nicolasvasilache
Copy link

This is likely related to an older ninja version (pre 1.4.0 I think).
Try using the latest: https://ninja-build.org/, it worked for me.

@kaishijeng
Copy link
Author

It works with the latest ninja.

Thanks

@kaishijeng
Copy link
Author

How do I run benchmark after compile test since it is not mentioned in the
README?

On Fri, Mar 25, 2016 at 8:07 AM, Nicolas Vasilache <notifications@github.com

wrote:

This is likely related to an older ninja version (pre 1.4.0 I think).
Try using the latest: https://ninja-build.org/, it worked for me.


You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
#3 (comment)

@Maratyszcza
Copy link
Owner

There are three ways to benchmark NNPACK:

  1. Run bin/convolution-benchmark, bin/fully-connected-benchmark, or bin/pooling-benchmark benchmarks to benchmark layers with arbitrary parameters. E.g.

    bin/convolution-benchmark --mode output --batch 128 --input-channels 1024 --output-channels 1024 --input-size 40 40 --kernel-size 5 5 --input-padding 2 --algorithm ft16x16

  2. Run ./benchmark.py script to benchmark layers of AlexNet, OverFeat-Fast, or VGG-A models. E.g.

    ./benchmark.py -l fully-connected -m inference -n vgg-a

  3. Build Caffe-NNPACK and use CPU branch of convnet-benchmarks to benchmark NNPACK integrated into Caffe. You'd need to modify models' prototxt files to add engine: NNPACK inside convolution_param of the convolutional layers.

@kaishijeng
Copy link
Author

Seem something is wrong when I tried

bin/convolution-benchmark --mode output --batch 128 --input-channels 1024
--output-channels 1024 --input-size 40 40 --kernel-size 5 5 --input-padding
2 --algorithm ft16x16

It gives the following error:

NNPACK initialization failed: error code 51

On Sat, Mar 26, 2016 at 8:00 PM, Marat Dukhan notifications@github.com
wrote:

There are three ways to benchmark NNPACK:

  1. Run bin/convolution-benchmark, bin/fully-connected-benchmark, or
    bin/pooling-benchmark benchmarks to benchmark layers with arbitrary
    parameters. E.g.

bin/convolution-benchmark --mode output --batch 128 --input-channels 1024 --output-channels 1024 --input-size 40 40 --kernel-size 5 5 --input-padding 2 --algorithm ft16x16

  1. Run ./benchmark.py script to benchmark layers of AlexNet,
    OverFeat-Fast, or VGG-A models. E.g.

./benchmark.py -l fully-connected -m inference -n vgg-a

  1. Build Caffe-NNPACK https://github.com/Maratyszcza/caffe-nnpack
    and use CPU branch of convnet-benchmarks
    https://github.com/soumith/convnet-benchmarks/tree/cpu to benchmark
    NNPACK integrated into Caffe. You'd need to modify models' prototxt files
    to add engine: NNPACK inside convolution_param of the convolutional
    layers.


You are receiving this because you modified the open/close state.
Reply to this email directly or view it on GitHub
#3 (comment)

@Maratyszcza
Copy link
Owner

This error code means you are not running on a compatible hardware. NNPACK requires a processor with AVX2, i.e. Intel Haswell, Broadwell, or Skylake. It also checks that the processor has L1, L2, and L3 cache, but AFAIK also current Haswell/Broadwell/Skylake SKUs have it.

@kaishijeng
Copy link
Author

Thanks

On Sat, Mar 26, 2016 at 8:55 PM, Marat Dukhan notifications@github.com
wrote:

This error code means you are not running on a compatible hardware. NNPACK
requires a processor with AVX2, i.e. Intel Haswell, Broadwell, or Skylake.
It also checks that the processor has L1, L2, and L3 cache, but AFAIK also
current Haswell/Broadwell/Skylake SKUs have it.


You are receiving this because you modified the open/close state.
Reply to this email directly or view it on GitHub
#3 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants