PCI-Express – Die interne Datenautobahn innerhalb eines Computersystems
PCI-Express – Die interne Datenautobahn innerhalb eines Computersystems

PCI-Express – Die interne Datenautobahn innerhalb eines Computersystems

Peripheral Component Interconnect Express oder abgekürzt PCI-E ist eine genormte Schnittstelle auf der Hauptplatine eines Computers, welche den Anschluss von Komponenten und Peripheriegeräten wie beispielsweise Grafikkarten, SSD’s und Netzwerkschnittstellen an den Chipsatz des Prozessors ermöglicht. Da all diese Komponenten eine sehr hohe Übertragungsgeschwindigkeit benötigen, wurde PCI-E genau hierfür entworfen.

Als Nachfolger der Schnittstellen AGP (Accelerated Graphics Port) und PCI (Peripheral Component Interconnect) wurde im Jahre 2003 die erste Version 1.0 von PCI-E veröffentlicht, in welcher unter Anderem die Art der Datenübertragung im Vergleich zu PCI oder AGP von parallel zu seriell geändert wurde. Dadurch wurde die Leistung der Steckplätze um ein Vielfaches erhöht. Im Laufe der Jahre wurde diese Schnittstelle immer weiter verbessert und aktuell (2022) sind wir bereits bei der Version 6.0 angelangt..
Dennoch ist PCI-E 3.0, welches seit 2010 im Einsatz ist, bis heute die meist verbreitetste Version. Die Vorgänger von PCI-E wurden ab 2010 nicht mehr in Mainboards verbaut und PCI-E 3.0 hat diese Schnittstellen seither komplett abgelöst. Die Marktverbreitung hinkt trotzdem massiv hinterher; Stück für Stück wird diese Version jedoch durch den Nachfolger 4.0 abgelöst.

Hier stellt sich die Frage, welche theoretischen und natürlich auch praktischen Vorteile eine neuere PCI-E Version mit sich bringt. Und genau das haben wir einmal genauer unter die Lupe genommen. Hierfür ist es erst einmal wichtig zu wissen, wie groß die Leistungsunterschiede der einzelnen Versionen im Detail sind. Die nachfolgende Tabelle soll dies etwas anschaulicher machen.

PCI-E VersionEinführungTransferrate pro Lanex1x2x4x8x16
1.020032,5 GT/s0,250 GB/s0,500 GB/s1,000 GB/s2,000 GB/s4,000 GB/s
2.020075,0 GT/s0,500 GB/s1,000 GB/s2,000 GB/s4,000 GB/s8,000 GB/s
3.020108,0 GT/s0,985 GB/s1,969 GB/s3,938 GB/s7,877 GB/s15,754 GB/s
4.0201716,0 GT/s1,969 GB/s3,938 GB/s7,877 GB/s15,754 GB/s31,508 GB/s
5.0201932,0 GT/s3,938 GB/s7,877 GB/s15,754 GB/s31,508 GB/s63,015 GB/s
6.0202264,0 GT/s
32,0 GBd
7,563 GB/s15,125 GB/s30,250 GB/s60,500 GB/s121,000 GB/s
7.0(2025)128 GT/s
64 GBd
15,125 GB/s30,250 GB/s60,500 GB/s121,000 GB/s242,000 GB/s
GT/s = Gigatransfers pro Sekunde, GB/s = Gigabyte pro Sekunde, GBd = Gigabaud

Die CPU und PCI-E Lanes

Wie bereits erwähnt, sind PCI-E Lanes eine Anbindung an die CPU. Dies kann entweder direkt über eine Verbindung an den PCI Express Root Complex erfolgen oder über einen Umweg über den Platform Controller Hub (PCH). Eine Anbindung über den Root Complex stellt eine nahezu direkte Anbindung an die CPU dar wohingegen eine Verbindung über den PCH einen Umweg darstellt und es dadurch zu Limitierungen kommt. Je nach CPU stellt diese unterschiedlich viele PCI-E Lanes dem System zur Verfügung. Der erste x16 PCI-E Slot (und oftmals der zweite x16 Slot, falls vorhanden) ist in den meisten Fällen direkt über den Root Complex mit 16 Lanes an die CPU angebunden – weitere PCI-E Steckplätze hängen an dem PCH, welcher selbst oftmals nur mit 4 oder 8 Lanes an die CPU gekoppelt ist. Die logische Folge daraus ist, dass diese Lanes unter allen dahinter befindlichen Komponenten aufgeteilt werden, was zu Leistungseinbußen führen kann. In einer HP Z4 G4 mit einem Intel Core i9-10980XE werden dem System 48 PCI-E Lanes durch die CPU zur Verfügung gestellt. Die Mainboardarchitektur ist in dieser Maschine so konzipiert, dass PCI-E Steckplatz 1, 3 und 5 direkt an die CPU angebunden sind. Slot 1 und Slot 3 jeweils mit 16 Lanes und Slot 5, welcher ebenfalls der x16 Größenordnung entspricht, jedoch ausschließlich mit 8 Lanes. Die letzten beiden PCI-E Steckplätze 2 und 4 sind über den PCH mit 4 Lanes angebunden.

