在centos6.5下编译OpenBLAS时报了好多类似下面的错误:
…/kernel/x86_64/dgemm_kernel_4x8_haswell.S:1759: Error: no such instruction: `vpermpd $ 0xb1,%ymm0,%ymm0‘
在网上找到了解决办法[《centos6.7安装openblas错误》] (http://www.bubuko.com/infodetail-1994834.html),经验证确实有效。
但是这个办法要修改源码,显然有点不太可取,仔细查看了Makefile和Makefile.system两个文件,在Makefile.system中找到如下代码,一下就明白了。
ifeq ($(NO_AVX2), 1)
CCOMMON_OPT += -DNO_AVX2
endif
解决办法:
如下在执行make时加NO_AVX2=1参数,就避免修改源码:
make NO_LAPACKE=1 NO_SHARED=1 NO_AVX2=1
在CentOS 6.5环境下编译OpenBLAS时遇到内含vpermpd指令错误的问题,通过调整编译参数NO_AVX2=1成功解决了问题,避免了直接修改源代码。
1185

被折叠的 条评论
为什么被折叠?



