Improve model performance on x86

Hi all,

I’m trying to optimize a model for x86 target. I’ve already run the optimization with autoTVM as of this tutorial. Now I’m wondering how I can further speedup the inference. How can I try WINOGRAD convolutions? Are there other optimizations that I can apply in my case? Thanks for all the suggestions!

2 Likes

Hi @gasgallo, winograd seems not enabled for x86 target yet. If you are familiar with TOPI, you may try to port it from ARM targets.

Do ensure that you are using the best LLVM flags for your machine. For example on Cascade lake, you would want to use “llvm -mcpu=cascadelake”

Similar examples are “llvm -mcpu=skylake-avx512”, “llvm -mcpu=core-avx2” etc.

@jackwish oh ok, I thought it had been released for x86 already, I’ll take a look at ARM implementation, but I’m not sure I’ve enough knowledge about TOPI to port it.

@janimesh You’re right, indeed I’m already using -mcpu flag.