请问i5 12400为什么碾压i7 8700?

有的人拿跑分说事,但是也有人质疑,我不太懂。 我就想知道i7 8700跟i5 12400差多少?因为核心线程一样,我看8700的好像单核数据更高,就看…
关注者
343
被浏览
1,351,208

75 个回答

因为这二者的IPC水平不在一条水平线上啊,i5 12400的IPC比8700要高很多

你别看物理规格上好像i7 8700要强点,因为频率数据看起来高一些,三个频率数据都是高于i5 12400的,但是你频率高不顶用啊,12400的IPC比你高更多

话说我也确实是很久没有在知乎写过IPC的入门科普了,可能后来小白已经渐渐不太了解这个东西了,其实IPC对于处理器本身还是挺重要的,这个题就再用尽可能简单的话来写一下,当然我还是要提前说明一下,我尽量用简单的话来写,如果看不懂的话可以多看几遍,如果看不懂那就解不了这道题

IPC是instruction per clock,是和性能强相关的一个指标,当年intel提出过一个公式: CPU性能= IPC x 频率,从这个式子就能看出IPC对于性能的重要性,不是单纯频率高就性能绝对高的

关于IPC你们可以直接理解为一个处理器的每GHz的性能水平,比如说两个4GHz频率的处理器,A处理器每GHz的性能为1,B处理器每GHz的性能为1.2,

那么很简单,B架构的IPC比A架构要高20%

那么再换一种说法,B架构在相同频性能要比A架构高20%,也就是以前说的同频性能高多少多少,这个数据就意味着B架构在这个频率下能比A架构做什么事的效率要高20%,性能就强20%

因为处理器最终还是要比完成某个工作所需的时间,这个的评价标准就是快不快,你快你就强

判定B = 1.2 x A之后,那么就可以把式子直接代入到具体频率上去并得出结论了,当然为了方便理解,这里就不引入高频性能衰减的概念了

比如说 B架构在4GHz时,将拥有A架构4.8GHz的效率,因为在前面的设定中B和A是以相同频率得出的结论

所以B架构在某个符合IPC提升的benchmark中就能以4GHz跑出A架构 4.8GHz的分数,

而如果B架构面对一个4.3GHz的A架构处理器,那可不就性能碾压了,因为B架构跑4GHz相当于你4.8GHz,你跑4.3GHz那离4.8GHz还差0.5GHz呢

只有看懂了这些你才会理解为什么i5 12400会碾压i7 8700,因为i5 12400的Golden Cove架构远强于i7 8700的Skylake架构

根据实际测试,使用SPEC17测试可得Golden Cove比Skylake高了40%的IPC

这个结果可以理解为在台式机这里, 12代 4GHz ≈ 11代 4.6GHz ≈ 10代 5.6GHz(6-10代皆如此)

也就是说你找一个符合这个IPC差距的测试软件,12400能以4GHz全核性能做到你i7 8700 全核5.6GHz以上的性能(考虑到高频下有性能衰减,所以5.6GHz的8700还可能略低于i5 12400),而i7 8700全核加速频率仅4.3GHz,这不被吊打那才有问题好吧

这里可以举几个测试的例子

在这两个测试里面,i5 12400暴打i7 8700,单核和多核性能都是暴打,不就是前面说的i5 12400虽然频率低一点,但是它同频性能高得多带来的影响

从上面这俩测试中可以看出,12400在CPU-Z这里同频性能比8700高39%,R23则高了46.6%

差距都这么大了,你就算频率比12400高4.5%/7.5%又如何?根本抹不掉这个IPC差距啊

所以不要看到频率一个高一个低,就说频率高的性能强,还要看具体实际两款架构的IPC表现,要是空有足够高的频率,但是IPC差距很大,不够抹掉频率差距,那么高频的那款就是性能更弱


这里也顺带拓展一下,可能有人有疑惑为什么在xxx看到的差距不一样,如果排除数据测试错误以及平台其他硬件带来的差异的话,其实两个架构的差距在不同场景以及不同软件下出现不一样是很正常的

因为没有完全全能的架构,你这套架构为这些细节专属加强,他那套架构为那些细节专门提升,只要你愿意找,总会有让它性能提升不够大的项目,毕竟晶体管和面积是很宝贵的,不可能啥都去刻意加强。

只能是新架构来一个整体大提升,然后带动大量的软件/游戏表现提升,但是因为这些软件/游戏的实际情况都非常复杂,所以具体到某一些项目,提升幅度就会有高有低

就比如说前面的数据,SPEC17如果整数和浮点放一起看,那Golden Cove就比Skylake高了40%的同频性能,但是如果单看整数,那就只高了29.2%,单纯看浮点那就高了47.4%,然后CPU-Z里是高了39%,R23里高了46.6%

所以不一样是很正常的,只不过相较于CPU-Z/R23/Vray等大量单一测试软件来说,SPEC的测试项目会更多,并且会给出一个量化的测试成绩,这个成绩可以说比单一测试场景更能够代表差距,因为它测得多啊,SPEC有大量的子项测试,每个项目代表了对应的测试场景

如果你不是对某一软件有着特别的追求,在不设立这个前提下,你想了解两款架构的水平,那首先就是看SPEC的表现。

但是如果你是对某一软件有着特别的需求,比如说你搞这台电脑是跑Adobe全家桶又或者是专门玩游戏的,你想配一台电脑来跑这个,你想了解每个处理器的性能表现,这时候你看SPEC没用,你要去看Adobe全家桶/游戏的测试才行,因为均衡的数据不一定精于某些场景,

你要是SPEC总分跑的巨高,但是你需要的项目却表现拉胯,那也是后面这组数据对你更有用。

处理器有个概念叫ipc,每时钟指令数。

6-10代没有提升,11代比10代提升19%,12代比11代提升20%左右,13代比12代基本没提全靠超频和E核心。

所以你研究二者的时候用12的频率乘以1.19再乘以1.2,拿这个数据和8代对比更公平一些。