centos装tensorflow?centos7安装图形界面

CentOS7 Anaconda3(Python3.7)安装Tensorflow1.20.0

当前最新版TensorFlow1.12.0官网中的.whl文件下载链接仅支持到Python3.6版本,而Anaconda3配备的是Python3.7,因此安装了Anaconda3后无法顺利安装TensorFlow1.12.0。本文提供在Python3.7环境下安装TensorFlow1.20.0的方法。

安装环境包括CentOS7、Anaconda 2018.12 for Linux(Python3.7)、TensorFlow1.12.0等。

安装步骤如下:

1.检查配置环境

python3--version

pip3--version

virtualenv--version

2.升级pip、virtualenv和scipy

pip3 install--upgrade pip3

pip3 install--upgrade virtualenv

pip3 install--upgrade scipy

3.下载TensorFlow的安装包(.whl文件)

下载CPU版本的TensorFlow,将下载链接中的cp36替换为cp37(cp36表示3.6版本,替换后为cp37表示3.7版本)。将下载的文件名修改为tensorflow-1.12.0-cp37-cp37m-linux_x86_64.whl。

4.安装TensorFlow

将下载的.whl文件移动到指定目录,并在Terminal执行以下命令:

pip3 install tensorflow-1.12.0-cp37-cp37m-linux_x86_64.whl

5.测试安装

运行测试代码,可能会出现RuntimeWarning:compiletime version 3.6 of module'tensorflow.python.framework.fast_tensor_util' does not match runtime version 3.7,但运行正常。

注意:在GitHub的TensorFlow Issue上提及async and await是Python 3.7的保留关键字,若遇到无法执行import tensorflow as tf的问题,可参考相关链接。但在CentOS7的Anaconda2018.12版本中并未发现需要替换修改的关键字。

祝读者新年技术进阶,本文旨在帮助TensorFlow学习者顺利安装,若有任何错误或疑问,欢迎留言更正。

更换Anaconda 和 Pip 镜像源的方法

Anaconda是流行的Python包管理工具,它支持多种开源深度学习框架的便捷高效安装。Anaconda拥有图形界面,用户通过点击按钮即可自动安装所需的工具包,如深度学习框架tensorflow、pytorch等。同时,对于使用centos最小化安装且无图形界面的情况,用户需学习使用Anaconda命令进行环境搭建和第三方包安装,可以参考后续文章了解如何使用conda命令创建环境和安装包。Anaconda的服务器位于境外,导致国内用户下载速度缓慢,甚至出现断开无法安装的问题。因此,镜像源的使用变得尤为重要。例如,清华镜像源是一个常用且高效的解决方案。

清华镜像源的网址是:mirrors.tuna.tsinghua.edu.cn...

配置清华镜像源的步骤如下:

在Windows系统中,打开上图中的powershell命令窗口,依次执行以下四条命令:

conda config--add channels mirrors.tuna.tsinghua.edu.cn...

conda config--add channels mirrors.tuna.tsinghua.edu.cn...

conda config--add channels mirrors.tuna.tsinghua.edu.cn...

conda config--set show_channel_urls yes

若需安装pytorch,需添加额外的源:

conda config--add channels mirrors.tuna.tsinghua.edu.cn...

安装pytorch库时,应去掉结尾的 `-c pytorch`,以避免影响安装速度。例如,安装CUDA 9.2的pytorch GPU版本:

# CUDA 9.2

conda install pytorch==1.2.0 torchvision==0.4.0 cudatoolkit=9.2

推荐使用清华和中科大的镜像源,两者没有区别,用户可根据个人喜好选择。

若用户希望恢复原始镜像源,执行以下命令:

conda config--remove-key channels

用户可访问清华镜像源网站,获取miniconda和anaconda软件,这些软件已配置好镜像源,使用方便。miniconda是一个轻量级的conda包管理工具,用户可根据需求进行安装。

pip源的配置方式与conda类似,但在某些情况下,第三方库不支持conda安装或版本过旧导致下载失败时,用户可尝试使用pip安装。为加速安装,推荐使用国内镜像源。配置步骤如下:

在anaconda的powershell命令中输入以下命令:

pip后加参数-i pypi.tuna.tsinghua.edu.cn...(清华源)

例如,安装tensorflow:pip install-i pypi.tuna.tsinghua.edu.cn... tensorflow或者 pip install tensorflow-i pypi.tuna.tsinghua.edu.cn...

