MXNet GluonTS使用报错:OSError: libnccl.so.2: cannot open shared object file: No such file or directory

文章目录

  • 一、问题描述
  • 二、解决方法


一、问题描述

在使用 GPU 服务器安装 GluonTS 做时间序列预测有关的项目时,报错如下(吐槽,用 MXNet 的时候,经常遇到报错emmm):

MXNet GluonTS使用报错:OSError: libnccl.so.2: cannot open shared object file: No such file or directory_第1张图片


二、解决方法

这是因为装mxnet-cu112(GPU版本)默认会是 1.9.0 的高版本,如下所示:

MXNet GluonTS使用报错:OSError: libnccl.so.2: cannot open shared object file: No such file or directory_第2张图片

网上很多方法主要说的就是移除后安装低版本的mxnet,如:pip install mxnet-cu101(cuda版本)==1.7.0。但我用的服务器显卡是RTX 3080,只能安装 cuda>=11.0,可是都是对应 1.8.0 以上的mxnet。在一篇 CSDN 文章的评论区找到有效解决方法,如下所示(必须点个大大的赞):

MXNet GluonTS使用报错:OSError: libnccl.so.2: cannot open shared object file: No such file or directory_第3张图片

核心思路就是去 NVIDIA 官网下载跟你 CUDA 版本和操作系统(我的是Ubuntu20.04)适配的 NCCL 文件,然后配置一下。

MXNet GluonTS使用报错:OSError: libnccl.so.2: cannot open shared object file: No such file or directory_第4张图片

整个过程用到的命令如下:

!nvidia-smi
!nvcc --version
!sudo lsb_release -a
!find /usr/ -name "libnvrtc*"

# 安装GPU版本的mxnet和gluonts
!pip install mxnet-cu112 -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
!pip install pydantic -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
!pip install gluonts -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

# 配置之前下载的东西
!sudo dpkg -i nccl-local-repo-ubuntu2004-2.8.4-cuda11.2_1.0-1_amd64.deb
!sudo apt update
!sudo apt install libnccl2=2.8.4-1+cuda11.2 libnccl-dev=2.8.4-1+cuda11.2

然后就解决了,可以利用 GPU 跑 MXNet GluonTS 的深度学习模型做时间序列预测项目。


参考了:

  • CSDN | 无管理员(sudo)权限下解决MXNet-cu()“OSError: libnccl.so.2“的问题

  • CSDN | OSError: libnccl.so.2: cannot open shared object file: No such file or directory

  • NVIDIA | nccl-legacy-downloads

你可能感兴趣的:(报错,异常解决,mxnet,gluonts,libnccl.so.2)