You may need to install ‘nccl2‘ from NVIDIA official website

2023-12-22 15:58

本文主要是介绍You may need to install ‘nccl2‘ from NVIDIA official website,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

报错信息

在使用paddle进行多卡训练的时候报错,报错信息如下

W0111 17:25:32.685145 56257 dynamic_loader.cc:207] You may need to install ‘nccl2’ from NVIDIA official website: https://developer.nvidia.com/nccl/nccl-downloadbefore install PaddlePaddle.
Traceback (most recent call last):
File “tools/train.py”, line 114, in
main(config, device, logger, vdl_writer)
File “tools/train.py”, line 47, in main
dist.init_parallel_env()
File “/home/disk0/zw/anaconda3/envs/paddle/lib/python3.7/site-packages/paddle/distributed/parallel.py”, line 181, in init_parallel_env
parallel_helper._init_parallel_ctx()
File “/home/disk0/zw/anaconda3/envs/paddle/lib/python3.7/site-packages/paddle/fluid/dygraph/parallel_helper.py”, line 42, in _init_parallel_ctx
parallel_ctx__clz.init()
RuntimeError: (PreconditionNotMet) The third-party dynamic library (libnccl.so) that Paddle depends on is not configured correctly. (error code is libnccl.so: cannot open shared object file: No such file or directory)
Suggestions:

  1. Check if the third-party dynamic library (e.g. CUDA, CUDNN) is installed correctly and its version is matched with paddlepaddle you installed.
  2. Configure third-party dynamic library environment variables as follows:
  • Linux: set LD_LIBRARY_PATH by export LD_LIBRARY_PATH=...
  • Windows: set PATH by set PATH=XXX; (at /paddle/paddle/fluid/platform/dynload/dynamic_loader.cc:234) [Hint: If you need C++ stacktraces for debugging, please setFLAGS_call_stack_level=2`.]

分析原因

环境信息
  • python:3.7
  • cuda:10.0
  • cudnn:7.6
  • paddlepaddle-gpu:2.0.0rc1

通过上面的错误可以很容易定位到是因为没有找到libnccl.so导致的这个问题,所以导致这个错误有两种原因:

  1. 没有安装nccl
  2. 没有将libnccl.so添加到LD_LIBRARY_PATH环境变量中

解决办法

安装nccl

根据cuda的版本去选择对应版本的nccl,可以去nvidia的官网下载https://developer.nvidia.com/nccl/nccl-legacy-downloads
这里以cuda10为例

1.下载nccl-repo-ubuntu1604-2.6.4-ga-cuda10.0_1-1_amd64.deb
2.安装镜像库
sudo dpkg -i nccl-repo-ubuntu1604-2.6.4-ga-cuda10.0_1-1_amd64.deb
3.更新源镜像
sudo apt update
4.安装nccl
sudo apt install 
libnccl2=2.6.4-1+cuda10.0 libnccl-dev=2.6.4-1+cuda10.0
将nccl添加到环境变量中

nccl默认的安装目录是/usr/lib/x86_64-linux-gnu,修改~/.bashrc文件,添加如下内容到文件中

#设置cuda库的目录
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64
#将nccl添加到LD_LIBRARY_PATH中
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/x86_64-linux-gnu

添加好之后保存文件,使用source ~/.bashrc让文件的配置生效,在通过echo $LD_LIBRARY_PATH查看环境变量设置是否成功,配置成功之后输出的信息如下

/usr/local/cuda-10.0/lib64:/usr/lib/x86_64-linux-gnu

参考:

  1. https://forums.developer.nvidia.com/t/have-strange-problem-on-installing-nccl/60654
  2. https://zhuanlan.zhihu.com/p/174710896
  3. https://github.com/PaddlePaddle/PaddleDetection/issues/1444
  4. https://developer.nvidia.com/nccl/nccl-legacy-downloads

这篇关于You may need to install ‘nccl2‘ from NVIDIA official website的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/524561

相关文章

收藏:解决 pip install 出现 error: subprocess-exited-with-error 错误的方法

在使用 pip 安装 Python 包时,有时候会遇到 error: subprocess-exited-with-error 错误。这种错误通常是由于 setuptools 版本问题引起的。本文将介绍如何解决这一问题 当你使用 pip install 安装某个 Python 包时,如果 setuptools 版本过高或过低,可能会导致安装过程出错,并出现类似以下错误信息:error: subpr

[轻笔记] pip install : Read timed out. (closed)

添加超时参数(单位秒) pip --default-timeout=10000 install ${package_name}

pip install pyaudio sounddevice error: externally-managed-environment

shgbitai@shgbitai-C9X299-PGF:~/pythonworkspace/ai-accompany$ pip install pyaudio sounddeviceerror: externally-managed-environment× This environment is externally managed╰─> To install Python package

maven 指令之package 和install的区别

https://blog.csdn.net/zy103118/article/details/79901357   maven 指令之package 和install的区别 2018年04月11日 19:08:46 brave_zhao 阅读数:2018更多 个人分类: maven maven package 和 install 区别 原创 2016年08月18日 14:55:26

安装Python(install python),安装pip(install pip)

海南副教授陈晶优下台 ,shut down        you are rubbish ,you need study. How to install python environment and pip?   Step 1:Download https://www.python.org/download

Kubernetes的alpha.kubernetes.io/nvidia-gpu无法限制GPU个数

问题描述: Pod.yaml文件中关于GPU资源的设置如下: 然而在docker中运行GPU程序时,发现宿主机上的两块GPU都在跑。甚至在yaml文件中删除关于GPU的请求,在docker中都可以运行GPU。 原因: 上例说明alpha.kubernetes.io/nvidia-gpu无效。查看yaml文件,发现该docker开启了特权模式(privileged:ture): 而

Ubuntu安装docker及nvidia-docker2

Ubuntu 通过apt安装 Ubuntu安装docker后再安装nvidia-docker2时经常出现版本不匹配的问题,可以分以下两步安装: # 安装dockerexport VERSION=18.06.1-ce && curl -sSL get.docker.com | sh# 安装nvidia-docker2curl -s -L https://nvidia.github.io/nv

【解决bug之路】npm install node-sass(^4.14.1)连环报错解决!!!(Windows)

有关node-sass的深入分析可参考:又报gyp ERR!为什么有那么多人被node-sass 坑过? 主要有如下三方面错误,请自查: 1.node,npm版本需与node-sass版本匹配,像node-sass(^4.14.1)就得node 14.x版本才可以,node 16不行 gyp ERR! build error15 gyp ERR! stack Error: `

[INSTALL] MSYS2 -- Windows下的类Linux环境

一、安装 1. 从https://www.msys2.org/ 下载安装msys2 也可以从镜像: http://mirrors.aliyun.com/msys2/distrib/x86_64/ 下载最新的安装包 msys2-x86_64-20230718.exe 2. 更新下载源为阿里云 sed -i "s#https\?://mirror.msys2.org/#http://mirrors

AI超周期现状 - NVIDIA、苹果以及人工智能的整体需求

于2024年6月6日在中国杭州拍摄的英伟达和苹果的标志。到6月5日,东部时间,英伟达的市值超过3万亿美元,正式超越苹果的市值,成为全球市值第二大的科技巨头。值得注意的是,短短3个多月时间里,英伟达的市值就从2万亿美元飙升至3万亿美元。(由Costfoto摄于NurPhoto,经盖蒂图片社批准) 在九月初经历了几天的市场动荡后,又有一波关于人工智能超级周期是否已结束的讨论。如果没有结束,那接下来会