dirbackif01 发表于 2024-3-21 20:27

关于intel apo技术的简单测试和猜想

本帖最后由 dirbackif01 于 2024-3-23 11:55 编辑

1、测试结果

简单在1080p下测试了四个游戏,结果属于是有些幽默了:





除了地铁离去以外,ff14的提升只能说聊胜于无,剩下两个甚至是负优化。


地铁离去是首发apo即支持的游戏,换句话说,新添加的游戏仅我测试的,2/3是负优化。


另外可以看到,apo并不是直接按照游戏分配线程,系统电源计划会严重影响apo的运行(这个很重要)。


2、结果分析

地铁和看门狗有benchark,这两个也是变化最大的两个游戏,就以这两个游戏进行分析。

地铁离去提升明显,原因比较好理解;

这是默认状态下线程占用:



差不多占用24个逻辑核心,和149k的物理核心数量一致,游戏设置的线程池应该就是24.

这是apo状态下的线程占用:



占用8个线程,正好对应8个物理大核心。这时候8个大核心均处于将将吃满的状态,可以认为8个线程是地铁合适的优化。

之前有网友认为apo就是屏蔽小核和ht的东西,用process lacoo一样能做到,那么手动绑定亲和性到8个大核心上,是否可以做到一样的效果呢?

事实上并不可以。

我尝试使用process lasso或者直接使用任务管理器绑定大核心亲和性,结果是根本不能正常游戏,爆卡。

那么,在bios里面关掉小核心是否可行?

如可。

关掉小核心以后,游戏会占用满16个线程,帧数和不关基本无差别;只有继续把超线程也关掉,只留下8个物理大核心,才能做到和apo相同甚至更高的帧数。这也验证了8线程优化最佳的结论。但问题来了,手动绑定线程和apo启动游戏区别又在哪里呢?线程数量冲突?

实际上默认电源策略下apo看门狗军团的帧数倒退,表现和在地铁离去里面手动绑定线程的情况很类似:



仅仅使用4个满载线程,其他所有核心看戏,表现为爆卡。apo在149kf平台运行下,只会使用四个物理核心。

测试出来最佳的帧数是使用https://ngabbs.com/read.php?tid=39471892的纯大核心策略:



16个线程均有占用,换算下来大概是9-10个接近满占用的大核心线程是比较合适的。apo给的4个线程占用是完全不够的。

为什么使用apo+纯大核心策略能让帧数稍微高一点呢?

因为使用这个策略能占用到8个线程:



依旧是使用4个物理核心但是启用了核心对应的smt,默认电源策略下因为coreparking优先度的问题无法正常启用SMT。从这里可以看出来,看门狗中smt效率还是比较高的。并不是所有游戏smt在超过需要8个pcore线程的游戏中都是副作用,事实上2077中使用smt的效率也比小核心要高。

3.结论与猜想

apo并不是像之前猜想的单纯在游戏中屏蔽小核心或者线程分配,而是为游戏选择合适的线程池,以及对应的物理核心数量(不是逻辑核心数)。这点从电源计划设置能影响apo运行可以明显看出。

提升比较大的地铁离去,对于149k来说合适的线程池为8,对应物理核心数量8,无论使用默认电源策略(占用8个pcore逻辑核心)或者纯大核心策略(占用pcore16个逻辑核心),使用8个物理大核心(8+0)都能比原有占用24个物理核心(8+16)有极大提升。

负提升的看门狗,合适的物理核心数量应该为9-10(按pcore核心算力计算),对应的物理核心应该为12-14个pcore逻辑核心(占用smt),或者8p+3e(我没有的彩6开启apo就是这个线程逻辑,同样提升很大)。但目前apo仅仅使用4个物理核心,自然会导致负优化。

这里分享一篇隔壁讨论cs2帖子楼中发出来的文章,作者为nvidia官方游戏优化师,讲的也是限制 CPU 线程以获得更好的游戏性能。

https://developer.nvidia.com/zh-cn/blog/limiting-cpu-threads-for-better-game-performance/

