4

PCIe 3.0 x16 和 QPI 1.1(20 通道)具有相同的有效带宽 (16 GB/s)。因此,我想大致了解两者之间的差异。

两者在延迟和消息速率(每秒数据包数或 TLP 数)方面有什么区别?对于延迟,我的大致数字是 QPI 为 20 ns,PCIe 3.0 为 200 ns。这些是好的估计吗?如果是,为什么 PCIe 的延迟要高得多——是因为线长吗?

除了 QPI 提供缓存侦听这一事实之外,两者之间是否存在显着的架构差异?据我所知,两者都使用分层协议:传输层到物理层。

4

1 回答 1

6

由于它们的角色不同,两者具有相当不同的消息传递类型。QPI 直接关注通过MESIF 协议实现缓存一致性,并通过分布式目录实现NUMA 。PCIe 没有这样的概念,尽管它们共享通用的内存读写和完成消息类型(请参阅此处了解一些 PCIe 基础知识)。它们具有相似的电源状态和通过虚拟通道实现的优先级方案。两者都使用基于信用的流量控制,但不能保证 QPI 与 PCIe 端点维护哪种信用有任何共性(据我所知,QPI 信用的细节是英特尔的商业机密)。

每个消息速率通常以 GT/s 表示。典型的 QPI 速率为 4.8、6.4 和 8 GT/s,以及 PCIe 的 5 或 8 GT/s。

您对两者的延迟估计可能都很低。QPI大约为每跳几百纳秒。请注意,4+ 套接字系统可能在多对套接字之间有一个以上的 QPI 跃点。PCIe 可能更接近 500ns,不过这又取决于系统拓扑。处理器插槽的主内存和直接挂在该插槽(PEG 插槽)上的 PCIe 卡之间的延迟将低于同一内存和挂在南桥上的卡之间的延迟。

于 2014-07-14T22:15:54.197 回答