Hyper Threading Vs. Dual Core Processing

Attenta, Intel! Sono arrivati i dual core AMD con velocità di clock identica a quella delle CPU single core, pronti a sferrare un duro attacco. Vediamo come si comportano i nuovi Athlon 64 X2.

Avatar di Tom's Hardware

a cura di Tom's Hardware

Hyper Threading Vs. Dual Core Processing

Ogni sistema operativo moderno ha la capacità di eseguire più programmi contemponearamente, ripartendo dinamicamente il carico tra tutti i processori logici (multi-tasking). Se possibile, il S.O. distribuirà il carico su più livelli, basandosi sui threads (multi-threading, se applicabile). Il Multi-tasking permette quindi di far funzionare diverse applicazioni e un elevato numero di servizi di sistema senza impattare pesantemente sulle prestazioni del sistema. Il Multi-threading, tuttavia, permette un incremento prestazionale che sarà maggiore rispetto a quello ottenibile con il semplice incremento di velocità di clock.

Questi chip dual core rappresentano ora il più sostanziale passo avanti nello sviluppo dei processori negli ultimi anni, sia che tifiate per Intel o AMD. Un sistema equipaggiato con una di queste bestie a due teste sarà in grado di fornire prestazioni molte vicine a quelle di un vero sistema a doppio processore.

Intel ha cercato di anticipare i benefici offerti da due processori con l'introduzione dell'Hyper Threading (HT) nel 2002. La corsa al clock era la semplice ragione che portò all'introduzione della tecnologia HT nell'architettura dei Pentium 4. Fu raggiunta velocemente la velocità di 3.06 GHz, e la pipeline di esecuzione fu portata a 20 stadi. In contrasto, l'AMD Athlon XP utilizzava pipeline a 10/15 stadi (ALU/FPU) mentre il Pentium III lavorava con 10 stadi (12 per il Tualatin e i modelli Pentium M). Anche l'AMD Athlon 64 è caratterizzato da una pipeline a 12 stadi.

Da una parte, una pipeline più profonda è in grado di prendersi carico di più azioni in un ciclo di processo. Questa situazione è favorevole quando si utilizzando estensioni di comandi come le SSE2 e SSE3. D'altra parte, ogni operazione costringerà la CPU a passare tutti gli stadi della pipeline, perdendo cicli di clock preziosi. Per compensare, Intel ha implementato una logica per aumentare l'utilizzo della pipeline del Pentium 4 - cresciuta fino a 32 stadi con i Prescott - che prevedeva l'utilizzo di due unità logiche di processo.

Mentre un processore Hyper Threading non sarà mai in grado di raggiungere le prestazioni di un dual processor, permette però di alleviare gli effetti negativi legati all'utilizzo di applicazioni CPU intensive che rallenterebbero tutto il sistema. Se avete provato a utilizzare un sistema dual processor o un sistema Hyper-Threading, vi sarete sicuramente accorti che la velocità di risposta è più elevata. Ci sono anche alcune applicazioni che grazie all'HT risulteranno più veloci, mentre altre potranno essere più lente; tuttavia, in generale le prestazioni pure non saranno molto differenti rispetto a quelle di una CPU convenzionale.

Intel è fiera del suo Hyper Threading, e lo considera un importante passo intermedio per il passaggio dai chip single a quelli dual core. Il produttore crede che la tecnologia HT ha attualmente spianato la strada per la creazione di applicazioni thread-based, dato che questo approccio permette un significante incremento prestazionale per i sistemi compatibili HT. AMD, diversamente, ha sempre sostenuto che l'Hyper Threading rimarrà una funzionalità temporanea e non necessaria in futuro, motivo per cui i processori AMD ne sono sprovvisti.

Come sempre, la verità è nel mezzo. Mentre è vero che un videogiocatore solitamente non utilizza contemponearamente più applicazioni - in maniera tale da dedicare tutta la potenza di calcolo al videogioco - i professionisti si troveranno in condizioni tali da dove utilizzare più programmi assieme, godendo così delle funzionalità HT. Inoltre, praticamente tutti utilizzano un antivirus o un firewall. Fino a che il numero di servizi che funzioneranno in background o il loro livello di attività non supererà una certa soglia, un processore single core o non-HT sarà in grado di sostenere senza problemi il carico di lavoro. Diversamente, se il sistema si occuperà di molte attività contemponearamente, l'Hyper Threading aiuterà molto. La stessa osservazione può essere applicata anche ai nuovi dual core.