另外,再谈谈个人对于游戏优化的看法。随着win11的更新和大家对于电源策略的设置慢慢熟悉,其实根本就不存在什么大小核乱调度的问题,哪怕我是用默认的电源设置,win11 22h2以后也是严格按照大核>小核心>ht的顺序来,如果游戏设置合理的线程池数量的话,根本不会出现所谓调度问题。事实上不仅仅地铁离去存在手绑亲和性导致线程冲突的问题,cs2一样存在,2077第一版的p核心优化也仅仅做了p核心亲和度设置而没有调整相应的线程池数量。用我朋友的话说就是“一个个自作主张的多核优化”。好在cs2还是可以自己设置线程池数量的,恰当设置线程数能提升20%以上的cs帧数,帧生成曲线也平滑的多。

————————-

又试了下漫威银河护卫队,不出所料几乎无提升.没有开apo的时候我发现占用几乎全在pcore线程上,且正好数量为8.开了apo一样如此.这个游戏大概就是个8线程优化游戏,默认高性能或者平衡都能很好利用上8个pcore.

所以应该可以下结论了.对于游戏默认线程池大于8的游戏,apo会有很好的提升,他会合理的安排线程池和对应的物理核心数量,尽量使用pcore的同时,必要时候借助小核心辅助运算.对于cs2、地铁这类乱设置游戏线程数的应用来说提升非常之大,对于以后对cpu要求越来越高,类似龙信2这样的游戏也非常适合.gta6根据目前的爆料以及数毛社的说法,应该也不是8个pcore就能搞定的游戏.

既然apo可以设置游戏线程池数量以及对应使用物理核心数量,那intel何不干脆开放给玩家自由设置?发布半年了,支持情况还是满地鸡毛.开放给玩家设置,我相信所有需要优化的游戏在一星期内,无论是国内论坛还是国外论坛你都能找到最优设置.

yuanye8887 发表于 2024-3-22 10:33

所以,147/149玩游戏需要关闭超线程吗?

dirbackif01 发表于 2024-3-22 10:56

yuanye8887 发表于 2024-3-22 10:33
所以,147/149玩游戏需要关闭超线程吗?

不需要。

黑夜不懂白天 发表于 2024-3-22 11:23

好贴,虽然样本不够多,但是有价值

lasx 发表于 2024-3-22 12:27

目前还是只有14代能用。。137k开不了

dirbackif01 发表于 2024-3-22 13:55

lasx 发表于 2024-3-22 12:27
目前还是只有14代能用。。137k开不了

13代可以,只是12代可能不行

chatr 发表于 2024-3-22 14:09

lasx 发表于 2024-3-22 12:27
目前还是只有14代能用。。137k开不了

137k现在确认是可以了,12代确认不可以

cldzyc 发表于 2024-3-22 14:39

请问图中P核E核 CPU占用的图例是怎么在小飞机里设置出来的哇

jiangjiejjjjjj 发表于 2024-3-22 14:56

目前看来13代有的可以有的不可以,很迷[偷笑]

lasx 发表于 2024-3-22 15:11

chatr 发表于 2024-3-22 14:09
137k现在确认是可以了,12代确认不可以

主板要790?我asus z690i 开了dtt装了软件,但软件打不开,致命错误。

chatr 发表于 2024-3-22 15:13

lasx 发表于 2024-3-22 15:11
主板要790?我asus z690i 开了dtt装了软件,但软件打不开,致命错误。

690就行呀,开一下GNA试试?

lasx 发表于 2024-3-22 15:53

chatr 发表于 2024-3-22 15:13
690就行呀,开一下GNA试试?

回头试试看。我没啥游戏支持。

dirbackif01 发表于 2024-3-22 15:57

cldzyc 发表于 2024-3-22 14:39
请问图中P核E核 CPU占用的图例是怎么在小飞机里设置出来的哇

朋友做的


链接:https://pan.baidu.com/s/1ytDqulSX0wIWFb475pt_UA?pwd=4396
提取码:4396

honnbin 发表于 2024-3-22 15:57

卖国嘉z790小雕+13700k已经能打开,没测试啥效果

cldzyc 发表于 2024-3-22 16:49

dirbackif01 发表于 2024-3-22 15:57
朋友做的




感谢分享

lasx 发表于 2024-3-22 21:06

chatr 发表于 2024-3-22 15:13
690就行呀,开一下GNA试试?