PCI-E Lanes und ihre Eigenschaften

Über die Schnittstellenbezeichnungen von PCI-E Komponenten, lässt sich sehr viel herauslesen. Dazu zählt beispielsweise die maximale Übertragungsgeschwindigkeit. Bei PCI-E handelt es sich, wie oben bereits erwähnt, um eine serielle Schnittstelle. Dies ermöglicht die Bündelung mehrerer Datenbahnen zu sogenannten „Lanes“. Jede dieser Lanes hat je nach PCI-E Version eine maximale Übertragungsrate an Datenpaketen pro Sekunde, welche in Gigatransfers/s, kurz GT/s gemessen wird. Bei PCI-E 3.0 kann eine Lane pro Sekunde 8 Milliarden Datenpakete übertragen (8,0 GT/s), welche im Idealfall fast 1 Gigabyte an Daten fassen (0,985 GB/s). Dadurch ergibt sich bei einem PCI-E x16 Steckplatz (PCI-E 3.0 mit 16 Lanes) eine Übertragungsrate von 15,754 GB/s.

Wichtig ist hierbei jedoch auch zu beachten, dass nicht jeder PCI-E Steckplatz immer mit allen Lanes nutzbar ist. Im Klartext bedeutet es, dass ein x16-Slot zwar in der Theorie die vollen 16 Lanes nutzen könnte, diese aber nicht immer zwangsweise auch geschaltet sind. In Mainboards mit mehreren PCI-E x16 Steckplätzen ist es keine Seltenheit, dass nur der erste Slot auch wirklich mit 16 Lanes angebunden ist und die Restlichen oft nur mit 8 Lanes. Dies würde folglich in einer reduzierten Übertragungsrate resultieren, was gerade bei GPU’s (Grafikkarten) zu einem erheblichen Nachteil führen kann. Es ist also ratsam die erste GPU in einem System im ersten PCI-E x16 Slot zu verbauen oder explizit im Handbuch nachzulesen, ob und wie weitere x16 Steckplätze beschaltet sind.

Gut zu wissen ist auch, dass PCI-E Steckplätze bezüglich der mechanische Schnittstelle abwärtskompatibel sind. Daher lässt sich beispielsweise eine x1 oder x4 Erweiterungskarte auch in einem x8 oder x16 Slot betreiben, vorausgesetzt, die Anzahl der geschalteten Lanes an diesem Steckplatz ist passend.

HP Z4 G4 Workstation Block Diagramm, Auszug aus dem „Technical white paper“, Seite 5

Hier wird deutlich, dass selbst bei 48 durch die CPU zur Verfügbaren gestellten PCI-E Lanes, die Bandbreite nicht ausreichen würde um alle Slots mit maximaler Geschwindigkeit betreiben zu können. Da LAN-Controller, M.2 Steckplätze sowie SATA-Geräte ebenfalls Leistung benötigen ist also davon abzuraten alle Slots zu belegen. Bei der Xeon-Variante des HP Z4 G4 mit einem Intel Xeon W-2295, welcher das Äquivalent zum Core i9-10980XE darstellt, steht sogar noch weniger Bandbreite zur Verfügung, da dort ein weiterer M.2 Slot sowie ein zweiter Netzwerkcontroller die Lanes mitbenutzen.

PCI Express for Graphics (PEG)

Die Bezeichnung PEG bezieht sich auf einen PCI-E x16 Steckplatz, welcher speziell für Grafikkarten ausgelegt ist und dadurch bis zu 75 Watt Leistung bereitstellen kann. Dies ist bei Grafikkarten durchaus von Relevanz, da diese deutlich mehr Strom benötigen als z.B. eine Sound- oder Netzwerkkarte. Andere PCI-E Steckplätze sind für maximal 25 Watt ausgelegt. Jedoch ist auch hier ein Blick ins Handbuch ratsam, da nicht jeder PEG-Steckplatz immer mit 16 Lanes beschaltet ist.

