Multithreading: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
LiveRC : Annullate le modifiche di 79.51.106.40 (discussione), riportata alla versione precedente di Pil56-bot
Riga 4:
[[File:Superthreaded CPU.png|thumb|right|Un sistema Simultaneous Multi-Threading schedula più thread ma ne esegue uno solo per ciclo di clock]]
[[File:Hyper-threaded CPU.png|thumb|right|Un sistema Fine-grained multithreading schedula più thread e ne esegue in contemporaneo le istruzioni al fine di occupare al meglio le unità d'elaborazione]]
In [[informatica]] il '''multithreading''' indica il supporto [[hardware]] da parte di un [[processore]] di [[esecuzione (informatica)|eseguire]] più [[Thread (informatica)|thread]]. Questa tecnica si distingue da quella alla base dei sistemi [[Multi core|multiprocessore]] per il fatto che i singoli thread c ondividonocondividono lo stesso spazio d'indirizzamento, la stessa cache e lo stesso [[translation lookaside buffer]].
 
Il ''multithreading'' migliora le prestazioni dei [[programma (informatica)|programmi]] solamente quando questi sono stati sviluppati suddividendo il carico di lavoro su più thread che possono essere eseguiti in apparenza in [[calcolo parallelo|parallelo]]. Mentre i sistemi multiprocessore sono dotati di più unità di calcolo indipendenti per le quali l'esecuzione è effettivamente parallela, un sistema multithread invece è dotato di una singola unità di calcolo che si cerca di utilizzare al meglio eseguendo più thread nella stessa unità di calcolo. Le due tecniche sono complementari: a volte i sistemi multiprocessore implementano anche il multithreading per migliorare le prestazioni complessive del sistema.
 
== Panoramica ==