主要分为两部分,一部分是安装hls4ml
另一个是安装gpu 版本的tensorflow,比较难安装的是tf
https://github.com/fastmachinelearning/hls4ml-tutorial
git clone https://github.com/fastmachinelearning/hls4ml-tutorial.git
不然报错”AttributeError: module ‘tensorflow.keras.layers’ has no attribute ‘MultiHeadAttention’
根据https://github.com/fastmachinelearning/hls4ml/issues/514和https://github.com/fastmachinelearning/hls4ml-tutorial/pull/27
是由于TensorFlow版本的问题
把name改成环境的名字
删除在这里安装的tensorflow,因为在这里安装同时会安装cuda10的版本,一会儿自己安装
name: hls4ml-new2
channels:
- conda-forge
dependencies:
- python=3.7
- jupyterhub
- pydot
- graphviz
- pip
- pip:
- jupyter
- hls4ml[profiling]==0.6.0
- qkeras==0.9.0
- scikit-learn
- git+https://github.com/thesps/conifer.git
conda env create -f environment.yml
conda activate hls4ml-new2
https://blog.csdn.net/ly869915532/article/details/124627618
然后后面主要按照这个步骤安装tensorflow的gpu版本
https://medium.com/analytics-vidhya/install-tensorflow-gpu-2-4-0-with-cuda-11-0-and-cudnn-8-using-anaconda-8c6472c9653f
安装cuda
conda install cudatoolkit=11.0
pip install tensorflow-gpu==2.4.0
然后在https://developer.nvidia.com/rdp/cudnn-archive 下载这个,需要先登录
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kBWkUNyc-1656160404541)(https://raw.githubusercontent.com/liuhao-97/typora_pic/main/uPic/image-20220625150947852.png)]
复制这些文件到anaconda3/envs/hls4ml-new2/lib
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OQNtk9gq-1656160404542)(https://raw.githubusercontent.com/liuhao-97/typora_pic/main/uPic/image-20220625151027584.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NoA3jhbN-1656160404543)(https://raw.githubusercontent.com/liuhao-97/typora_pic/main/uPic/image-20220625151105919.png)]
结束
最后在hls4ml-new2环境下输入conda list | grep cuda
只能看到cuda,看不见cudnn
根据https://blog.csdn.net/weixin_45587004/article/details/124408228?spm=1001.2014.3001.5502
修改环境的文件
但是这时候还是用不了GPU 的tensorflow,感觉是env.yml里面TensorFlow版本的问题
https://stackoverflow.com/questions/66389006/how-do-i-install-tensorflow-2-4-on-anaconda
安装conda gpu
conda install tensorflow-gpu==2.4.1
import tensorflow as tf
tf.__version__
查看tensorflow版本,这时候应该是2.4.1
tf.config.list_physical_devices('GPU')
看GPU是否能用
但是不知道为啥好像更慢了?
感觉只能用cpu版本的?
参考
https://medium.com/analytics-vidhya/install-tensorflow-gpu-2-4-0-with-cuda-11-0-and-cudnn-8-using-anaconda-8c6472c9653f
安装pip install tensorflow-gpu==2.4.0
然后
pip show tensorflow-gpu
显示安装位置
conda list | grep cuda
总而言之就是tensorflow gpu 2.4.0下,默认会安装Cuda 10.2 and cuDnn 7
需要改成正确的[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cg81MGvY-1656160404543)(https://raw.githubusercontent.com/liuhao-97/typora_pic/main/uPic/image-20220625135202837.png)]
代码里加入
os.environ['TF_XLA_FLAGS'] = '--tf_xla_enable_xla_devices'
代码里加
# https://blog.csdn.net/weixin_45092662/article/details/117109615
os.environ['CUDA_VISIBLE_DEVICES']="0"
config=tf.compat.v1.ConfigProto()
# config.gpu_options.per_process_gpu_memory_fraction=0.8
config.gpu_options.allow_growth = True
sess=tf.compat.v1.Session(config=config)
https://blog.csdn.net/wxyczhyza/article/details/120821510
如果在anaconda启动jupyter notebook找不到anaconda的虚拟环境内核,可以尝试以下步骤:
1、在dos窗口输入以下命令激活环境:anaconda activate 【py环境名,比如py37】
2、在虚拟环境py37下安装jupyter notebook,命令:pip install jupyter notebook
3、安装ipykernel,命令:conda install ipykernel
4、将虚拟环境注入jupyter notebook,命令:
python -m ipykernel install --user --name 【环境名称】 --display-name 【在jupyter中显示名字】
如:python -m ipykernel install --user --name py37 --display-name py37(可以和环境名一样,也可以不一样。)
5、运行jupyter notebook,命令:jupyter notebook