如何最简单地检查Wine是否使用我的独立显卡(AMD)?

我正在使用专用的AMD GPU(HD 8570M),并且它已经正确安装在我的系统中。
  *-display                 
   description: Display controller
   product: Sun PRO [Radeon HD 8570A/8570M]
   vendor: Advanced Micro Devices, Inc. [AMD/ATI]
   physical id: 0
   bus info: pci@0000:01:00.0
   version: 00
   width: 64 bits
   clock: 33MHz
   capabilities: pm pciexpress msi bus_master cap_list rom
   configuration: driver=amdgpu latency=0
   resources: irq:26 memory:b0000000-b7ffffff memory:b8000000-b803ffff ioport:4000(size=256) memory:b8040000-b805ffff

但是在Wine中玩游戏时,几乎无法流畅进行,而在Windows中它们确实运行顺畅,我可以确认Windows实际上使用了GPU。我怀疑Wine使用了我的集成英特尔显卡。
我该如何在Wine中检查这一点?有没有简单的方法来弄清楚呢?

我只是想帮助你。这可能对你有所帮助。在论坛https://forum.winehq.org/viewtopic.php?t=30494上说:“混合图形的问题通常不是Wine的问题...” - Ajay
你是如何启动游戏的?你使用 DRI_PRIME 吗? - int_ua
是的,我正在使用 DRI_PRIME - Liso
1个回答

要检查所使用的图形卡,您可以使用带有wgl通道的WINDEBUG环境变量。
示例:
WINEDEBUG=+wgl wine game.exe &> wine.log

Wine将会输出类似于这样的内容
0036:trace:wgl:X11DRV_WineGL_InitOpenglInfo GL version             : 3.0 Mesa 19.2.8.
0036:trace:wgl:X11DRV_WineGL_InitOpenglInfo GL renderer            : Mesa DRI Intel(R) HD Graphics 630 (Kaby Lake GT2) .
0036:trace:wgl:X11DRV_WineGL_InitOpenglInfo GLX version            : 1.4.
0036:trace:wgl:X11DRV_WineGL_InitOpenglInfo Server GLX version     : 1.4.
0036:trace:wgl:X11DRV_WineGL_InitOpenglInfo Server GLX vendor:     : SGI.
0036:trace:wgl:X11DRV_WineGL_InitOpenglInfo Client GLX version     : 1.4.
0036:trace:wgl:X11DRV_WineGL_InitOpenglInfo Client GLX vendor:     : Mesa Project and SGI.
0036:trace:wgl:X11DRV_WineGL_InitOpenglInfo Direct rendering enabled: True

参考资料: