不懂CPU总线设计和OS调度,单纯脑洞一下Arrow Lake游戏性能吃瘪会不会可能是这样的:
如果把Ringbus拉直成一条直线,一个4C小核簇用一个E表示,ADL和RPL可以认为是这样的:
P=P=...=P=E=E=...=E
而ARL变成了这样:
P=E=P=P=E=P...
众所周知臭打游戏的一般是用不到所有核心的,大多数3A和桌面程序现在也最多针对8核优化,ADL和RPL大小核分隔明显的设计使得OS很容易能够拿到到全部8个大核。只要不管小核那它就是一个8大核的ringbus.
然而ARL大小核交错的设计,OS在优化不够的时候,很有可能同样取8个核取到的是PPEPP这样的缺德玩意儿,这还算是好的,注意因为一个E核簇在OS看来是4C,所以甚至还有很大概率拿到PEPP+E(1C)这种天坑开局,整体性能下降不说,还要经过至少一次至多两次异构数据交换。
当然这只是从核心的物理排布来看进行的非常外行的推测,具体Intel到底是如何给核心进行编号分组,Task Manager和affinity里到底是如何显示的咱没有实物也确实不知道,按照Intel的尿性但是很有可能真的是按照物理位置顺序编号的,那程序调用起来就……
当然ADL和RPL那种分隔明显的结构,一旦调度失误被扔到E核簇去的话,那下限也是非常之低,但无论跑分打游戏还是前台任务居多,出现这种低端调度失误的情况相对很少。不清楚Intel换成这种PE间隔排布,到底是为了平均算力避免用户感知到(本来概率很低的)调度失误时的性能断崖,还是单纯觉得E核和异构协作真的行起来了。
但是似乎解释不了核间延迟正常和关了P核内存延迟反而下降的现象,反正是瞎JB猜,不管了。
如果把Ringbus拉直成一条直线,一个4C小核簇用一个E表示,ADL和RPL可以认为是这样的:
P=P=...=P=E=E=...=E
而ARL变成了这样:
P=E=P=P=E=P...
众所周知臭打游戏的一般是用不到所有核心的,大多数3A和桌面程序现在也最多针对8核优化,ADL和RPL大小核分隔明显的设计使得OS很容易能够拿到到全部8个大核。只要不管小核那它就是一个8大核的ringbus.
然而ARL大小核交错的设计,OS在优化不够的时候,很有可能同样取8个核取到的是PPEPP这样的缺德玩意儿,这还算是好的,注意因为一个E核簇在OS看来是4C,所以甚至还有很大概率拿到PEPP+E(1C)这种天坑开局,整体性能下降不说,还要经过至少一次至多两次异构数据交换。
当然这只是从核心的物理排布来看进行的非常外行的推测,具体Intel到底是如何给核心进行编号分组,Task Manager和affinity里到底是如何显示的咱没有实物也确实不知道,按照Intel的尿性但是很有可能真的是按照物理位置顺序编号的,那程序调用起来就……
当然ADL和RPL那种分隔明显的结构,一旦调度失误被扔到E核簇去的话,那下限也是非常之低,但无论跑分打游戏还是前台任务居多,出现这种低端调度失误的情况相对很少。不清楚Intel换成这种PE间隔排布,到底是为了平均算力避免用户感知到(本来概率很低的)调度失误时的性能断崖,还是单纯觉得E核和异构协作真的行起来了。
但是似乎解释不了核间延迟正常和关了P核内存延迟反而下降的现象,反正是瞎JB猜,不管了。