如何修改NumPy和Miniconda使用的MKL版本
Miniconda环境下NumPy关联MKL版本降级(2021→2019)操作指南
方案1:现有环境直接降级操作
- 第一步:卸载当前环境中已安装的MKL相关组件与NumPy,避免依赖冲突
执行命令:conda remove mkl mkl-service numpy - 第二步:指定版本安装MKL 2019及匹配的NumPy
执行命令:conda install mkl=2019.* numpy
conda会自动匹配与MKL 2019兼容的NumPy版本,无需手动指定NumPy版本号,避免出现绑定异常。
方案2:新建独立干净环境(推荐,避免影响其他依赖)
如果担心现有环境的其他依赖受影响,可以新建专属环境:
- 第一步:创建指定Python版本的新环境
执行命令:conda create -n amd_sci_env python=3.9.5 - 第二步:激活环境后安装对应版本组件
执行命令:conda activate amd_sci_envconda install mkl=2019.* numpy
效果验证
安装完成后在Python交互环境执行以下代码验证版本:
import numpy as np import mkl # 查看系统MKL版本 print(mkl.get_version_string()) # 查看NumPy绑定的MKL版本 print(np.__mkl_version__)
返回结果均为2019开头的版本号即为操作成功。
可选替代方案(无需降级MKL)
针对MKL 2020及以上版本,可通过设置新的官方环境变量绕过Intel的CPU限制,无需降级MKL即可获得正常性能:
- Windows系统:新增系统环境变量
MKL_ENABLE_INSTRUCTIONS,值设为AVX2 - Linux/macOS系统:在
~/.bashrc或~/.zshrc末尾添加export MKL_ENABLE_INSTRUCTIONS=AVX2,执行source ~/.bashrc(对应修改的配置文件)生效
该方案无需修改依赖版本,操作更简便,对现有环境影响更小。
内容的提问来源于stack exchange,提问作者AstroTeen
相关产品推荐
相关产品推荐

