pytorch-gpu 版本安装以及 Linux 磁盘空间管理

文章讲述了在安装PyTorchGPU版本时遇到的问题,包括如何在环境文件中指定GPU版本和解决cudatoolkit的匹配问题。此外,还提到了因安装PyTorch导致的Linux磁盘空间不足,介绍了使用condaclean释放空间和利用Linux命令进行磁盘管理的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天遇到了几个有意思的问题,折腾了一天,总算是解决了。记录一下,之后如果再遇到,或者大家有类似的问题,可供参考。


安装 pytorch GPU 版本

name: nlp
channels:
  - defaults
dependencies:
  - python==3.9.0
  - numpy>=1.19.2
  - tqdm>=4.56.0
  - pytorch==1.12.0
  - transformers
  - datasets

我一开始用上面的 environment.yml 新建一个虚拟环境。但用它跑 pytorch 模型的时候,总感觉很慢。后来发现原来 torch.cuda.is_available() 是 False。得,服务器的 GPU 根本没用上。

于是我开始安装 pytorch GPU 版本。去官网上找,安装命令如下:

conda install pytorch pytorch-cuda=11.7 -c pytorch -c nvidia

此时我才发现,原来 GPU 版本就是 CPU 版本加上 cudatoolkit,stackoverflow 上的讨论也印证了这一点:Can both the GPU and CPU versions of PyTorch be installed in the same Conda environment?

那么如何在 environment.yml 文件里指定安装 pytorch GPU 版本呢?摸索一番并实践后,可以这样写:

name: nlp
channels:
  - pytorch
  - nvidia
  - defaults
dependencies:
  - python==3.9.0
  - numpy>=1.19.2
  - tqdm>=4.56.0
  - pytorch==1.12.0
  - cudatoolkit=10.2
  - transformers
  - datasets=2.7.1

有两点变化:

  • 指定 pytorchnvidia 作为优先级更高的 channels
  • 在依赖中添加 cudatoolkit

注意 cudatoolkit 的版本号,要根据 GPU 驱动来确定。通过 nvcc --version 查看 Runtime CUDA 的版本。我这里的 CUDA 版本是 11.2,因此选择了版本更低的 cudatoolkit=10.2

如果不了解 CUDA, cudatoolkit 这些概念,可以参考:PyG 安装以及关于 CUDA 的扩展


datasets 的 bug

如果 datasets 的版本是 2.6.1 或 2.7.0,可能会遇到这个 bug,详见 Github issue

TypeError: can only concatenate str (not “int”) to str

这时需要升级一下:

pip install -U datasets

Linux 空间管理

pytorch GPU 版本占的空间是很大的。今天在安装的时候,服务器的磁盘空间达到了限额。没办法,只能删一些不必要的文件了。

首先,可以使用 conda clean --all 删除一些压缩包、不常用的 packages 以及 conda 的一些缓存文件。通常可以清出几个 GB 的空间,相当可观。参考讨论:Is it safe to manually delete all files in pkgs folder in anaconda python? 特别地,讨论中提到,在 Linux 或者 Windows 下,都可以例行清理 conda 的 pkgs 文件夹,里面只是一些缓存文件 (the ‘pkgs’ directory is only a cache)

注:conda clean --packagesconda clean --all 的子命令,前者包含于后者。

然后,查看一些其他的非必要文件。两个很有用的 Linux 命令:

rm -rf dir_name :强制删除整个(非空)文件夹。

du -h --max-depth=1: 查看当前目录下磁盘使用情况,隐藏文件也会被列出。如何理解这一命令:linux command explain du -h --max-depth=1

以我的情况来说,.cache 文件夹占的空间不小,可以酌情清理;至于其他的项目文件,就具体情况具体分析了。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值