Stand jetzt hat die GTX 970:
• 8×4 GBit GDDR5-RAM (256 Bit addiert)
• 8×32 Bit Speichercontroller (256 Bit addiert)
• 7×8 Rasterendstufen (56 addiert)
• 7×256 kiB L2-Cache (1.792 kiB addiert)
Die beiden letzteren weichen von den kommunizierten Specs nach unten hin ab.
Doch solange nicht mehr als 3,5 GiB Videospeicher belegt werden, nutzt die Treiberansteuerung nur die sieben Speichercontroller, die über ein eigenes, volles L2/ROP-Segment verfügen, also 224 Bit. Nur bei Zugriffen mit weniger als 8×Stride Size (also weniger als 8 kiB wie im Beispiel-Diagramm von Nvidia) gibt es da keinen Unterschied zum 256-Bit-Interface (das würde 7 kiB halt auch auf die ersten sieben Controller verteilen und dann kommt ein neuer Zugriff). Wahrscheinlich sind aber nicht wenige Zugriffe größer als diese 7 kiB, denn auch um Zugriffe zu bündeln und so die theoretisch zur Verfügung stehende Transferrate optimal zu nutzen sind ja letztlich die komplizierten Cache-Strategien da.
Wird wirklich (und nicht nur als Optimierungsspielraum) mehr als 3,5 GiByte Videospeicher benötigt, schaltet der Treiber auch den verbleibenden Memory-Controller hinzu, denn trotz langsamerer Gesamtperformance ist das noch immer schneller, als wenn man weiter mit 3,5 GiByte arbeiten würde und den Rest dauernd über den PCI-Express hin- und herschaufelt. Nvidia gibt an, dass der Treiber versucht, im „4-GiB-Modus“ die Daten so zu verteilen, dass der benachteiligte Speicherbereich mit Daten gefüttert wird, auf die seltener Zugegriffen werden muss, zum Beispiel bleibt der Framebuffer innerhalb der schnelleren 3,5-GiByte-Partition.
edit:
Nvidia sagt weiterh, dass die L2-Partition mehr Transferrate besitzt als nötig wäre (nicht jedoch, wieviel mehr), um den einen Speichercontroller/-baustein zu versorgen. Ob das nun auf eine „31/32“- oder eine „1/32“-Bit-Versorgung der benachteiligten 512 MiByte hinausläuft ist unklar. Es gibt so etwas wie einen Fast-Path für Memory-Reads, diesen kann der L2 wohl nicht für beide 32-Bit-Controller bedienen.
Ist es so verständlicher?