提出问题
遥感专用深度学习框架LuoJiaNet是武大龚健雅院士团队牵头研发的,有幸我也参与其中。该框架致力研发的遥感专有深度学习框架,具备大幅面训练、推理和遥感专有知识嵌入等等特点。具体可参考该链接LuoJiaNet。本篇博文主要从基础开始,学习LuoJiaNet框架的源码安装。目前该框架也推出了pip形式的安装,但局限性较大,必须搭配cuda10.x才行。而我目前拿到的机器是RTX 3090显卡,需要配置的cuda必须要11.0以上。因此,我们需要从源码开始编译安装。
安装步骤
为了方便后续环境的迁移,以及不打乱物理机的环境。这里我选择了以docker镜像的形式安装LuoJiaNet。
- 首先,我们尽量按照官网的配置去搭建环境。官网使用了Ubuntu 18.04系统,并搭配cuda和cudnn。因此,我们首先拉取镜像。
docker pull nvidia/cuda:11.1.1-cudnn8-devel-ubuntu18.04
- 下载LuoJiaNet源码。
git clone https://github.com/WHULuoJiaTeam/luojianet.git
- 之后按照该链接下的步骤安装即可,LuoJiaNet GPU版源码安装步骤。注意目前“安装CUDA & cuDNN”这一步教程中有个小错误,即CUDA_HOME=/usr/loca/cuda这一命令“loca”应改为“local”。并且该步骤的环境配置如下:
###进入环境配置
vim ~/.bashrc
###加入如下环境变量
export CUDNN_HOME=/usr/local/cuda-11.1
export CUDA_HOME=/usr/local/cuda-11.1
export CUDA_TOOLKIT_HOME=/usr/local/cuda-11.1
###wq!退出,并刷新环境变量
source ~/.bashrc
当然,安装中或多或少会出现问题,这里我将自己遇到的问题暴露给大家,并附出我的解决方案。
安装中出现的问题
- 首先检查cuda和cudnn是否安装成功,在我拉取的镜像中,我发现我建立的容器“找不到”cudnn,如下图所示错误。后面通过查找,发现cudnn文件全部位于/usr/include路径下面,通过复制这些文件到/usr/local/cuda-11.1/include下发现解决不了问题。索性最后直接重装cudnn。cudnn安装步骤参考该链接。
- 安装过程中出现下载第三方库下载不了的情况,笨一点的方法可以手动下载再上传上去,但我试了一下之后,发现要下载的第三方库太多了,因此,改了github的下载源。参考链接如下:Github请求超时解决方案,虽然该方法解决了大部分下载问题,可能仍有部分第三方库下载不了,可手动下载上传。
- 另外,如果按照官方教程安装,则有个“flatbuffers”安装不了,参考该链接可以解决。其实,主要是默认安装的cmake版本过高引起的,降低版本即可。这里最后换成了cmake-3.18.3。具体解决步骤如下。
wget https://cmake.org/files/v3.18/cmake-3.18.3.tar.gz tar -zxvf cmake*.gz cd cmake-3.18.3 ./configure make sudo make install
以上就是我安装LuoJiaNet所遇到的问题以及处理方案。大家如果有其他问题,也可分享交流。
4.安装过程中出现cmake缺少文件的情况。
主要是之前的安装过程1-3步骤中build.sh已经被被编译了部分,因此,做1-3修改的时候会出现cmake报错,存在缺少文件的情况,只要将build.sh文件删除,重新进行luojianet的编译。
隐藏彩蛋:这里为大家打包好了我已经配置好的docker镜像,可以直接拿来用哦。
文章评论