nvidia --msi
发现驱动版本较低,cuda版本建议的是11.4,或者更低,因为cuda向下兼容
nvcc -V发现
实际版本12.3,由于是服务器,咱也不敢升级驱动,只能摸索着装环境。
试了
pip install torch==1.10.1+cu113 torchvision==0.11.2+cu113 torchaudio==0.10.1 -f https://download.pytorch.org/whl/torch_stable.html
不行
又试了
pip install torch==1.13.0+cu117 torchvision==0.14.0+cu117 torchaudio==0.13.0 --extra-index-url https://download.pytorch.org/whl/cu117
成功
如果遇到新建环境时空间不足,或者用conda下载包时,没有空间
你可以尝试先清理缓存空间
conda clean --all
conda clean --all
是一个在基于 Conda 包管理器和环境管理器的系统中使用的命令,它用于清理不必要的文件和释放空间。这个命令会删除许多不同类型的不需要的文件,包括缓存的包、索引缓存、锁文件、日志文件等。
以下是 conda clean --all
命令涉及的主要内容:
-
清除包缓存:删除下载的包文件,这些文件通常存储在
~/anaconda3/pkgs/
或~/miniconda3/pkgs/
目录下。 -
清除索引缓存:删除缓存的包索引,这些索引用于加速搜索和安装过程。
-
删除锁文件:移除在安装过程中创建的锁文件,这些文件用于同步多个 Conda 会话。
-
删除日志文件:清除 Conda 的日志文件,通常位于
~/anaconda3/var/log/
或~/miniconda3/var/log/
。 -
删除无用的缓存:移除所有其他类型的缓存文件,如环境的
.conda
目录下的pkgs
和envs
目录。 -
节省空间:该命令的最终目的是释放磁盘空间,特别是当你下载了许多包但随后又删除了它们时。
-
安全性:
--all
参数告诉 Conda 清理所有类型的文件,而不仅仅是默认的某些类型。
使用 conda clean --all
可以有效地管理磁盘空间,特别是在有限空间的系统上。然而,请注意,在执行此命令时要谨慎,因为它可能会删除有用的文件,尤其是如果你正在使用自定义的 Conda 配置或有特殊的存储需求。
如果还是不行,而是缓存目录的磁盘空间不足,可以修改自己的conda缓存目录。
你需要在自己的主目录,也就是home,也就是~,文件夹下的 .condarc
文件中手动设置,注意是home下的,这个是你自己的,别修改全局的
手动编辑 .condarc
文件
-
找到你的
.condarc
文件,它通常位于用户的 home 目录下。 -
使用文本编辑器打开
.condarc
文件。 -
直接编辑文件,添加或修改
pkgs_dirs
项,如下所示:pkgs_dirs: - /your/path/.conda/pkgs
如果是你用pip显示空间不足,那么修改pip的缓存目录:
export PIP_CACHE_DIR="/tj_dev/luzhiming/envs/pt1/.cache"
如果明明显示有空间,但是还是空间不足,安装包下载到一半不下载了,那么可以修改tmp文件夹,我理解的是他会先在这个TMPDIR里面下载,下载完成之后将包转移到PIP_CACHE_DIR存储。然后安装。
export TMPDIR=/tj_dev/luzhiming/temp
安装pytorch过程中,遇到了pytorch-lightning版本的问题。按他的提示范围,直接用下面的类似命令安装
pip install "pytorch-lightning>=1.4,<1.5"
后面跑程序的过程中又遇到了torchmetrics报错。
from torchmetrics.utilities.data import get_num_classes as _get_num_classes ImportError: cannot import name 'get_num_classes' from 'torchmetrics.utilities.data' (/tj_dev/luzhiming/envs/pt1/lib/python3.8/site-packages/torchmetrics/utilities/data.py)
pip install torchmetrics==0.5
后面又遇到报错:
File "/home/luzhiming/.local/lib/python3.8/site-packages/torch/utils/tensorboard/__init__.py", line 4, in <module> LooseVersion = distutils.version.LooseVersion AttributeError: module 'distutils' has no attribute 'version'
原因是setuptools版本太高,
重装setuptools
pip install setuptools==59.5.0
其他的一些包的安装,需要就安装。直接用pip install 包名就可以,觉得慢可以换源
pip install scanpy -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install easydl -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install einops -i https://pypi.tuna.tsinghua.edu.cn/simple