我的笔记本电脑运行的是 Ubuntu 18.04,配备了集成的 Intel 和专用的 NVIDIA GPU,使用了 Optimus 技术。我使用的是 nvidia-340 驱动程序,是从 apt 安装的。
我需要 CUDA,这样我才能在 GPU 上运行 tensorflow 代码,所以首先我需要升级我的驱动程序。我从官方网站下载了旧版 390 驱动程序并安装它,它似乎运行良好。然后我继续安装 CUDA 9,但由于某种原因,示例无法运行,所以我知道出了问题。
重启后,Ubuntu 在我登录后立即开始冻结。桌面图标、背景未加载,无法移动鼠标指针。
清除 NVIDIA 驱动程序并再次安装 340 也无济于事。在这种情况下,当我启动时,它会卡在黑屏上,上面有绿色“[OK]”勾选的项目。启动 gnome 时它似乎冻结了。
我尝试了 GRUB 中的“nomodeset”和各种“acpi_os”选项。没有帮助。
我能做到的最好的事情就是再次清除所有 NVIDIA 驱动程序(驱动程序默认为 nouveau)。然后我启动、登录、进入桌面并可以使用所有内容,但分辨率太荒谬了:960x540。只有一种选择(更糟糕的分辨率)。
今天看了很多 askubuntu 问题和 YouTube 视频后,我仍然不知道下一步该怎么做。请帮忙。
答案1
来自英特尔 GPU 页面Geforce 和 Titan
我们看到 GT 720M 的计算能力为 2.1。这对于 CUDA 9.0 来说太低了,但对于 CUDA 8.0 来说仍然足够。但是,Tensorflow 有自己的计算能力要求,而且它们也高于您(和我)机器上的 2.1。甚至 dnn 的要求也更高,因此虽然可能可以运行一些 9.0 示例,但您可能需要更强大的 GPU 来完成您想要做的事情。现在,PATH 和 LD_LIBRARY_PATH 修改在英特尔设置 CUDA 的说明中进行了明确描述,基本上就是添加 CUDA 提供的 bin 和 lib 目录。
从标准存储库返回 Nvidia 驱动程序,删除您确定的抑制 nouveau 驱动程序的文件。重新启动后,您应该会恢复到不错的分辨率。安装“软件和更新”/“其他驱动程序”选项卡中建议的 Nvidia 驱动程序。
Alt-f3 等键会调出虚拟终端吗?尝试使用 Alt-f7 进入桌面。如果不起作用,请尝试恢复 grub 启动选项以返回桌面。检查剩余配置更改的其他位置是 /etc/default/grub,GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" 中可能还剩有一个 nomodeset。使用 lshw -c video 检查正在使用的驱动程序(我猜应该是恢复中的 nouveau)。
检查 /etc/modprobe.d 文件中是否有任何将 nvidia 列入黑名单的行。唯一预期的是帧缓冲区的 nvidiafb。此站点上有很多 Nvidia 黑屏问题和答案,请使用搜索查看其中的任何修复方法是否适合您。