更多镜像源推荐:

豆瓣(douban) pypi.douban.com/simple/

清华大学 pypi.tuna.tsinghua.edu.cn...

阿里云 mirrors.aliyun.com/pypi...

中国科技大学 pypi.mirrors.ustc.edu.cn...

用户只需将-i后面的链接替换即可。建议使用清华和阿里的镜像源。

5分钟内完成DeePMD-kit的安装(二)

在过去的两年里,DeePMD-kit的安装流程取得了显著的进展。本文旨在分享这些最新进展,并为其他科学计算软件的安装提供参考。首先,我们优化了pip安装LAMMPS接口及提供更多平台的轮子。

依托Python社区打包工程的发展,如PEP-517、PEP-518、PEP-621等规范的通过,以及setuptools、pip、wheel、build、auditwheel等工具的定位,DeePMD-kit在两年前已经采用scikit-build实现pip安装,并使用cibuildwheel构建轮子,并上传至pypi。然而,此前使用pip install deepmd-kit并非最佳实践,原因在于存在一些问题。

为了提升安装的稳定性,DeePMD-kit的安装模块进行了全面重构。依据PEP-517规范,构建自定义后端,确保在检测到未安装TensorFlow时,pip自动添加TensorFlow CPU版本作为构建依赖。同时,利用setuptools新特性,将setup.py中的元数据迁移到pyproject.toml。

考虑到TensorFlow的C++库版本可能改变ABI,之前的轮子并未固定TensorFlow版本,导致安装后可能发现不兼容。在近期更新中,我们读取TensorFlow版本号,以此固定TensorFlow版本,确保与构建所用的TensorFlow版本一致。此外,我们新增了Linux aarch64、macOS x86-64和Windows x86-64平台的轮子,并修复了其他平台的bug。同时,构建CUDA 11.8版本的GPU支持,当GPU不可用时回退至CPU版本。值得一提的是,由于CUDA 11改进了兼容性,构建的包在CUDA 11.2版本下同样可用。此外,我们对每个平台只构建一个轮子,避免对每个Python版本进行构建,因为DeePMD-kit仅链接TensorFlow,不会影响二进制库。

进一步,我们构建了LAMMPS的pypi轮子,作为DeePMD-kit的可选依赖,并通过entry points提供了CLI和plugin的入口。在加载plugin时,自动将DeePMD-kit的plugin加载到LD_LIBRARY_PATH等环境变量中。同时,_pywrap_tensorflow_internal.so文件暴露了C++接口,因此我们构建了C++库和LAMMPS plugin,使得LAMMPS支持plugin模式和从环境变量读取plugin列表。

最新版本2.2.0b中的pip安装命令已全面更新,Linux轮子需要GLIBC 2.28或以上版本,因为TensorFlow已切换至_GLIBCXX_USE_CXX11_ABI=1。然而,当前的manylinux2014镜像(如CentOS 7)的编译器不支持_GLIBCXX_USE_CXX11_ABI=1,需要采用其他方法解决。在macOS方面,GitHub Actions计划于今年Q3提供Apple M1机器,macOS arm64的轮子届时将可以构建。

在conda安装方面,libdeepmd和LAMMPS成功解耦,不再存在依赖关系。然而,当两者同时安装并在conda环境中激活时,LAMMPS plugin的环境变量加载,LAMMPS也能加载DeePMD-kit的plugin。conda-forge社区已经全面支持macOS x86-64和arm64平台,并加快了TensorFlow的构建速度,支持最新版本的macOS x86-64和arm64的Python库和C++库。LAMMPS也支持plugin包,并已添加macOS arm64支持。因此,conda-forge的DeePMD-kit与LAMMPS解耦,全面支持macOS平台。

考虑到C++接口在不同编译环境下的ABI差异,DeePMD-kit推出了C接口,不包含任何依赖,并提供一个C++实现的头文件,以便与原来的C++接口实现无缝迁移。通过GitHub Actions打包和分发Linux环境下、支持CUDA 11的libdeepmd_c.tar.gz,用户可以直接下载并解压后,与AMBER程序进行集成,大大节省了安装时间。

总之,DeePMD-kit在安装流程上的优化和新功能的引入,不仅提升了软件的稳定性和兼容性,还为用户提供了更简便的安装体验。这些改进不仅适用于DeePMD-kit自身,也为其他科学计算软件的安装提供了有益的参考。

阅读剩余
THE END