Das mit den "
... Chip beschneidet muss man zwangsläufig auch die Speicheranbindung beschneiden und an die widerum ist gekoppelt wieviele vRam Chips man anbinden kann" ist schon richtig.
Zwangsläufig heißt hier im Voraus die gpu so auslegen.
Der Speichercontroller hängt an dem L2-cache, welcher wiederum an dem vram hängt.
Die Hardwareeinheitengruppe (CU/SM + L0/L1-cache + raster/texture/primitive/raytracing/Tensor + ALUs + was-auch-immer) hängt dann wiederum an dem L2-cache (oder bei rdna2 vllt. noch an dem Infinity Cache?).
Bei amd nennt man es LDS (local data share), wo der L0-cache steckt. Jede CU hat darauf Zugriff (bei rdna2 dual-CU).
Wie viel L2 so eine CU/SM innerhalb der Einheitengruppe bekommt, wurde zuvor festgelegt.
Die Busbreite wird vorweg auch auf den ganzen Speicherkrempel ausgelegt.
Bei amd nennt man es compute engine array
Wenn man möchte kann man wie bei der berüchtigten gtx 970 auch ganz krumme Dinger machen.
Hat man zuvor festgelegt das z.B. eine 2 CUs ganze 2 Speichercontroller mit zweimal L2-cache bekommen, schummelt man einfach und gibt den zwei CUs dann nur noch einmal L2-cache.
Der Speicher der da dranhängt kann dann nicht voll ausfahren, somit fällt die Speicherdatenrate geringer aus als die reine CU/SM Anzahl eig. vermuten lässt.

Aus einer 5700xt mit 256-Bit Speicherdatenrate, macht man so z.B. nur 224-Bit Datenrate, obwohl da 8 Speicherchips dranhängen.