DMI 2.0 vs 8.0 GT/s QPI?

How can I compare directly one Intel Xeon E5 1xxx CPU with one E5 2xxx, when it's about the communication speed with memory and peripherals?

1xxx use DMI 2.0, while 2xxx QPI. Let's say the processor has 8.0 GT/s QPI.

I know this will have very little real world difference, but I am trying to understand how this technology works.

1) what's the difference between DMI and QPI?

2) in the example above, which of those is faster and by how much?


DMI 2.0 links the CPU to peripherals. Access to memory, graphics, and other high-speed devices do not use the DMI bus.

QPI is a point-to-point, high-speed link between processors. It's used in multi-processor configurations to carry cache coherency traffic and allow one processor to access memory attached to another processor. It's also used to link processors to some high speed devices.

It makes no sense to compare them because they serve completely different functions.


QPI

In addition to connecting the CPU to the PCH, QPI connects processors to eachother.

QPI is very fast, a 6.4GT/s QPI link has a total bandwidth of 25.6GiB/s, and at 8.0GT/s the total bandwidth is 32GiB/s. That is giga bytes not bits.

Additionally, 20% of the link bandwidth is overhead, but the ratings given are for actual data and do not include the overhead, so the actual link bandwidth is higher.

QPI when connected to a PCH serves as the only data path to the CPU when connecting to peripherals, the PCH provides the PCIe ports when connected over QPI (such as X58).

Processors with 4 QPI links connecting in a 4 socket system only use 3 to connect to the other processors, leaving 1 per socket to connect to high bandwidth IO controllers for servers, such as the 55x0 and 7500 controllers.

DMI

DMI 2.0 is much slower at 5Gib/s. That is giga bits not bytes. However, multiple DMI links are used to connect to the PCH, usually offering 20Gib/s through 4 links. This is shared with the storage and USB controllers, which depending on PCH model, may be able to consume much more bandwidth.

Older DMI connections such as that used by the X58 PCH to the ICH-10R controller were lower at 16GiB/s; this controller had potentially less maximum bandwidth, but is still higher than DMI can provide (18GiB/s just for SATA, 3GiB/s for PCIe, 0.7GiB/s for USB2.0, etc)

Processors that use DMI to connect to the PCH provide PCIe ports directly from the processor, providing higher bandwidth (up to 80GB/s) and lower latency than QPI based PCIe.

Both

Some newer Xeon processors that use QPI may also have up to 40 PCIe ports as well. These processors also have DMI to connect to the PCH, leaving QPI to only connect to other processors in multi socket systems.

If the PCH connects to DMI, having QPI will provide no benefit without a multi socket motherboard. Knowing link bandwidth and how it is distributed will allow better use of peripheral devices, such as connecting high bandwidth SATA devices to processor PCIe connected controllers instead of a DMI conncted PCH, so as not to saturate the DMI link, leaving no bandwidth for the LAN and USB ports.



PCH: Platform controller hub
IOH/ICH: Input-output controller hub
QPI: QuickPath Interconnect
DMI: Direct Media Interface