Che cos'è l'hyperthreading e perché dovresti preoccuparti?


Supponiamo che tu stia cercando di acquistare un nuovo processore e improvvisamente devi decidere tra due prodotti che sono quasi tutti uguali sulla carta, ma uno di essi ha una funzione chiamata hyperthreadinge l'altro no.

Chiaramente l'hyperthreading è una buona cosa perché devi pagare un extra, ma cosa fa? Ancora più importante, è qualcosa a cui tudovrebbe interessare? Per rispondere a queste domande ardenti, dobbiamo fare una breve deviazione su come le CPU fanno le loro cose.

Potenza illimitata!

Anche se non sei così interessato ai dettagli tecnici della tecnologia informatica, probabilmente hai sentito parlare di La legge di Moore prima. Non è proprio una legge naturale, ma un'osservazione che i componenti di base dei circuiti integrati raddoppiano di densità ogni due anni circa.

In effetti questo significava che le prestazioni di una CPU sarebbero raddoppiate ogni due anni, il che è un tasso esponenziale di miglioramento. Se l'auto più veloce del mondo fosse due volte più veloce di quella che è uscita due anni fa e quella tendenza è continuata per decenni, avremmo veicoli con la velocità delle astronavi di fantascienza. Quindi questa è in realtà una delle cose più rivoluzionarie sulla tecnologia informatica.

Il problema è che le prestazioni di una CPU non sono determinate solo dalla densità dei suoi componenti. La velocità di clock, ovvero quanti cicli di calcolo completi può eseguire in un secondo, è ovviamente importante. Se prendi una CPU e raddoppi la sua velocità di clock, funzionerà bene due volte. Almeno in teoria.

Il problema è che, indipendentemente dalla velocità con cui lavora quel processore, può fare solo una cosa alla volta. Ciò che percepiamo come "multitasking" è in realtà il processore che salta rapidamente tra migliaia di lavori diversi. Alcuni anni fa, abbiamo iniziato a colpire alcuni muri di mattoni quando si trattava di rendere un singolo processore sempre più veloce.

Quindi, una delle soluzioni era mettere più di una CPU in ogni processore, in modo che i vari lavori potessero essere divisi tra loro. Oggi, le CPU quad-core sono praticamente la configurazione principale.

Hyperthreading(HT) è il nome di Intel per multithreading simultaneo. Fondamentalmente significa che un core della CPU può lavorare su due problemi contemporaneamente. Ciò non significa che la CPU possa fare il doppio del lavoro. Solo che può garantire che tutta la sua capacità venga utilizzata affrontando contemporaneamente più problemi più semplici.

Al tuo sistema operativo, ogni core della CPU in silicio reale sembra due, quindi alimenta ognuno come se fosse separato. Poiché gran parte di ciò che fa una CPU non è sufficiente per funzionare al massimo, HT si assicura che tu stia ottenendo i tuoi soldi da quel chip.

A chi dovrebbe interessareHyperthreading?

Questa è un'altra domanda che può essere un po 'complicata ma in realtà è piuttosto semplice quando la analizzi. Innanzitutto, mettiamo in evidenza l'unica cosa sull'hyperthreading che è quasi sempre vera. Se devi scegliere tra due processori in grado di gestire lo stesso numero di thread, ma non avere lo stesso numero di core, scegli la CPU con più core fisici.

Ad esempio, se hai una CPU dual-core, hyper-thread e una CPU quad-core non HT, l'opzione quad core è la scelta migliore. Dato che sono vicini gli uni agli altri nelle prestazioni single core, single core. Perché? Perché la CPU quad-core ha più hardware di elaborazione fisica.

Il vero problema è quando si hanno due CPU con le stesse specifiche fisiche, ma una ha HT e l'altra no. Ora la nostra domanda deve davvero fare con il software che si desidera eseguire. Se disponi di un software in grado di generare abbastanza thread per utilizzare anche i thread HT, vedrai un notevole impulso optando per la CPU con hyperthreading. Semplicemente perché nessuna capacità di elaborazione viene sprecata e il componente sta funzionando quasi al massimo il più delle volte possibile.

Se il software che vuoi eseguire non genera thread sufficienti per usare anche i core virtuali HT, vedrai letteralmente nodifferenza nelle prestazioni.

Tradizionalmente operazioni come rendering 3D della CPU, codifica video e foto la manipolazione creerà tutti i thread che la tua povera CPU può accettare. In altre parole, molte moderne applicazioni professionali sono affamate. Questo è il motivo per cui l'hyperthreading è stato limitato alle CPU di livello professionale come i7 e versioni successive.

Le applicazioni mainstream come wordprocessor e browser web non avranno prestazioni migliori con l'hyperthreading, anche se possono generare più thread. Semplicemente perché le esigenze di quelle applicazioni utilizzate dalla maggior parte delle persone non danno nemmeno problemi alla CPU entry-level.

La grande domanda di gioco

I videogiochi sono un'altra applicazione mainstream che è stata abbastanza apatica a Hyperthreading. Al momento della stesura, nel 2019, i più recenti motori di videogiochi stanno iniziando a diventare più pesanti, il che significa che le CPU abilitate HT funzioneranno meglio in essi. I vecchi titoli non trarranno alcun vantaggio, con l'eccezione di alcuni giochi di simulazione che fanno un uso pesante di AI o altri processi incentrati sulla CPU.

Significa che il tuo prossimo PC da gioco dovrebbe avere Hyperthreading? Il fatto è che ora stiamo entrando in un punto di riferimento della CPU tradizionale dove le CPU a sei, otto e dodici core sono la norma. Quindi, è molto meglio avere più core fisici ove possibile.

La risposta semplice

Speriamo che la spiegazione sopra sia stata chiara, ma scomponiamola fino alla fine:

  • Se svolgi un lavoro professionale e pesante, l'hyperthreading è importante
  • Se sei un utente mainstream, non preoccuparti!
  • Se sei un giocatore, prioritàavere più core nella tua prossima build su HT, ma ottieni HT anche se il prezzo è giusto.
  • L'hyperthreading è una grande tecnologia, ma non vale il premio per tutti. Ora dovresti sapere se quel "qualcuno" sei tu o no!

    Post correlati:


    26.07.2019