Pipeline: come vengono processate le istruzioni all’interno di un computer
Supponiamo di dover fare il bucato e di poter dividere questo compito in due: lavare i panni ed asciugarli. Abbiamo a disposizione una lavatrice e un’asciugatrice che richiedono entrambe 30 minuti di lavoro.
Consideriamo, per il momento, un solo cesto di panni sporchi: possiamo procedere utilizzando i primi 30 minuti per lavare i panni e i successivi 30 per asciugarli. L’intero processo richiede 60 minuti.
Complichiamo la situazione, considerando due cesti. Per affrontare questo problema esistono due soluzioni, una più efficiente dell’altra.
La soluzione “stupida” consiste nel lavare ed asciugare un cesto di panni alla volta, il che implica un tempo totale di 120 minuti (60 minuti per cesto).
La soluzione “intelligente” è la seguente: laviamo i panni del primo cesto in 30 minuti e poi li inseriamo in asciugatrice mentre sfruttiamo la lavatrice appena liberata per “processare” i panni del secondo cesto. In questo modo lavatrice ed asciugatrice stanno lavorando contemporaneamente. Dopo altri 30 minuti i panni del primo cesto sono asciugati e possiamo inserire in asciugatrice i panni del secondo. In sintesi, possiamo lavare due cesti in 90 minuti.
Questo approccio è chiamato pipelining e viene utilizzato nei più moderni processori per aumentare il throughput, ovvero il numero di istruzioni eseguite nell’unità di tempo. Più il throughput è alto, più il processore è performante.
Un processore con pipeline è composto da vari stadi, ognuno in grado di eseguire una semplice operazione per elaborare l’istruzione, esattamente come nella metafora del bucato. A regime, ogni stadio lavorerà in parallelo ad istruzioni diverse e dall’ultimo uscirà un’istruzione completata. L’idea della pipeline è proprio quella di parallelizzare il lavoro.
La pipeline è uno dei metodi che, seppur semplice, ha permesso di raggiungere le grandi capacità di calcolo dei moderni processori ed è per questo che aziende come AMD e Intel (per citare le più famose) investono grandi capitali nella ricerca in questo campo.
Passaporto Futuro è un’iniziativa no profit promossa da giovani studenti spinti dalla voglia di divulgare la conoscenza acquisita nel corso dei loro studi.
Assieme a Bufale.net collabora per la stesura di una rubrica chiamata “Bufale Junior” con l’obiettivo di creare una conoscenza sana e condivisa.
Se il nostro servizio ti piace sostienici su PATREON o
con una donazione PAYPAL.