ubuntu tensorflow非法指令(核心已转储)及找不到指定的模块解决方法

3 篇文章 0 订阅
2 篇文章 0 订阅

本机例子ubuntu版本为16.04,tensorflow版本1.14和2.0。

出现illegal instruction(core dumped)的原因是机器不支持avx指令,而tensorflow版本>=1.6需要支持avx指令。

查看电脑是否支持avx指令的命令:

cat /proc/cpuinfo|grep avx

若没有显示结果,则说明不支持avx

解决方法只有2种

1:换一台支持avx的机器。

2:降低tensorflow的版本至1.5或以下。

接下来就第2种方法详细介绍,在tensorflow官网找到1.5版本,https://pypi.org/project/tensorflow/1.5.0/#files

发现1.5版本支持的python最高版本是3.6的,那么就下载tensorflow-1.5.0-cp36-cp36m-manylinux1_x86_64.whl

此时我发现python环境是3.7的,那么就需要建一个3.6的虚拟环境

conda create -n py36 python=3.6

建立完成后激活这个虚拟环境

conda activate py36

然后安装1.5版本的tensorflow

pip install tensorflow-1.5.0-cp36-cp36m-manylinux1_x86_64.whl

到此问题已解决,输入python->import tensorflow已经不会报错了。

我因为用到了keras,所以遇到了keras与tensorflow版本不匹配的问题,报错内容是keras要求更高版本的tensorflow,于是查询keras与tensorflow的版本对应关系,得知tensorflow1.5版本对应keras2.1.6,于是

pip install keras==2.1.6

如果安装速度慢可以用豆瓣的镜像源,如

pip install -i http://pypi.douban.com/simple/ keras==2.1.6 --trusted-host pypi.douban.com

至此,问题解决,tensorflow成功运行,最后附一张结果图

另外,对于ImportError:Dll load Failed:找不到指定的模块。

https://support.microsoft.com/zh-cn/help/2977003/the-latest-supported-visual-c-downloads上下载一个电脑适配的vc_redist.exe,安装好后重启电脑即可。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值