|
|
|
|
| La tendenza a costruire circuiti sempre più piccoli e l'integrazione di molte componenti sulla stessa piastrina di silicio porta ad un crollo dei costi, ad una aumento delle prestazioni, e ad un'enorme espansione del mercato. Vengono prodotti cip di silicio che integrano migliaia, poi decine, centinaia di migliaia o milioni di componenti (VLSI , very large scale integration ). |
|
Negli anni 70 ed 80 vediamo svilupparsi la linea dei supercomputers. Si tratta di macchine fatte per calcoli veloci, adatte ad affrontare problemi matematici complessi. In queste macchine si spinge la tecnologia all'estremo, ed i costi sono altissimi. L'aumentare delle prestazioni delle CPU ed i bassi costi di CPU "commerciali" rispetto allo sviluppo di architetture e PCU dedicate provocano un declino di questa linea negli anni 90, e si finisce per vedere in questo campo macchine parallele, (MPP: massive parallel computers) costituite da aggregati di migliaia di CPU commerciali, collegate da bus o reti ad alte prestazioni. Nel 2000 questa linea e' ridotta ad un mercato di nicchia, seppur molto remunerativo, per un' elenco delle macchine più veloci al mondo si rimanda ai benchmark Jack Dongarra et al. in: www.top500.org. Citiamo giusto alcune macchine:
|
|
| |
|
|
I supercomputers degli anni 80 sono vettoriali, cioè con cpu dotate di appositi
registri vettoriali per effettuare con una specie di pipeline operazioni
matriciali velocemente.
I computer vettoriali possono lavorare 4-5 volte più veloci su calcoli che possano essere espressi in forma vettoriale, ma questo non e' sempre vero, e spesso per sfruttare bene le macchine bisogna riscrivere i programmi. |
Analogamente i computers paralleli danno buone prestazioni su problemi
adatti all'architettura della macchina, il problema deve essere formulato
in modo opportuno ed il programma scritto di conseguenza. Inoltre sono sempre
critici i collegamenti e le interazioni fra i processori.
Vengono proposte parecchie diverse architetture per queste macchine, si
parla di SIMD ( single instruction, multiple data ) quando tutte le CPU
eseguono lo stesso programma su dati diversi, di MIMD
( multiple instruction multiple data) quando le cpu eseguono programmi diversi.
I costi sono sempre enormi, i programmi devono essere scritti appositamente
per le singole macchine per sfruttarne bene le caratteristiche; questi
computer si collocano quindi naturalmente in un mercato di nicchia, mercato che,
al dilagare dei mini computers e delle workstation grafiche, e' sempre
più ridotto.
Nei grossi server invece si vede applicato un parallelismo diverso; e' abbastanza comune avere server con più di una cpu. In un sistema mono processore sono contemporaneamente attivi molti processi , e si alternano nell'uso della CPU, secondo code gestite dal sistema operativo. Nei multi-processori il sistema operativo assegna i processi in attesa alle diverse cpu ; e' il sistema operativo che impedisce conflitti fra le cpu, per accessi alla memoria condivisa ed uso di periferiche. Ogni processore esegue un processo diverso. Nelle macchine parallele su citate invece un solo programma e' eseguito da molte cpu contemporaneamente.
|
Negli anni 80 il calcolo e' dominato dai supercomputers, ma, contemporaneamente,
si assiste allo sviluppo vertiginoso dei mini-computers,
e questo rappresenta una svolta decisiva per l'informatica.
La DEC, dopo il pdp 8 ed il pdp 11, produce i Vax, (1978, Vax 11/780 , 1 Mips
fino alla serie 4000 ( 1990 ) da 10-30 Mips.)
queste macchine, a 32 bits, possono indirizzare fino a 4 Gb di memoria
ed hanno un sistema di memoria virtuale molto efficiente, il loro
sistema operativo (VMS) permette multiutenza ed interattività,
ha integrato un buon
software di rete ( Decnet ) e le versioni successive utilizzeranno interfacce
grafiche ( X11, Motif ). I costi, che partono da alcune decine di
migliaia di dollari, sono relativamente bassi e le prestazioni non
tanto distanti da quelle dei grossi computers.
Queste macchine hanno uno sviluppo enorme, specie presso le università
e gli enti di ricerca, ove ogni dipartimento poteva avere il suo sistema
di calcolo.
Tutto questo contribuisce al declino dei supercomputers. Molto del lavoro che pochi anni prima si faceva nei grandi centri di calcolo viene ora svolto su Vax, a livello dipartimentale. Il Vax ha una diffusione enorme, specie nelle università e nei centri di ricerca. La Dec diventa il secondo produttore di computers dopo l'IBM. | |
Negli anni 80 si assiste all'introduzione di istruzioni sempre più complesse e sempre più implementate in hardware. L'esempio estremo era l'architettura VAX, che aveva 2-300 istruzioni, con molti modi diversi di specificare gli operandi. ( si parla di CISC : complex instruction set ).
Ma mentre le macchine CISC diventavano sempre più complicate, con un hardware
sempre più complesso, inizia un'altra tendenza:
nel 1980 un gruppo di Berkeley ( David Patterson, Carlo Sequin ) progetta una cpu,
su un circuito VLSI, senza interprete, con poche istruzioni. Questo processore viene
chiamato RISC ( Reduced Instruction Set )
Nel 1981 a Stanford John Hennessy crea la cpu MIPS, anche
questa senza interprete.
Il fatto di non avere interprete e solo una cinquantina di istruzioni semplici permette un disegno più efficiente della CPU, e si possono facilmente organizzare le diverse fasi di un calcolo ( come fetch degli operandi dalla memoria, operazione, store degli operandi nella memoria) in pipelines: in modo cioè che le fasi possano essere eseguite in contemporanea come in una catena di montaggio, su dati diversi. Si assistette ad un gran dibattito accademico fra i sostenitori delle architetture CISC e RISC, ma siccome in un programma le istruzioni complesse sono usate relativamente poco e per la maggior parte del tempo la cpu esegue istruzioni semplici, le architetture RISC risultano più performanti.
Bel 1982 Andy Bechtolsheim, Vinod Khosla, Scott Mc Nealy e Bill Joy, che avevano lavorato su Unix a Berkeley, fondano la SUN. Il computer SUN-1 usa CPU Motorola 68020, ed e' una workstation fatta per lavorare in rete, con sistema Unix, ethernet e tcp/ip. Nel 1987 la SUN adotta il processore SPARC,