最近在服务器上用torchpack
时遇到Could not resolve hostname XXXXX: Name or service not known
问题。网上大部分解决方法是将XXXXX添加到/etc/hosts
里,但是我没有ROOT权限改不了。通过查阅资料,我发现这个问题大部分是由于使用了系统内有多个版本的openmpi
,然后使用了旧版的openmpi
。
通过使用mpirun --version
我发现系统默认使用的openmpi
的版本是1.10.2,这个openmpi
在/usr/local/bin
。
然后我自行安装编译了新版openmpi放在~/work/third-party/openmpi-4.0.5
wget https://download.open-/release/open-mpi/v4.0/openmpi-4.0.5.tar.gzgunzip -c openmpi-4.0.5.tar.gz | tar xf -cd openmpi-4.0.5./configure --prefix=~/work/third-party/openmpi-4.0.5 --with-ortemake all -j8 install
然后用vim编辑.profile修改系统路径
export PATH="~/work/third-party/openmpi-4.0.5/bin:$PATH"
source .profile
,再重新编译mpi4py
和torchpack
rm -rf ./.cache/pip # 防止pip使用cache的packagepip install mpi4pypip install --upgrade git+/zhijian-liu/torchpack.git
问题解决!
3月23日更新
使用这个方法
conda install -c conda-forge mpi4py openmpi