Intel的核显到底占不占PCI-E通道?
在讨论到cpu的pci-e通道问题时,我发现很多人都以为intel的核显占用了cpu的4根pci-e通道,包括很多可以找到的“科普贴”中都写了核显会占用4条pci-e通道。其实这是一种常见的误区,从sandy bridge架构开始,intel的核显就是挂在ringbus这个内部环形总线上面的,它不会占用cpu的pci-e通道。
tl;dr: 从sandy bridge开始,intel的核显就挂在ringbus上面,不占用pci-e通道。
要看证据的话,我我们从sandy bridge开始摆架构简图/die shot:
可以看到,从sandy bridge开始,核显部分都是以节点形式挂在ringbus上面的。而cpu的pci-e控制器在另外一端的system agent组件中,中间隔了万水千山。
如果还要证据的话,简单测试一下核显的内存带宽就知道了,比如我这台工作机上面的hd 4600,分配了32mb的显存,简单跑一下,显存带宽超过9gb/s,很明显这个带宽已经超过了pci-e 3.0 x4的上限3.94 gb/s了。gpu-z也可以告诉你,核显不占用pci-e通道数。
所以,不要再相信什么屏蔽核显释放pci-e总线的说法了,没有用的。
题外话,其实在传奇的e3v2上面intel是给了20条pci-e 3.0总线的,而到下一代又缩回去了。
那为什么intel和amd在主流级桌面平台上面都不多给一点pci-e总线通道呢?因为增加cpu的pci-e总线通道需要修改cpu的触点设计,增加cpu触点的同时会引发cpu封装体积的变大,成本变高。所以intel的主流桌面级cpu至今仍只提供16条直连通道,而更多的pci-e通道需要通过dmi 3.0由芯片组分出。
上一篇: Qt_动图 播放png阵列 避免使用gif导致失真
下一篇: 搭建Nginx七层反向代理