无法启动,有解吗?gna开了

chatr 发表于 2024-3-23 05:08

lasx 发表于 2024-3-22 21:06
无法启动,有解吗?gna开了

在任务管理器中找到该应用,右键选择打开文件所在位置,从目录打开应该可解

lasx 发表于 2024-3-23 10:24

本帖最后由 lasx 于 2024-3-23 10:26 编辑

chatr 发表于 2024-3-23 05:08
在任务管理器中找到该应用,右键选择打开文件所在位置,从目录打开应该可解 ...

不行
找到办法了。我的uwp程序默认不安装到c盘,把这个程序移动到c盘就行了。这软件设计的真垃圾

dirbackif01 发表于 2024-3-23 11:47

lasx 发表于 2024-3-23 10:24
不行
找到办法了。我的uwp程序默认不安装到c盘,把这个程序移动到c盘就行了。这软件设计的真垃圾 ...

话说uwp需要安装么?我都没有安装这个

dirbackif01 发表于 2024-3-23 11:48

lasx 发表于 2024-3-23 10:24
不行
找到办法了。我的uwp程序默认不安装到c盘,把这个程序移动到c盘就行了。这软件设计的真垃圾 ...

没事了,看错了,我以为是gna

honnbin 发表于 2024-3-23 11:56

昨晚上装好之后,打了两把游戏,地平线5,居然自动重启了,日志也没有记录到具体什么错误,后来进bios关了相关选项就正常了,可能是我分核心超频,搞得有点高

lasx 发表于 2024-3-23 11:59

dirbackif01 发表于 2024-3-23 11:48
没事了,看错了,我以为是gna

gna应该不是必须的吧

dirbackif01 发表于 2024-3-23 12:01

honnbin 发表于 2024-3-23 11:56
昨晚上装好之后,打了两把游戏,地平线5,居然自动重启了,日志也没有记录到具体什么错误,后来进bios关了 ...

ddt驱动问题吧,我觉得不稳的话就降频好了…

dirbackif01 发表于 2024-3-23 12:04

lasx 发表于 2024-3-23 11:59
gna应该不是必须的吧

我也觉得不是,没装我也开启成功了

jjpprrrr 发表于 2024-3-23 12:23

不负责任的猜测一下,APO限制线程池的原理,可能是通过劫持某些system call或者win32 API之类的方式来实现的,误导地铁之类的游戏检测硬件的机制,最终让游戏误以为是运行在一个关闭E core和P core SMT的环境上。这种劫持方式可能并不通用,每个游戏有自己的一套实现,Intel可能只手动逆向了某几个游戏的代码,所以没有开放给所有游戏。

dirbackif01 发表于 2024-3-23 12:35

jjpprrrr 发表于 2024-3-23 12:23
不负责任的猜测一下,APO限制线程池的原理,可能是通过劫持某些system call或者win32 API之类的方式来实现 ...

那可能需要分别对接游戏厂家了吧…以intel的体量,对接游戏做优化应该是很简单的事情,nvidia这点做的就很好.cs2这种游戏至今没有得到优化,也不知道intel在干嘛

dirbackif01 发表于 2024-3-23 13:08

jjpprrrr 发表于 2024-3-23 12:23
不负责任的猜测一下,APO限制线程池的原理,可能是通过劫持某些system call或者win32 API之类的方式来实现 ...

你的不负责任猜测可能对了

jjpprrrr 发表于 2024-3-23 13:36

dirbackif01 发表于 2024-3-23 13:08
你的不负责任猜测可能对了

[偷笑]
当然APO可能不只有这一个作用。Intel官网APO页面也提到了需要BIOS的DTT支持,只是DTT看起来只是功耗和thermal方面的一些调整,对于台式机放开了跑这种情况可能起到的优化作用比较有限,最有效的还是限制线程数量。

chatr 发表于 2024-3-24 00:53

今天官网上了新BIOS,更新后12代也能开了

wx9181239 发表于 2024-3-24 15:42

chatr 发表于 2024-3-24 00:53
今天官网上了新BIOS,更新后12代也能开了

华硕的主板吗?
页: [1] 2
查看完整版本: 关于intel apo技术的简单测试和猜想