You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

WSL Ubuntu环境下CUDA 11.8安装进程异常卡顿的问题求助

WSL Ubuntu环境下CUDA 11.8安装进程异常卡顿的问题求助

问题描述

我想在WSL Ubuntu环境下安装CUDA 11.8,这样就能用GPU跑TensorFlow了(因为TensorFlow只支持到11.8版本)。我跟着教程里的命令操作,最后一步安装时,进程开始发送一堆Get请求、解压各种包,但到libcublas-dev-11-8这个包的时候,解压已经跑了大概21小时,任务管理器显示它占用不到1%的CPU、约300MB内存,磁盘几乎没读写。

更新:我重启电脑终止进程后重新运行命令,这次libcublas-dev-11-8的解压完成了,但现在卡在“Selecting previously unselected package libnvjpeg-dev-11-8.”,这次占用了10GB内存,但CPU还是没什么使用率。

想问下这是安装出问题了吗?还是我应该继续等?如果是出问题了,该怎么修复?要是还能等的话,大概还要多久?

解决方案

兄弟,这种情况绝对是安装进程异常了,正常情况下CUDA包的解压和安装不会耗时这么久,也不会出现内存占满但CPU躺平的情况,别硬等了,试试下面这些办法:

  • 先终止卡住的进程,修复dpkg状态
    别直接重启电脑,先通过命令结束异常的apt/dpkg进程:

    1. 执行ps aux | grep aptps aux | grep dpkg找到对应的进程ID(PID)
    2. kill -9 <PID>强制终止进程(把换成你找到的进程号)
    3. 修复dpkg的异常状态:sudo dpkg --configure -a
  • 清理缓存后重新在线安装
    在线安装时缓存的包可能损坏,导致解压卡住,清理后重新下载:

    1. 清理本地缓存的安装包:sudo apt clean
    2. 清理旧的无用缓存:sudo apt autoclean
    3. 重新执行CUDA安装命令,比如sudo apt install cuda-11-8(根据你教程里的命令调整)
  • 调整WSL的资源分配
    你提到第二次卡住时占用了10GB内存,大概率是WSL默认的内存分配策略出问题了,导致内存耗尽引发卡顿。可以手动配置WSL的资源:

    1. 在Windows的用户目录(比如C:\Users\你的用户名)下创建或编辑.wslconfig文件,添加以下内容(根据你的电脑配置调整数值):
      [wsl2]
      memory=8GB  # 给WSL分配8GB内存,避免占用过多系统内存
      processors=4  # 分配4个CPU核心
      swap=4GB  # 设置交换空间,防止内存不足
      
    2. 保存后,在Windows命令提示符里执行wsl --shutdown重启WSL,再打开Ubuntu重新执行安装命令
  • 改用离线安装包手动安装
    如果在线安装一直卡,直接用离线包本地安装更稳妥:

    1. 下载对应你Ubuntu版本的CUDA 11.8离线deb包(选local版本,不要network版本)
    2. 执行sudo dpkg -i 你的deb包文件名.deb安装repo
    3. 添加GPG密钥:sudo apt-key add /var/cuda-repo-ubuntu2004-11-8-local/7fa2af80.pub(路径根据你的repo包调整)
    4. 更新源并安装CUDA:sudo apt update && sudo apt install cuda-11-8

额外注意事项

  • 确保你的WSL是最新版本,执行wsl --update更新WSL内核
  • 检查Ubuntu系统的磁盘空间,CUDA 11.8安装大概需要10GB以上的空闲空间
  • 安装前可以先执行sudo apt update && sudo apt upgrade把系统包更新到最新,避免兼容性问题

备注:内容来源于stack exchange,提问作者shan

火山引擎 最新活动