「已解决」动态切换intel+amd笔记本显卡运行应用
Tofloor
poster avatar
司南
deepin
2018-12-12 19:44
Author
本帖最后由 sinan 于 2018-12-12 16:30 编辑

初衷是使用amd显卡玩steam上的游戏,现在先放出教程

第一步:首先查看一下双显卡方案是否支持新动态切换方案-ATI动态可切换图形方案。
终端执行命令“sudo cat /sys/kernel/debug/vgaswitcheroo/switch”
终端输出如下信息(不完全相同):
0IS: :DynOff:0000:05:00.0
1:IGD:+wr:0000:00:02.0
IGD指intel集成显卡,DIS表示独立显卡,+号表示当前用于显示输出的显卡,"wr"表示正在供电,"Off"表示未供电。后面“0000:00:02.0”这样的一串数字表示硬件接口识别码(pci)。
关键来了!支持动态切换方案的amd显卡的“是否供电”标志显示为"DynOff"或"DynOn"。
如果你的电脑支持动态切换显卡的话就继续往下看,否则请另请高明吧。

第二步:查看机器上所有显卡硬件
终端执行命令:“xrandr --listproviders
终端输出如下信息(不完全相同):
Providers: number : 2
Provider 0: id: 0x6a cap: 0x9, Source Output, Sink Offload crtcs: 3 outputs: 2 associated providers: 1 name:modesetting
Provider 1: id: 0x45 cap: 0x6, Sink Output, Source Offload crtcs: 6 outputs: 0 associated providers: 1 name:VERDE @ pci:0000:05:00.0
以上信息显示我的笔记本上有两个显卡,其中“Provider 1”的name就表明了这个设备是Cape Verde架构,pci为0000:05:00.0的设备,也就是笔记本上的amd独立显卡啦。需要记住amd独立显卡的编号为1

第三步:只需要在终端执行”“DRI_PRIME=1 xxx”就能用amd显卡运行xxx程序啦!
终端执行“DRI_PRIME=1 glxinfo | grep "OpenGL renderer"”可以测试现在使用的哪个显卡。

第四步:菜单中的应用使用amd显卡驱动显示
在菜单中的应用图标文件的Exec那一行添加一句话“DRI_PRIME=1”,之后在菜单里打开该应用就会使用AMD显卡驱动显示了。
举个例子:修改steam.desktop文件
Exec=sh -c 'DRI_PRIME=1 STEAM_FRAME_FORCE_CLOSE=1 steam' %U




参考:
用 vga_switcheroo 在 Linux 下(开启 KMS)彻底关闭某一可切换显卡的简单教程
Ubuntu论坛-独立显卡显示dynoff是什么意思?
ArchWiki-PRIME (简体中文)





Reply Favorite View the author
All Replies
avatar
182******10
deepin
2022-09-10 00:55
#1

第四步、菜单中的应用使用amd显卡驱动显示

在菜单中的应用图标文件的Exec那一行添加一句话“DRI_PRIME=1”,之后在菜单里打开该应用就会使用AMD显卡驱动显示了。

举个例子:

修改steam.desktop文件:

Exec=sh -c 'DRI_PRIME=1 STEAM_FRAME_FORCE_CLOSE=1 steam' %U

这个部分具体怎么操作?右键?

Reply View the author