Anbindung der Grafikkarten Bandbreite an PCIe/QPI ?

Remmi68

Newbie
Registriert
Sep. 2011
Beiträge
2
Ich habe eine Verständnisfrage:
Moderne Grafikkarten bieten eine Speicherbandbreite von bis zu 320 GByte/s. Es handelt sich hierbei, wenn ich das richtig verstanden habe, um die Speicheranbindung zwischen Grafikchip und Grafikspeicher, aber irgendwie muss ja dieser Datenstrom auch mit dem Prozessor über QPI verbunden sein. QPI schafft aber nur 25,5 GByte/s. Es wird oft gesagt, dass die Speicherbandbreite von Grafikkarten (im obigen Beispiel 320 GByte/s)nur ein theoretischer Wert sei, aber wie groß ist denn dann der reale Wert? Ich meine die Hälfte davon wird doch mindestens anfallen oder nicht? Das gleiche Problem dürfte bei PCIe 16 existieren. 16 GByte/s bei PCI 2.0 sind ja in dem Fall auch zu wenig.

Es wäre echt riesig, wenn mir jemand von euch weiter helfen könnte.
 
Die schnellste Bandbreite bei 1 GPU (2 GPUs haben ja nur 2x diese Bandbreite für jeden Chip) bietet gegenwärtig die GTX 580 mit 192,4 GB/s. Das ist die Bandbreite zwischen GPU und VRAM. Die Verbindung zwischen GPU und CPU ist 8 GB/s (= PCIe x16) breit.

Die theoretische entspricht auch der praktischen Bandbreite, man kann sie voll ausnutzen. Es kann nur leichte Einbußen geben wenn das Speicherinterface zu groß ist, aber das ist bei aktuellen GPUs nicht der Fall.

Die Antwort auf deine Frage lautet: Dieser Datenstrom ist garnicht an die CPU angebunden. Über die 8 GB/s zur CPU werden an die Graka nur Rohdaten, sprich Texturen, Modelle, Koordinaten etc. (dies geschiet oftmals schon während der Ladezeiten oder als Streaming) und eben die Ergebnisse der CPU-Berechnungen (KI, Physik etc.). Dies geschieht meistens in 1 Richtung (zur GPU) und eben über genannte 8 GB/s, die auch völlig ausreichend sind. Die 4 GB/s von PCIe x8 reichen laut des Tests von CB auch gut aus.

Die 192,4 GB/s von GPU zum VRAM werden hingegen für die Berechnungen und Daten benutzt, die nur auf der GPU stattfinden. So werden dort Daten gecached (z.B. Texturen und Modelle des aktuellen Raums eines Levels) und es finden viele Transfers statt. Texturen werden geladen, Shaderberechnungen angestellt, Geometrie hin- und hergeschoben, fertige Bilder und Pixel in den Speicher geschrieben und(das macht einen großen Batzen aus) es werden die Daten für MSAA transferiert. MSAA braucht viel Speicherbandbreite und so brechen z.B. GPUs mit einem kleinen Speicherinterface oder auch iGPUs wie die des Llano bei MSAA stärker ein.

Dafür werden die 192,4 GB/s benutzt und auch gebraucht. Das sind aber Daten und Berechnungen die nur auf der GPU stattfinden und nur die GPU etwas angehen. Sie arbeitet praktisch autark und wenn sie ein Bild fertig gerechnet hat, schreibt sie es in den sichtbaren Bereich des VRAMs. Die CPU bekommt von all diesen Berechnungen praktisch nichts mit, bekommt daher auch nichts von den Shader, Textur etc. Daten zugesendet.

Somit müssen die die Transfers über das GPU Speicherinterface nicht auch noch durch das PCIe Interface geschleust werden.
 
Zuletzt bearbeitet:
Wow, vielen Dank für deine ausführliche und hinreichende Antwort auf meine Frage. Es sind keine Fragen mehr offen. Vielen Dank!
 
Bitte, Bitte dafür ist ein Forum ja da. Außerdem hält es den eigenen Wissenstand frisch :D
 
Zurück
Oben