Fino alle CPU 80386, un core x86 non integrava alcuna unità dedicata ai calcoli in virgola mobile (FPU), ed è solo con le CPU 80486DX (non SX!) che i core x86 la integreranno in aggiunta alle classiche unità per i calcoli aritmetici (ALU), decretando così la scomparsa dei coprocessori matematici

 

 

Oggi pensiamo sia la normalità che una CPU debba integrare sia le ALU sia le FPU, ma non è così. Moltissimi chip, ancora oggi, sono definiti CPU sebbene non integrino al proprio interno una FPU. La stessa ARM, per tutti i propri core Cortex, offre opzionalmente l'unità VFP (ARM Floating Point architecture) per i calcoli in virgola mobile, e lo stesso fanno le altre ISA, come MIPS o ARC. Una CPU general purpose può esistere senza FPU, ma non senza ALU.

 

da "Understanding Computers: Today and Tomorrow, Introductor", di Deborah Morley e Charles Parker

 

In questi giorni è partita una class action nei confronti di AMD, rea di aver pubblicizzato le CPU Bulldozer X4/X6/X8 come true quad/six/octa core. Secondo questi utenti (capitanati da Tony Dickey), poiché la FPU è condivisa da due ALU, un modulo CMT non è formato da due reali core x86: "The suit alleges AMD built the Bulldozer processors by stripping away components from two cores and combining what was left to make a single “module.” In doing so, however, the cores no longer work independently. As a result, Dickey argues that AMD’s Bulldozer CPUs suffer from material performance degradation, and cannot perform eight instructions simultaneously and independently as claimed". Su questo argomento si è dibattuto per anni sui vari forum fin dall'uscita delle CPU Bulldozer, senza che si sia giunti ad una soluzione univoca: ogni utente, a seconda delle proprie convinzioni, è giunto ad una conclusione differente. Va comunque notato come questa causa sia partita da un utente consumer, e non da un'azienda o un professionista del settore Enterprise, segno che nessun ente o nessuna persona con un certo background informatico si sognerebbe mai di intentare una causa tanto idiota.

 

 

Quello che possiamo affermare senza incorrere in falsità, quindi, è che storicamente un core x86 è tale anche senza FPU, come abbiamo precedentemente scritto, e che la scelta di design fatta da AMD (2ALU ed 1 FPU a modulo) non va contro tale affermazione. Sicuramente AMD ha fatto un enorme errore nel sottostimare l'importanza della FPU al momento della progettazione di Bulldozer, ma questo non significa che un modulo CMT non sia un vero dual core. Si tratta di un dual core zoppo, ma è pur sempre un dual core FISICO.