对于Anaconda 2018.12-py37

时间:2019-01-22 18:38:34

标签: python python-3.x scipy anaconda intel-mkl

首先,请注意,该问题似乎已经存在很长时间了(例如GitHub Scipy Issue 8205)。 碰巧在尝试使用eigvalsheigh来获取大小为2000x2000或更大的复杂矩阵的特征值时,出现了MKL错误(请参见下文)(未测试其他例程)。 显然,据我所知,该问题应该在2019.0版本的MKL方面解决,所以我将Anaconda升级到2018.12-py37,因为Scipy与MKL 2019.1链接了。不幸的是,这对我不起作用,并且我仍然会收到错误消息。我错过了什么吗?或者是否有解决办法?似乎没有Scipy的MKL conda-forge版本,因此它可能是最新版本(与MKL一起在Anaconda中使用)。

Anaconda版本2018.12-py37

摘录自conda list

# Name                    Version                   Build  Channel
blas                      1.0                         mkl
mkl                       2019.1                      144
numpy                     1.15.4           py37h7e9f1db_0
numpy-base                1.15.4           py37hde5b4d6_0
scipy                     1.1.0            py37h7c811a0_2

我已经建立了一个仅包含必要模块的虚拟conda环境。它会引发相同的错误。

import numpy as np
from scipy.linalg import eigvalsh
mat = np.random.rand(2000,2000) + 1j * np.random.rand(2000,2000)
mat += mat.conjugate()
eigvalsh(mat)

我收到以下错误:

Intel MKL ERROR: Parameter 12 was incorrect on entry to ZHBRDB.

它只会引发错误并返回一个只有零的数组,最后一个条目除外。

0 个答案:

没有答案