找回密码
 加入我们
搜索
      
查看: 1761|回复: 21

[显卡] 为什么我多开玩游戏的时候除了当天窗口,其他窗口都会变得很卡只有几帧

[复制链接]
发表于 2025-3-30 00:24 | 显示全部楼层 |阅读模式
我用的4090,一旦多开玩游戏,除了当前活动的窗口其他窗口的都会变卡,这是为啥?
发表于 2025-3-30 00:27 来自手机 | 显示全部楼层
"It's not a bug, it's a feature."
N卡驱动,限制后台帧率
 楼主| 发表于 2025-3-30 00:39 | 显示全部楼层
InuYasha 发表于 2025-3-30 00:27
"It's not a bug, it's a feature."
N卡驱动,限制后台帧率

但我在Nvidia控制面板里没看到这个设置
发表于 2025-3-30 00:56 来自手机 | 显示全部楼层
擎天柱首领 发表于 2025-3-30 00:39
但我在Nvidia控制面板里没看到这个设置

说明你找得不够用心
1000024346.png
发表于 2025-3-30 01:13 来自手机 | 显示全部楼层
InuYasha 发表于 2025-3-30 00:56
说明你找得不够用心

这跟N卡驱动没有任何关系,A卡也这样,都是显卡资源优先保证前台应用帧率
 楼主| 发表于 2025-3-30 01:13 | 显示全部楼层
InuYasha 发表于 2025-3-30 00:56
说明你找得不够用心

是我玩的游戏后台锁帧,而且是默认开启,没有给设置。
发表于 2025-3-30 01:14 来自手机 | 显示全部楼层
那么问题来了,显卡占用多少?
 楼主| 发表于 2025-3-30 01:20 | 显示全部楼层
PPXG 发表于 2025-3-30 01:14
那么问题来了,显卡占用多少?

4090也没占用多少,是游戏的问题,强行后台锁帧,无解。
发表于 2025-3-30 01:33 | 显示全部楼层
系统调度问题。如果是intel大小核,非前台应用极大概率被放到小核上。最严重的时候wsl在后台的编译任务几乎无法进行。
改善方法是及时更新ppkg预配包。
但是无法根治非前台程序被调度到小核导致效率极低的问题,比如在虚拟机里面装个程序,只要当前虚拟机窗口没有获得焦点,那么安装进度会慢到令人无法忍受。
根治方法是抛弃大小核。抛弃不了就只能忍受。
发表于 2025-3-30 06:03 来自手机 | 显示全部楼层
9楼说的对。
发表于 2025-3-30 09:12 | 显示全部楼层
Compiler 发表于 2025-3-30 01:33
系统调度问题。如果是intel大小核,非前台应用极大概率被放到小核上。最严重的时候wsl在后台的编译任务几乎 ...

“非前台应用极大概率被放到小核上”

那么 游戏最小化,算非前台吗?


或者说系统如何定义的非前台和前台
发表于 2025-3-30 10:49 来自手机 | 显示全部楼层
擎天柱首领 发表于 2025-3-30 01:20
4090也没占用多少,是游戏的问题,强行后台锁帧,无解。

那看来是游戏内部设置的非常前台自动降低帧数了
发表于 2025-3-30 11:58 | 显示全部楼层
有些游戏默认设置就是这样的,比如诛仙,不过诛仙可以修改设置,让非当前窗口也保持帧数
发表于 2025-3-30 15:01 | 显示全部楼层
怎么不说说自己的使用平台和环境呢
发表于 2025-3-30 15:03 | 显示全部楼层
Compiler 发表于 2025-3-30 01:33
系统调度问题。如果是intel大小核,非前台应用极大概率被放到小核上。最严重的时候wsl在后台的编译任务几乎 ...

那我AMD的5950x为啥也有这个问题。。。
发表于 2025-3-30 22:33 | 显示全部楼层
没遇到这个问题
发表于 2025-3-31 09:10 | 显示全部楼层
cuixiang 发表于 2025-3-30 09:12
“非前台应用极大概率被放到小核上”

那么 游戏最小化,算非前台吗?

实际上只要窗口失去焦点就是“非前台”。如果你写过有图形界面的程序就会很容易明白这一点。
但Windows的调度逻辑比较复杂。对于命令行这种没有图形界面的程序,似乎是只要父进程(终端窗口)处于前台(即能够接受输入)就会将子进程也算作是前台,此时这个进程树全部运行在大核上。只要终端失去焦点(无论是否最小化),其子进程都会算作后台,性能会降低到几乎无法工作。
具体的调度逻辑说不清楚,上面的情况有时候会有例外,但没什么规律,总之非常烂。同样使用大小核的macOS就没这种问题。
最小化肯定不是前台了,哪怕只有这一个窗口,只要最小化就不是前台。
发表于 2025-3-31 09:16 | 显示全部楼层
本帖最后由 Compiler 于 2025-3-31 09:18 编辑
MstrG 发表于 2025-3-30 15:03
那我AMD的5950x为啥也有这个问题。。。


Windows10/11的调度逻辑是基于intel的,对于amd尤其是双ccd版本一样非常烂。
amd自己的芯片组驱动再搭配ppkg预配包可以缓解,但仍然无法根治。
Windows对不同核心的调度是一团糟,超线程这种看起来没区别的情况都搞不太好,双ccd更是灾难了。如果一个程序的多个线程被放到不同的ccd上,那运行效率会非常惨。
想要调度问题最小,就使用单ccd且所有核心完全相同的处理器。其次的解决方案是等amd出超级x3d处理器,用一块大的x3d缓存把两个ccd连起来。最方便的解决方案是用一些工具软件设置进程的cpu亲和性(把某个进程绑定到某个cpu核心)。最简单但不保证百分百有效的是使用amd推荐的完整芯片组驱动、ppkg预配包和电源管理方案。
发表于 2025-3-31 09:25 | 显示全部楼层
Compiler 发表于 2025-3-31 09:10
实际上只要窗口失去焦点就是“非前台”。如果你写过有图形界面的程序就会很容易明白这一点。
但Windows的 ...

大致懂了。。。
发表于 2025-3-31 09:28 | 显示全部楼层
学习了··
 楼主| 发表于 2025-3-31 21:04 | 显示全部楼层
Compiler 发表于 2025-3-31 09:16
Windows10/11的调度逻辑是基于intel的,对于amd尤其是双ccd版本一样非常烂。
amd自己的芯片组驱动再搭配p ...

intel没办法嘛?用win10也不行?
发表于 2025-4-1 14:27 | 显示全部楼层
擎天柱首领 发表于 2025-3-31 21:04
intel没办法嘛?用win10也不行?

Win10对大小核的优化普遍来说比Win11差。
Intel要解决的话,可以试试关掉所有小核,然后用Win10。理论上来说可能会好一点。
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

Archiver|手机版|小黑屋|Chiphell ( 沪ICP备12027953号-5 )沪公网备310112100042806 上海市互联网违法与不良信息举报中心

GMT+8, 2025-4-26 20:09 , Processed in 0.012012 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2007-2024 Chiphell.com All rights reserved.

快速回复 返回顶部 返回列表