Chi ha veramente bisogno di due processori e quattro core?

Siccome AMD non è ancora in grado di offrire dei processori quad-core, ha presentato la piattaforma "4x4" e kit con due processori per fronteggiare la minaccia Core 2 Quad di Intel. L'abbinamento di due Socket 1207 e un paio di CPU Athlon 64 FX-70 offrono buone prestazioni, ma non è ancora abbastanza per contrattaccare il dominio di Intel.

Avatar di Tom's Hardware

a cura di Tom's Hardware

Chi ha veramente bisogno di due processori e quattro core?

AMD punta agli appassionati di altissimo livello, ovvero un'elite scelta tra le fila dei più intraprendenti. La "parolona" che segue questa piattaforma è "megatasking", che AMD definisce nella seguente maniera:

  • Utilizzo simultaneo di applicazioni intensive e multi-threaded
  • Utilizzo di applicazioni che gestiscono contenuti multimediali digitali
  • Giochi multi-core futuri

I vantaggi di AMD

Molti dei task descritti sopra andranno senza problemi anche su un potente processore dual core, ma in futuro potrebbe essere diverso. Mentre la regola generale per l'ambiente multi-threaded è "più core è meglio", l'aumento dei core - quattro e più core per processore - creerà la necessità di una larghezza di banda sempre maggiore. Una grande quantità di dati devono essere trasferiti alla memoria principale nel meno tempo possibile.

Intel aggiornerà il suo Front Side Bus FSB1066 (266MHz) a FSB1333 (333 MHz) all'inizio del prossimo anno con il chipset Bearlake (X38 per appassionati e P35 per mainstream). Questo offrirà un data path più veloce per CPU dual e quad-core, che permetterà di comunicare velocemente con la memoria principale e con i core logici della motherboard.

Tuttavia AMD è sempre in vantaggio quando si parla di efficienza della memoria, dato che i processori Athlon 64 dispongono di un controller di memoria integrato, ad alta velocità e con basse latenze. I primi processori Athlon 64 supportavano memoria DDR400 (Socket 754) o DDR400 dual-channel (Socket 939). L'attuale generazione di Ahtlon 64 e Ahtlon 64 X2 su Socket AM2 usa memoria dual-channel DDR2-800. Il core della CPU può attingere ai dati direttamente, senza i ritardi del controller di memoria posizionato nell'apposito core logico della motherboard.

Tuttavia, oggi questo vantaggio è minore. Il processo produttivo a 65 nanometri permette a Intel di inserire nei suoi processori un quantitativo di cache maggiore, che permette di compensare i ritardi causati da un sottosistema di memoria separato. Una cache efficiente e condivisa aiuta a ridurre di molto gli accessi alla memoria principale.

Non appena Microsoft Vista apparirà sul mercato, la situazione cambierà leggermente. Windows XP si limita infatti a distribuire i thread sui core disponibili. Non è in grado però di evitare il thread-switching tra i processori, situazione che comporta la riallocazione dei dati necessari per un particolare thread da un processore all'altro.

I thread che sono stati processati da un core fisico dovrebbero poter essere manipolati anche da un'unità differente. Se pensate all'Intel Quad-core, creato abbinando due processori dual-core in un unico package, capirete che il Front Side Bus è l'unica via di comunicazione inter-processuale e verso la memoria.

Nello scenario peggiore in Windows XP, l'unità di processo A deve aspettare fino a che l'unità B completi l'accesso alla memoria. Successivamente "A" può accedere alla memoria per recuperare i dati, che verranno immagazzinati nella sua cache L2 per effettuare l'accesso locale. Se, tuttavia, Windows assegna il thread alla CPU B, questa dovrà prendere i dati dalla cache L2 di "A", causando ulteriore traffico sul front side bus. Per coerenza e ragioni legate alle prestazioni, a questo punto i dati non possono essere recuperati nuovamente dalla memoria principale, dato che sono già stati processati. Quindi tutti gli elementi coinvolti sono rallentati da queste manovre.

Windows Vista Ultimate Edition sarà in grado di comandare processori separatamente o a nodi di core. Questo permetterà al sistema operativo di assegnare i thread in maniera più efficiente: un task complesso potrà essere eseguito solo dalla CPU A, mentre un altro carico di lavoro verrà gestito autonomamente dalla CPU B. Windows Vista permetterà quindi di scalare in maniera ottimizzata le prestazioni con l'aumentare dei core.