我有两个显示器连接到两个不同的 GPU,我希望负载像它们连接一样被分割。问题是事实并非如此,一切(视频解码)都是由主 GPU 计算的,尽管它显示在第二个显示器上。互联网上有很多类似的问题,但没有一个能解决我遇到的问题。
就谷歌问题而言,我想要实现的结果是不可能的,尽管也许有些软件可以实现这一点?
我想在这个问题中提到的确切问题与选择每个应用程序使用哪个 GPU. 如果不是因为Windows 表示,省电和最大性能的最佳 GPU 是相同的 GPU,不允许我使用任何可用的解决方案来解决问题。
所以我想问两个问题:
是否可以使用显示器所连接的 GPU 强制渲染?
我可以手动告诉 Windows 哪个 GPU 更适合省电或其他配置文件吗?
编辑:我的显卡是 GTX 1060 和 GT 730,每个 GPU 连接一个显示器。
答案1
答案2
我发现了一个非常糟糕的解决方法。
Windows 10 似乎总是选择同一张卡作为高性能和省电模式。
每当启动一个程序时,它都会绑定到当前选定的 GPU,直到关闭为止(在运行时切换 GPU 对于游戏之类的东西来说将是一场噩梦,所以这是一个安全的选择)
如果没有显示器连接到 GPU,并且它之前是主 GPU,则 Windows 会将主 GPU 切换到下一个至少连接有一台显示器的 GPU。
这意味着您可以断开连接到 GPU Windows 默认的显示器,启动您想要绑定到辅助 GPU 的程序,然后在启动后重新连接显示器。
已经在没有显示器的 GPU 上运行的程序将继续正常运行。
顺便说一句,一旦我关闭显示器电源,它就会断开连接,所以这个过程并不那么痛苦。
答案3
对于 Windows 10,似乎可以通过注册表破解强制 GPU 分别成为节能 GPU 和性能 GPU:
- 导航至 Regedit
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}
- 找到包含所需 GPU 的四位数字子文件夹(例如通过
DriverDesc
里面的密钥) DWORD
在两个四位数文件夹中创建一个新密钥,并将其命名为EnableMsHybrid
1
将其设置为性能 GPU的值2
将其设置为节能 GPU的值
- 重启。设置应用程序应为每个应用程序的图形设置提供 GPU 设置。
此方法的注意事项:
- 它仅适用于 2 个 GPU,任何额外的 GPU 都仍然会浪费
- 该设置仅适用于 DirectX 和 Vulkan,不适用于 OpenGL
- 至少对于 Nvidia 卡来说,可以通过其控制面板应用程序选择 OpenGL GPU
- 无法通过“设置”应用选择默认 GPU,它仍然是性能 GPU