Multithreading: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Bot: Correzione di uno o più errori comuni |
|||
Riga 17:
Per esempio:
#Ciclo i
#Ciclo i+1
#Ciclo i+2
#Ciclo i+3
#Ciclo i+4
#Ciclo i+5
Concettualmente è una tecnica simile a quella presente nel multitasking cooperativo dei sistemi [[RTOS]], in questi sistemi operativi quando un programma deve attendere un evento volontariamente cede la priorità a un altro programma pronto all'esecuzione.
Riga 42:
Per esempio:
#Ciclo i
#Ciclo i+1
#Ciclo i+2
Questa tipologia di multithreading dovrebbe rimuovere la dipendenza dai dati dei singoli thread e quindi dovrebbe azzerare o comunque ridurre gli stalli della [[pipeline dati|pipeline]] dovuta alla dipendenza dai dati. Dato che ogni thread dovrebbe funzionare in modo indipendente i singoli thread eseguiranno programmi non correlati e quindi vi saranno poche probabilità che le istruzioni di un thread necessitino dei risultati elaborati da un'istruzione di un altro thread in esecuzione in quel momento.
|