PCI-E 3.0

Im Unterschied zu den Vorgängerversionen bietet PCI-E 3.0 eine Auf- und Abwärtskompatibilität an, jedoch wird die Leistung bei höher spezifizierten Geräten durch die Schnittstelle des Mainboards und bei niedriger spezifizierten Geräten durch die Schnittstelle des Gerätes limitiert. Bei M.2 SSD’s ist es beispielsweise sinnvoll darauf zu achten, ob das Mainboard die selbe PCI-E Version nutzt wie die SSD, da sonst oftmals gerade einmal die Hälfte an Datendurchsatz erbracht werden kann. Außerdem wurden in dem 3.0 Standard viele Optimierungen hinsichtlich der Datenintegrität und der Signalübertragung implementiert sowie ein neues Interconnect System namens OCuLink eingeführt – ein direkter Konkurrent von Thunderbolt, welcher Protokolle wie PCI-E, SAS und SATA unterstützt.

PCI-E 4.0

Der Nachfolger von PCI-E 3.0, welcher im Juni 2017 eingeführt wurde, bringt gegenüber seinem Vorgänger natürlich wieder einige Neuerungen mit sich. Neben einer verdoppelten Bitrate von 16 GT/s bringt Version 4.0 OCuLink-2 ins Spiel. Verbessert wurden unter anderem auch die Energieeffizienz. Ein weiterer großer Vorteil der neuen Generation, bedingt durch die höhere Bandbreite, ist die theoretische Möglichkeit die Menge an Erweiterungskarten in einem System zu erhöhen. Durch den höheren Datendurchsatz benötigen Komponenten, welche im PCI-E 3.0 Standard 8 Lanes erfordert hätten nun nur noch 4 Lanes. Eine Ab- und Aufwärtskompatibilität bleibt auch hier nach wie vor erhalten.

Auswirkungen auf die GPU-Leistung

Ein hochinteressanter und zugleich kaufentscheidender Punkt bei der Wahl der Workstation und der verwendeten PCI-E Version ist wie sich PCI-E 3.0 im Vergleich zu PCI-E 4.0 auf grafikintensiven Anwendungen wie Rendering oder Videoschnitt auswirkt. Kurz gefasst: PCI-E 4.0 macht sich in der Leistung bemerkbar – allerdings ist der Unterschied zu Version 3.0 je nach Anwendung marginal. Begründen lässt sich das dadurch, dass trotz der geringeren Bandbreite von PCI-E 3.0 die GPU in der Regel nicht dauerhaft die PCI-E Datenbahnen voll ausnutzt. Hier spielt der Videospeicher der einzelnen GPU eine große Rolle. Ist dieser zu klein für große und komplexe Projekte oder Renderings müssen häufiger Datensätze in und von dem VRAM (Grafikspeicher) geladen bzw. parallel auf den systeminternen RAM (Arbeitsspeicher) zurückgegriffen werden um Daten nachzuladen. Dies erhöht massiv die Auslastung der PCI-E Schnittstelle und kann im schlimmsten Fall tatsächlich zum Flaschenhals werden. Ist der VRAM einer GPU jedoch ausreichend groß, werden die zu verarbeitenden Datensätze lediglich in der Grafikkarte intern bewegt und nach Abschluss an das System über den PCI-E Bus zurück übertragen. In unseren internen Benchmarks mit Nvidia Quadro als auch Nvidia GeForce Grafikkarten in einem PCI-E 4.0 Steckplatz ließ sich, bei ausreichend großem VRAM, nie ein Unterschied von mehr als 5% im Vergleich zu PCI-E 3.0 feststellen.

Dennoch fühlte sich die Bildausgabe bei PCI-E 4.0 etwas flüssiger bzw. weicher an, auch wenn die eigentlichen Frameraten
nur geringfügig verbessert wurden. Da in Zukunft sicherlich noch komplexere und polygonreichere Grafiklandschaften generiert werden können, wird sich Version 4.0 jedoch sicher als nützlich, wenn nicht sogar als absolut notwendig herausstellen. Doch bis es soweit ist, sollte es zu keinen merklichen Einschränkungen kommen.

WordPress Cookie Plugin von Real Cookie Banner