Rechenleistung und Bandbreite Zusammenhang?

uk3k

Software-Overclocker(in)
Könnte mir jemand mal etwas Hintergrundwissen zu Rechenleistung und (Speicher?)Bandbreite von Grafikkarten liefern?

Also wie genau die beiden Faktoren zusammenhängen, bzw ob und in wie fern mangelnde Bandbreite die Rechenleistung einer Grafikkarte beeinflussen kann?

Anders ausgdrückt: Würde die Rechenlasst einer GPU sinken wenn zu wenig Speicherbandbreite bereitsteht? Ergo sinkt die Auslastung einer GPU wenn der Speicher zu langsam ist? Gerne auch am Beispiel erläutert....

Addiert sich die verfügbare Speicherbandbreite bei SLI/CF Setups oder verhält sich das wie mit dem Speicher?

Wenn keiner Lust hat lange Texte zu tippen reicht mir auch etwas Fachlektüre, ne nette Erklärung ist aber auch nie verkehrt :D

Hoffe jemand versteht meine Fragestellung^^

mfg
 
Hi, hier ein paar Antworten zu Deiner Frage.

Die GPU ist über das Speicherinterface mit dem VRAM verbunden. Aus einem festen Verhältnis von Breite des Speicherinterface zu Speichergeschwindigkeit ergibt sich die Bandbreite. Das bedeutet, dass die Speicherbandbreite das mathematische Produkt von Speicherinterface und Speichertaktung ist.

Ist der VRAM höher getaktet, erhöht sich die Bandbreite, ist das Interface vergrößert, erhöht sie sich auch.

Interface und VRAM-Taktung sind in der Regel vom Hersteller so gewählt, dass die GPU ihrer Leistung entsprechend "bedient" wird.

Das Interface ist quasi die Datenautobahn zwischen GPU und VRAM. Die Speicherbandbreite die Menge an Verkehr pro Sekunde.

Der Datentransfer des Interface wird in bit/s gemessen. Die Bandbreite in GB/s.

Ich hoffe ich konnte Dir etwas weiterhelfen.
 
Naja Teilweise, das meiste davon war mir bekannt :D

Mal angenommen ich habe eine sehr Speicherintensive Anwendung, z.B. aktuelles Spiel(CoD zählt nicht^^), und der Hersteller hätte die realisierte Bandbreite etwas optmistisch respektive gerade so am Limit angesetzt. Jetzt erhöhe ich drastisch die Rechenleistung GPU, entweder durch OC oder durch den Einsatz einer zweiten Recheneinheit. Da sich der Speicher bei Multi-GPU nicht addiert gilt das demnach auch für die Speicherbandbreite?
Daraus würde doch resultieren, dass die Rechenwerke nicht schnell genug genügend Daten bekommen/loswerden und somit teilweise leer laufen bzw. "warten", was in geringerer Auslastung resultieren würde?

Steigt die Datentransferrate mit steigendem Speichetakt? An sich schon oder?

Mal kleiner Beispiel:
GPU 1: 93% Last
GPU 2: 80% Last
Daraus folgen Framedrops, Ruckler, subjektives Ruckeln und niedrige FPS (Vram nicht voll und CPU nicht voll ausgelastet!)

Wenn man jetzt den Speichertakt minimal, z.B. um 50MHz erhöht, sind beide GPUs annähernd gleichmäßig bei >95% ausgelastet, das Ruckeln verschwindet und die Framedrops treten seltener auf. Das hat mich dazu animiert diesen Thread zu starten um erstmal die Theorie abzuklopfen.

Liege ich da richtig?

mfg
 
Naja Teilweise, das meiste davon war mir bekannt :D

Mal angenommen ich habe eine sehr Speicherintensive Anwendung, z.B. aktuelles Spiel(CoD zählt nicht^^), und der Hersteller hätte die realisierte Bandbreite etwas optmistisch respektive gerade so am Limit angesetzt. Jetzt erhöhe ich drastisch die Rechenleistung GPU, entweder durch OC oder durch den Einsatz einer zweiten Recheneinheit. Da sich der Speicher bei Multi-GPU nicht addiert gilt das demnach auch für die Speicherbandbreite?
Daraus würde doch resultieren, dass die Rechenwerke nicht schnell genug genügend Daten bekommen/loswerden und somit teilweise leer laufen bzw. "warten", was in geringerer Auslastung resultieren würde?

Steigt die Datentransferrate mit steigendem Speichetakt? An sich schon oder?

Mal kleiner Beispiel:
GPU 1: 93% Last
GPU 2: 80% Last
Daraus folgen Framedrops, Ruckler, subjektives Ruckeln und niedrige FPS (Vram nicht voll und CPU nicht voll ausgelastet!)

Wenn man jetzt den Speichertakt minimal, z.B. um 50MHz erhöht, sind beide GPUs annähernd gleichmäßig bei >95% ausgelastet, das Ruckeln verschwindet und die Framedrops treten seltener auf. Das hat mich dazu animiert diesen Thread zu starten um erstmal die Theorie abzuklopfen.

