在做ros noetic仿真实验时发现gazebo掉帧严重电脑发烫。后来发现lshw -c video 显示显卡状态为 **UNCLAIMED**,表明系统检测到硬件但未加载驱动。即系统是cpu软件渲染而非gpu加速。后来了解到我的电脑显卡是amd radeon 780m,采用rdna3架构对于Ubuntu20.04的5.15版本内核来说太新了,识别不出来。
我也尝试过安装6.8版本的内核但是Ubuntu 20.04 默认的 libc6 版本是 2.31,而6.8+ 内核需要 libc6 >= 2.38(Ubuntu 22.04 及以上版本)而且缺少libelf1t64和 libssl3t64两个包,这好像是22.04+才有。所以当安装并进入这个版本的内核,就无法进入桌面而是停留在登录页面,输入密码以后,没有反应又要重新输入,形成了“输入密码->闪一下->又回到登录界面”的死循环
求各位的帮助🙏
amd rdna3架构显卡与Ubuntu20.04的适配性问题
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
5条回答 默认 最新
檀越@新空间 2025-07-30 02:04关注上午好☀️☀️☀️️
本答案参考通义千问你目前遇到的问题是AMD RDNA3架构显卡(如Radeon 780M)在Ubuntu 20.04系统中无法被正确识别和驱动,导致Gazebo等图形应用性能严重下降,甚至出现系统不稳定、死循环等问题。这是一个硬件兼容性与内核版本不匹配的问题。
✅ 问题总结:
- 显卡状态为 UNCLAIMED,说明系统没有加载对应的GPU驱动。
- RDNA3架构的显卡需要较新的Linux内核支持(如5.19以上),而Ubuntu 20.04默认使用的是5.15内核。
- 尝试升级内核到6.8版本时,因libc6版本过低和依赖包缺失,导致系统进入登录界面后无法正常启动,形成死循环。
🛠️ 解决方案:
第一步:确认显卡型号和驱动需求
- 使用命令查看显卡信息:
lshw -c video输出应类似:
*-display description: VGA compatible controller product: AMD Radeon 780M vendor: Advanced Micro Devices, Inc. [AMD/ATI] physical id: 1 bus info: pci@0000:01:00.0 version: c0 width: 64 bits clock: 33MHz capabilities: pm msi pciexpress vga_controller configuration: driver= (none) resources: iomem:fc000000-fdffffff ioport:e000(size=256) memory:fc000000-fdffffff memory:d0000000-d1ffffff
重点: 显卡未被驱动加载(driver=(none)),表示没有合适的驱动程序。
第二步:安装适合的Linux内核版本
❗注意:Ubuntu 20.04的默认 libc6 是 2.31,而6.8+ 内核需要 libc6 >= 2.38(Ubuntu 22.04及以上)
因此,直接升级到6.8内核会导致系统崩溃或死循环。
✅ 推荐方案:
-
使用 Ubuntu 22.04 或更高版本(推荐):
- RDNA3架构显卡在Ubuntu 22.04及以后版本中已得到良好支持。
- 可以考虑将系统升级到 Ubuntu 22.04 LTS 或 Ubuntu 23.04。
-
如果必须使用 Ubuntu 20.04,可以尝试以下方法:
第三步:尝试安装较新内核(5.19以上)并解决依赖问题
1. 安装最新可用的内核(例如 5.19)
-
添加官方内核仓库:
sudo apt install software-properties-common sudo add-apt-repository ppa:kernel-ppa/mainline sudo apt update -
查看可用内核版本:
apt-cache search linux-image -
安装某个版本(如 5.19.10):
sudo apt install linux-image-5.19.10-1 -
更新 GRUB:
sudo update-grub -
重启后选择新内核启动。
2. 安装必要的依赖库
-
如果系统提示缺少
libelf1t64和libssl3t64,可以尝试从 Ubuntu 22.04 的仓库中手动下载并安装:-
下载包(需在 Ubuntu 22.04 系统中获取):
libelf1t64libssl3t64
-
使用
dpkg安装(注意版本匹配):sudo dpkg -i libelf1t64_0.185-1build1_amd64.deb sudo dpkg -i libssl3t64_3.0.2-0ubuntu1.13_amd64.deb
注意: 手动安装可能会引发其他依赖问题,建议优先考虑升级系统版本。
-
第四步:安装AMD开源驱动(amdgpu)
1. 启用主仓库(适用于Ubuntu 20.04):
sudo add-apt-repository ppa:oibaf/graphics-drivers sudo apt update2. 安装 amdgpu 驱动:
sudo apt install xserver-xorg-video-amdgpu注意: RDNA3 架构可能需要更高级的驱动版本,建议使用 Ubuntu 22.04 或更高版本。
第五步:验证驱动是否加载成功
重启后运行:
lspci | grep -i vga glxinfo | grep "OpenGL renderer"- 应该能看到类似:
OpenGL renderer string: AMD R780M (RDNA3, 0x73ff)
第六步:优化Gazebo性能(ROS Noetic)
1. 确保使用 GPU 渲染模式:
- 在 Gazebo 中设置渲染器为
ogre或opengl:export GAZEBO_RENDERING_ENGINE=ogre
2. 检查环境变量:
echo $DISPLAY确保输出类似:
:03. 使用
nvidia-smi(如果你有 NVIDIA 显卡)或radeontop(AMD)监控 GPU 使用情况。
✅ 最终建议:
| 项目 | 建议 | |------|------| | 操作系统 | 升级到 Ubuntu 22.04 LTS 或更高版本(推荐) | | 内核版本 | 使用 5.19+ 或 6.8+(需确保 libc6 和依赖项兼容) | | 驱动 | 安装 amdgpu 驱动(适用于 RDNA3 架构) | | Gazebo 性能 | 设置
GAZEBO_RENDERING_ENGINE=ogre并检查 GPU 使用率 |
📌 代码示例:安装 amdgpu 驱动(Ubuntu 20.04)
# 添加第三方仓库 sudo add-apt-repository ppa:oibaf/graphics-drivers sudo apt update # 安装 amdgpu 驱动 sudo apt install xserver-xorg-video-amdgpu # 重启系统 sudo reboot
🔚 结论:
你的问题是由于 AMD RDNA3 架构显卡与 Ubuntu 20.04 内核版本不兼容 导致的。最稳妥的解决方案是升级到 Ubuntu 22.04 或更高版本,以获得更好的硬件支持和稳定性。如果必须保留 Ubuntu 20.04,可以尝试安装较新的内核并手动处理依赖问题,但风险较高。
如有进一步问题,请提供以下信息:
lspci -vuname -adpkg -l | grep linux-imagedpkg -l | grep libssldpkg -l | grep libelf
我会为你进一步分析!
解决 无用评论 打赏 举报