La macchina di connessione è un supercomputer con migliaia di computer interconnessi. Il suo design consente agli scienziati di emulare almeno in parte i processi in un cervello umano. Utilizzando il calcolo parallelo, la macchina di connessione implementa l’intelligenza artificiale. Alcune di queste aree includono il riconoscimento facciale e grafico, le applicazioni per la risoluzione di problemi complessi in vari campi come la medicina e la crittografia e la codifica e decodifica di documenti sensibili.
Nel 1981, Danny Hillis ha scritto la prima descrizione dell’architettura della macchina di connessione. Era uno studente del Massachusetts Institute of Technology (MIT) che lavorava all’Artificial Intelligence Laboratory del MIT. Alla fine degli anni ‘1970, la ricerca sulla cognizione umana, che includeva uno studio su come pensano gli esseri umani, rese necessario cercare capacità di elaborazione al di là dei cosiddetti computer sequenziali. Nel 1983, Danny Hillis ha anche contribuito a fondare la Thinking Machines Corporation, dove le macchine di connessione CM-1, CM-2 e CM-5 sono state costruite rispettivamente nel 1985, 1987 e 1993.
La macchina di connessione fa uso di veloci processori paralleli. Quando a una macchina di connessione viene presentato un input, ad esempio l’immagine di un volto per il riconoscimento, delega l’attività di riconoscimento a una gerarchia di migliaia di computer. Questo è analogo a un amministratore delegato che esegue compiti enormi e complicati delegando a un piccolo gruppo di persone che poi delegano ulteriormente a un gruppo di persone e così via. Di conseguenza, un compito enorme viene svolto in un tempo relativamente breve da individui “ad azione parallela”, simili ai processori paralleli in una macchina di connessione.
I computer di casa sono computer sequenziali con capacità di elaborazione parallela limitate. Ad esempio, i processori grafici nei computer di casa sono processori paralleli che impediscono il rallentamento del processore principale in modo che possa interagire con l’utente in tempo reale. I computer sequenziali completi eseguono un’istruzione alla volta in base all’interpretazione del programmatore della soluzione a un problema. Il computer di casa è utile per applicazioni relativamente semplici che non richiedono elaborazioni molto complicate sotto la pressione del tempo e non sono attrezzate per svolgere funzioni di macchina di connessione.
Esistono vari tipi di computer a seconda della velocità del processore, della dimensione della parola dati e dell’architettura. La velocità del processore è solitamente in cicli al secondo in cui un processore è sincronizzato o temporizzato e talvolta è descritto come numero di istruzioni in virgola mobile al secondo. La dimensione della parola dati è il numero di bit su cui un processore è in grado di lavorare in un’istruzione macchina, in genere 32, 64 o 128 bit o più per computer più grandi. L’architettura è il modo in cui le parti di processori e computer sono interconnesse tra loro. Esistono computer paralleli semplici e computer paralleli di massa, come la macchina di connessione.