Differenze tra le versioni di "Multithreading"

m
Bot: fix citazione web (v. discussione)
m (Bot: Aggiungo il tag <references /> mancante; modifiche estetiche)
m (Bot: fix citazione web (v. discussione))
{{F|componenti per computer|marzo 2013}}
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 condividono lo stesso spazio d'indirizzamento, la stessa [[memoria cache|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 (informatica)|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.
== Coarse-grained multithreading ==
=== Idea di base ===
Il multithreading ''coarse-grained'' (a grana grossa) prevede che il processore esegua un singolo thread fino a quando questo non viene bloccato da un evento che normalmente ha una elevata latenza (per esempio un [[cache miss]]), in questo caso il processore provvede a eseguire un altro thread che era pronto per l'esecuzione. Il thread di rimpiazzo rimane in esecuzione fino a quando il primo thread non è pronto per l'esecuzione.
 
Per esempio:
 
== Collegamenti esterni ==
* [{{cita web|http://www.di.unito.it/~gunetti/DIDATTICA/architettureII/06-multithreading-3.pdf |Lucidi sul multithreading]}}
{{Portale|informatica}}
 
2 869 198

contributi