ultrascale pynq环境下安装tensorflow

ultrascale(我用的是zcu111)基本结构仍然是ARM+FPGA。最近想在板子上跑CNN,由于训练集较小,故打算直接在ARM上训练,因此需要在linux(pynq)环境下install深度学习框架,经过尝试之后成功在ARM上配置好了tensorflow,将过程简单记录如下:

组件:

  • zcu111 v2.5 image
  • tensorflow 1.10.1

step1 Burn pynq image

由于代码中内存分配用到了XInk等模块,而最新的pynq v2.7 image已经舍弃该模块,会import失败,因此选择烧写v2.5版本(当然V2.7也完全没问题,只是需要使用其他模块),下载地址:

Releases · Xilinx/PYNQ · GitHub

具体烧写过程不再赘述。

step2 Updata and install related packages

这一步参考:(24条消息) Xilinx-PYNQ_Z2系列-学习笔记(13):在PYNQ-Z2上安装Keras/Tensorflow 库的方法_赵小琛在路上的博客-CSDN博客_pynq tensorflow

运行如下指令更新系统软件:

sudo apt-get update
sudo apt-get upgrade

安装python和pip:

sudo apt-get install python3-pip python3-dev
pip3 install --upgrade pip

安装python科学套件:

sudo apt-get install python3-numpy python3-scipy python3-matplotlib python3-yaml
sudo apt-get install libhdf5-serial-dev

将python环境由2.7变为3.6:

sudo rm /usr/bin/python
sudo ln -s /usr/bin/python3 /usr/bin/python

step3 Install Tensorflow

关键的一步来了,首先需要清楚板卡的ARM是哪一种架构,zcu111搭载的是cortex-A53和Cortex-R5,均为64bit的aarch64架构,参考这一篇博客进行下载(建议在jupyter terminal中进行下载):

aarch64架构下安装tensorflow详细过程 - 小大大小 - 博客园 (cnblogs.com)

下载完成以后,还可能出现以下问题,给出一般解决方案:

(1)在python环境中import tensorflow,报错信息为numpy的版本不兼容,因此执行以下指令安装满足要求的numpy版本即可(我安装的是1.14.5):

sudo pip3 install numpy=1.14.5

(2)如果在串口终端进行下载,那么在jupyter中import tensorflow,可能返回:no module named tensorflow,在jupyter terminal中和串口调试软件的python环境中依次输入以下指令,查看环境信息:

import sys
sys.path

如果两个地方显示的路径不完全相同,原因可能是jupyter kernel的路径未包含tensorflow安装路径!这也就是为什么建议在jupyter terminal中install的原因,解决办法是卸载-重下。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部