Liege ich da richtig?

mfg
SLI verhält sich beim Speicher wie eine einzelne Karte , das heißt jede Karte hat seinen eigenen vom anderen völlig unabhängigen Speicher. In beiden Speichern liegen alle benötigten Daten.
Das muss so sein weil PCIe verhältnismäßig langsam ist und es zu massiven Verzögerungen kommen würde wenn GPU0 Daten vom VRAM von GPU1 laden müsste.
Das ist auch der Grund warum man bei Grafikkarten überhaupt so große Zwischenspeicher braucht. Am besten sieht man das bei GPGPU Anwendungen die massiv an Leistung verlieren sobald man nicht mehr genug VRAM hat und vom normalen RAM abhängig wird.
(VRAM als Swap-Speicher zu benutzen scheitert deshalb schon an der Theorie )

Hat man jetzt ein unausgewogenes Verhältnis von GPU-Leistung zu VRAM-Durchsatz ergibt sich das gleiche Problem wie ohne SLI, die effektive Auslastung der GPUs sinkt zwar aber im gleichen Ausmaß.

Erfahrungsgemäß ist aber bei Midrange und Highend Karten die Speicherbandbreite immer sehr großzügig gewählt, man gewinnt idR kaum Geschwindigkeit durch Übertakten des VRAMs.

Für die Hersteller der GPUs sollte es außerdem wesentlich günstiger sein den RAM höher zu Takten als das Interface breiter zu machen oder die GPU unabhängiger vom RAM zu machen(größere Caches).

Der Datentransfer des Interface wird in bit/s gemessen. Die Bandbreite in GB/s.
Stimmt so nicht, was du meinst ist die Breite des Interface die in bit angegeben wird (nicht bit/s), also quasi wieviele Daten pro Takt gleichzeitig transferiert werden können, die Taktfrequenz gibt dann noch an wie oft das pro Sekunde passiert -> Bandbreite in bit/s. Noch ein wenig Einheiten jonglieren und man kommt auf Gigabyte/s.
 
Zuletzt bearbeitet:
An sich hat sich die Sache erledigt, neuer Treiber und frische Windowsinstallation hat Abhilfe geschaffen^^

Könnte man das "notwendige" Verhältnis mal in Zahlen fassen. Also beispielsweise dass die zehnfache Speicherbandbreite in absolutem Wert zur Rechenleistung stehen sollte? Meinetwegen dass man für 1GLOPs Rechenleistung 10GB/s Speicherbandbreite braucht.

Wäre zum Beispiel bei mobilen oder Lowend Rechenwerken interessant, weil man da ja via RAM-OC die Gesamtleistung steigern könnte...

mfg
 
An sich hat sich die Sache erledigt, neuer Treiber und frische Windowsinstallation hat Abhilfe geschaffen^^

Könnte man das "notwendige" Verhältnis mal in Zahlen fassen. Also beispielsweise dass die zehnfache Speicherbandbreite in absolutem Wert zur Rechenleistung stehen sollte? Meinetwegen dass man für 1GLOPs Rechenleistung 10GB/s Speicherbandbreite braucht.

Wäre zum Beispiel bei mobilen oder Lowend Rechenwerken interessant, weil man da ja via RAM-OC die Gesamtleistung steigern könnte...

mfg
Ich glaube das ist unmöglich, es hängt einfach von zu vielen Faktoren ab, du kannst höchstens probieren ob sie die Gesamtleistung merklich steigert wenn du den RAM übertaktest.
 
hmm wohl war, aber Fragen kostet ja nix^^

Müsste mal paar Benchmarks aufm Laptop machen, da sollte es sich am ehesten durch den DDR3-VRAM bemerkbar machen...

Letztendlich muss es da ja aber eine Faustformel geben, die Mitarbeiter von NV und ATI sitzen ja Abends auch nicht bei nem Bier da und überlegen sich: Hmm, wir haben 3GFLOPS mit der neuen GPU, löten wir mal ein paar GB GDDR5@2000MHz ans 256Bit-Interface und schauen obs langt....

mfg
 
Könnte man das "notwendige" Verhältnis mal in Zahlen fassen. Also beispielsweise dass die zehnfache Speicherbandbreite in absolutem Wert zur Rechenleistung stehen sollte? Meinetwegen dass man für 1GLOPs Rechenleistung 10GB/s Speicherbandbreite braucht.

So ein Verhältnis kann man nicht angeben da jede Anwendung/Aufgabe da ein anderes erfordern würde und auch jede GPU Architektur anders reagiert, das ist einfach zu komplex. Das würde höchstens gehen, wenn man imer nur die gleiche Aufgabe auf der exakt gleichen Hardware ausführen würde, beispielsweise in Rechenzentren. Da könnte man mit einigen Versuchen sozusagen herausfinden wie viel Bandbreite nötig ist um die GPU vollständig auslasten zu können.
Wie schon oben erwähnt ist die Bandbreite einer Karte aber normalerweise vom Hersteller schon "passend" gewählt.
 
Zurück