2013-03-26 11 views
6

In una CPU multicore, ogni core ha accesso alla propria banca di registri XMM? Ad esempio se un chip è elencato come avente 16 registri XMM (XMM0-XMM15), è 16 registri per core o 16 condivisi?Registri XMM totali o per core

La mia comprensione era che ogni core aveva i propri banchi di registro e presumevo che lo stesso valesse per i registri XMM, ma non ero in grado di trovare un riferimento per sostenere questa ipotesi.

+1

Nonostante l'iperfilo, ogni core ha il proprio set completo di registri. –

risposta

12

Sì, ogni core ha i propri registri.

Vale la pena notare che ogni nucleo ha effettivamente un ordine di cento registri fisici; ci sono solo 16 registri nomi. Questo vale sia per i registri GPR che per quelli XMM.

+0

Fantastico, grazie per la risposta. – TaylorP

+1

Vorrei aggiungere un po 'di informazioni. I registri architetturali sono mappati sui registri fisici per rimuovere dinamicamente le dipendenze dei nomi che possono danneggiare le prestazioni. Questo è chiamato [Register renaming] (http://en.wikipedia.org/wiki/Register_renaming). Il numero di registri fisici dipende dall'implementazione del processore. Ad esempio, AMD Bulldozer: 96 GPR fisici, Intel Sandy Bridge: 160 GPR fisici, Intel Haswell: 168 GPR fisici. – chus