我的其中一台VM(Windows Server 2012R2)中的numpy(python版本3.7.1和numpy版本是1.16.1)有问题。我编写测试代码进行测试,并在执行 init 时使numpy崩溃。
当我使用pdb进入numpy的 init 时,当调用x的dot方法时,它在第208行崩溃: 从输出中,它显示一个非法指令错误:
由于某些无法正常运行的要求,我们必须使用numpy 1.16.1。有谁可以帮助解决这个问题?非常感谢。
更新: 我的测试代码非常简单,我主机的CPU是:Intel(R)Xeon(R)Gold 6152 CPU @ 2.10GHz
答案 0 :(得分:0)
故障是openblas库中的非法指令,该库是numpy
使用的高度优化的lineair代数库。
Openblas可以构建为在运行时检测CPU功能,或者 可以构建为特定的CPU功能,例如AVX矢量指令。
我怀疑您的openblas副本是为使用CPU上没有的指令而构建的。您可能需要一个不同的openblas软件包(用于在运行时检测CPU功能)或什至另一个numpy软件包。