• Non ci sono risultati.

– Evoluzione dei bus di sistema – Il bus PCI e PCI Express

N/A
N/A
Protected

Academic year: 2021

Condividi "– Evoluzione dei bus di sistema – Il bus PCI e PCI Express"

Copied!
106
0
0

Testo completo

(1)

BUS e altro

• Contenuto della lezione

– Evoluzione dei bus di sistema – Il bus PCI e PCI Express

– Cenni USB

– Bus per dischi rigidi – Supercomputer

– NB: nell’esposizione si usa normalmente la terminologia Intel. In alcuni casi (p.e. PCI) essa è uno standard

industriale; in altri (p.e. QPI) gli standard industriali hanno

altri nomi.

(2)

Schema di riferimento

• Abbiamo assunto come schema di riferimento quello di figura

• Corrisponde allo schema dei PC anni 80

– Tuttora in largo uso nei sistemi di controllo

– Superato nei moderni PC/workstation

(3)

Struttura PDP-11 (introdotto nel 1970)

• Ha introdotto lo standard del bus unico

MICROCOMPUTER PDP-11

MODULO DI MEMORIA LETTURA/SCRITTURA

MODULO MEMORIA SOLA LETTURA

REAL TIME CLOCK

MODULO INTERFACCIA LINEA SERIALE

( CONSOLE )

MODULI OPZIONALI SUPPORTI MAGNETICI ROTANTI

STAMPANTE AD ALTA VELOCITA'

CONVERTITORE A/D CONVERTITORE D/A INTERFACCIA PARALLELA INTERFACCIA SERIALE INTERFACCIA DMA ACCESSORI

BACKPLANE

POWER SUPPLY

UNIBUS

MODULO

La console era su linea

seriale RS-232

(4)

Prima del PDP-11

• Praticamente non esistevano standard organizzativi

CPU

I/O bus bus di I/O

CPU

(HP 2100) MINI MAINFRAME

(IBM 370)

modulo modulo I/O

I/O modulo

I/O modulo I/O

controllore canale di

MEMORIA MEMORIA

(5)

Con i microprocessori

• L’avvento dei microprocessori (1975) ha confermato lo standard

a bus unico (stile PDP-11, anche se con differente tecnologia)

(6)

Con i microprocessori

• L’avvento dei microprocessori (1975) ha confermato lo standard a bus unico (stile PDP-11, anche se con differente tecnologia)

E’ l’unico a

sopravvivere

(7)

memoria I/O

MEMORIA CPU

PC bus scheda madre

Il primo PC IBM (1981)

• E’ sparita la console RS232 del PDP11

• Il Video e la tastiera sono collegati direttamente alla scheda madre. Per il video c’è una RAM apposita

• Memoria di espansione e periferici sono su schede collegate sul bus

• Il bus è (praticamente) quello dell’8088.

• Successivamente è stato

esteso a 16 bit (venne detto

ISA, perché era adottato da

tutti)

(8)

Si cambia di nuovo !

• A partire dagli anni ’90 il bus unico si è dimostrato un

“collo di bottiglia”

– Inutile far convivere sullo stesso bus dispositivi veloci come la memoria e dispositivi lenti come una tastiera o un floppy

• Si è passati un sistema di Bus a differenti livelli e differenti velocità. Esempio:

FSB (Front Side Bus): Bus parallelo implementato dal microPCI (Peripheral Component Interconnect): Bus parallelo di

livello intermedio

ISA (Industry Standard Architecture): Bus di basso livello per connettere i dispositivi convenzionali lenti

– Tra i diversi livelli ci sono i “Bridge”

– Essi formano il “Chip set” che fa da “collante”

(9)

Anni 90

(10)

Esempio anni ’90

South Bridge North

Bridge

(11)

Struttura PC anni 2000

(12)

Struttura PC corrente (fine anni 2000)

Si è passati al

single chip di

supporto e soli

bus seriali

(13)

PC fine anni 2000

(14)

Anni 20103: ultimo Strillo (Nehalem)

(15)

Chip Nehalem

(16)

Memoria Nehalem

• Il controllore di memoria è nella stessa CPU (la CPU ha 3 canali verso la memoria, su ciascuno dei quali si possono montare 3 DIMM)

• L’esempio corrisponde alla config di destra del trasp precedente

QPI

(17)

Memoria Nehalem

• Le migliori prestazioni si hanno se la memoria è bilanciata sui 3 canali.

• I 3 canali servono alla gestione “interleaved”

(18)

Ricapitoliamo

• Fino almeno a fine anni ’80, PC e Workstation erano costruiti attorno a un bus unico a cui erano attaccati (+ o -) tutti i

dispositivi

• A partire dagli anni 90 sono state introdotte gerarchie di bus

– Tipico è il bus PCI (introdotto da Intel per collegare periferici ad alte prestazioni)

– E stato introdotto il “bus seriale” USB

• Negli anni 2000 i “bus seriali” hanno cominciato a sostituire i bus paralleli

– Il Nehalem ha 3 bus paralleli (64bit) verso la memoria e 2 bus serial QPI

Attenzione: La parola “bus seriale” è spropositata, si

dovrebbe parlare di “interconnessione/link seriale”

(19)

Crescita prestazioni Bus PC

(20)

BUS Parallelo/seriale

• Il parallelismo fa aumentare le prestazioni

• Il bus parallelo è per sua natura “multi drop”: sullo stesso bus si possono attaccare più dispositivi

– Più portare ad alti assorbimenti

– Richiede un metodo per l’accesso al bus (contese)

• Ma allora perché i bus paralleli vengono sostituiti con collegamenti seriali (che per natura sono punto-punto) ???

– Perché quando le frequenze sono molto elevate nascono

fenomeni di Timing skew (oltre a fenomeni EMI)

(21)

Timing skew

• Disallineamento temporale nell’arrivo di due o più segnali inviati lungo più linee in parallelo, dovuto alle caratteristiche fisiche del BUS.

• Impone un limite fisico alla larghezza di banda (per poter

garantire una trasmissione di dati stabile e sicura)

(22)

Link seriale

• I dati vengono trasmessi un bit alla volta

– Serializzati in trasmissione

– Ricostruzione dal dato in ricezione

• Vantaggi

– Il problema del time skew è eliminato

– Il collegamento è del tipo LVDS ( Low Voltage Differential Signal ) – I collegamento sono punto-punto

• Non ci sono più connessioni multi drop

• Cross talk eliminato

(23)

Link seriale

• I dati vengono trasmessi un bit alla volta

– Serializzati in trasmissione

– Ricostruzione dal dato in ricezione

• Vantaggi

– Il problema del time skew è eliminato

– I collegamenti sono LVDS ( Low Voltage Differential Signal ) – I collegamenti sono punto-punto

• Non ci sono più connessioni multi drop

• Cross talk eliminato

Il clock non è in forma

esplicita

(24)

Segnali differenziali

• Metodo di trasmissione in cui i segnali sono trasmessi in forma complementare (+ e - ) su una coppia si fili.

• Il valore del segnale è dato dalla differenza tra i due segnali

• Poiché i disturbi influenzano entrambi i segnali la differenza li elide

• E’ n modo molto più sicuro della trasmissione su un solo filo dove il valore del segnale è rispetto a una (sola) tensione di riferimento (la massa)

Esempi di comunicazioni differenziali:

• Digitali: RS-422, RS-485, Ethernet doppino, PCI Express,

USB…..

(25)

Come il rumore viene eliminato

(26)

Immunità al rumore

La figura precedente non è esatta:

in uscita il segnale è doppio

(27)

Immunità al rumore

• Un rumore su un singolo filo (caso peggiore) ha un impatto metà di come avrebbe sul singolo filo in trasmissione non differenziale.

– Ovvero nel caso peggiore l’immunità è raddoppiata – Se il rumore appare su ambedue viene eliminato

– La trasmissione differenziale è tanto più indicata quanto più i segnali

sono a basso livello di tensione

(28)

Trasmissione sincrona/asincrona

Sincrona

– Trasmettitore e ricevitore hanno clock propri alla stessa frequenza

• Può generarsi disallineamento tra i due clock

• Trasmissione di blocchi dati di dimensioni ridotte

• Ogni blocco dati ha una sequenza iniziale di

“sincronizzazione” che serve a mettere in fase il clock del

ricevente

(29)

Trasmissione sincrona/asincrona

Asincrona

– Il sincronismo è su ciascun carattere. Il carattere contiene implicitamente il clock

• Fondamentale è il concetto di

“codifica”, ovvero come un dato viene codificato/decodificato in trasmissione/ricezione

• Normalmente la linea è in stato di riposo

– Quando passa bassa si ha lo start bit

– Seguono i bit del carattere

– Da ultimo lo stop bit

(30)

BUS PARALLELI/SERIALI

• Nel seguito, a titolo di esempio faremo

riferimento al bus PCI. (Ne approfittiamo per capire come funziona un bus)

• PCI:

– Introdotto da Intel negli anni ’90 come bus parallelo a 32 bit, f= 33 MHz (pari a 133 MB/s) per collegare periferiche

– Successivamente portato a 64 bit e f = 133 MHz (pari a 1014 MB/s) (PCI-X)

Nel 2004 è stato introdotto il PCI-Express, evoluzione in

forma seriale del PCI (con cui mantiene la compatibilità SW)

(31)

PCI (segnali)

Clock

(32)

Transazioni

• Trasferimento di pacchetti di dati la cui lunghezza è determinata dinamicamente in fase di trasferimento

• Tutte le operazioni sincronizzate sul clock

• Una transazione di trasferimento si attua in due fasi:

a) Fase di indirizzamento: il master trasmette indirizzi e tipo di trasferimento (memory read, memory write, i/o read,…), il target indirizzato risponde e dice di essere pronto

b) Fase di trasferimento dati

• Prima della transazione può esserci una fase di arbitraggio per l’allocazione del bus a uno dei master che ne fanno richiesta contemporanea

– L’arbitraggio verrà mostrato più avanti

(33)

PCI: Segnali di controllo di interesse

(34)

PCI – transazione (burst) di lettura

(35)

PCI – transazione (burst) di lettura

(36)

PCI – transazione di lettura

Clock 1. La transazione inizia quando l’initiator (master) asserisce il

segnale di FRAME, l’indirizzo su AD[0:31] e il comando (di lettura) su C/BE[0 : 3]#

Clock 2. Il master asserisce IRDY; le linee C/BE[0 : 3]# assumono significato di Byte Enable. Il ciclo viene lasciato passare per dare il tempo di stabilizzarsi alle linee AD (che cambiano proprietario,

dall’initiator al target che le asserisce come linee Dati). Poiché il fronte finale trova TRDY (e DEVSEL) non asserito segue un ciclo di wait

Clock 3. Il dispositivo risponde al master asserendo il segnale di DEVSEL e il segnale TRDY: ha inizio la fase dei dati.

Clock 4. Essendo IRDY e TRDY asseriti, viene trasferito il primo dato.

Clock 5. Il target ha disasserito TRDY (evidentemente non è in grado di

produrre il secondo dato) causando un ciclo di attesa e mantenendo

sulle linee AD il dato precedente

(37)

PCI – transazione (burst) di lettura

Clock 1. La transazione inizia quando l’initiator (master)

(38)

PCI – transazione (burst) di lettura

Clock 2. Il master asserisce IRDY; le linee C/BE[0:3]# assumono

(39)

PCI – transazione (burst) di lettura

Clock 3. Il dispositivo risponde al master asserendo il segnale di

(40)

PCI – transazione (burst) di lettura

(41)

PCI – transazione (burst) di lettura

Clock 5. Il target ha disasserito TRDY (evidentemente non è in

grado di produrre il secondo dato) causando un ciclo di attesa sulle

(42)

PCI – transazione (burst) di lettura

(43)

PCI – transazione (burst) di lettura

Clock 8. Il Master legge il dato sul bus. Poiché il Master ha

disasserito FRAME la transazione deve terminare (il Target ha

mantenuto il dato perché sul fronte del clock precedente aveva

campionato IRDY disasserito). il Target disasserisce TRDY e

(44)

PCI – transazione di scrittura

(45)

PCI

• Le transazioni precedenti sono state concluse dal

Master normalmente. Il master può anche concludere per:

– Time-out – Abort

• Il Target può pure forzare la conclusione per:

– Retry (ovvero: riprova dopo!) – Disconnect (basta!)

– Target abort

(non addentriamoci nei dettagli)

(46)

PCI arbitraggio per il possesso del bus

• L’arbitraggio è centralizzato

• E’ nascosto: avviene durante il trasferimento

precedente in modo che nessun ciclo di bus venga

penalizzato

(47)

PCI: esempio arbitraggio

• Ipotesi

– A e B sono due Master – B ha maggior priorità

– A fa per primo la richiesta, che gli viene garantita

– B fa la richiesta dopo A. Quando la richiesta di B viene garantita, viene “sgarantita” quella di A che rilascia il bus

• Si ipotizza che B trasferisca un solo dato

– Quando B rilascia il bus (disasserzione della richiesta), A, che ha mantenuto la richiesta, riottiene il bus (ovviamente perché non ci sono altre richieste più prioritarie)

• Seguirà il completamento della transazione interrotta

(48)

PCI: esempio arbitraggio

(49)

PCI Express

Link point-to-point:

• Composto da un certo numero di corsie

• Corsia (lane): canale RX e canale TX

• La trasmissione sui canali è differenziale

Possibili tipologie di Link:

x1, x2, x4, x8, x12, x16 e x32

Nella versione 1 la velocità di trasmissione è

di 2,5 Gb/s su ciascun canale (ovvero 5

Gb/s per link; ovvero 0,5 GB/s per lane).

(50)

Connettori PCI Express e PCI

X16 X1 X16

X4

(51)

PCI Express prestazioni

• Versione 1

– Velocità di trasmissione = 2,5 Gb/s su ciascun canale (ovvero 5 Gb/s per lane; ovvero 0,5 GB/s per lane).

– Un link 8x arriva a 4 GB/s (comprende caratteri di controllo ecc..)

• Versione 2

– Velocità di trasmissione = 5 Gb/s su ciascun canale (ovvero 10 Gb/s per lane; ovvero 1 GB/s per lane).

– Un link 16x arriva a 16 GB/s

• Versione 3

– La codifica è diventata 128b/130b (alza di molto il rendimento)

– Velocità di trasmissione = 8 Gb/s su ciascun canale

(52)

Codifica 8bit/10bit

• 8 bit in ingresso vengono trasformati in 10 bit di uscita, secondo opportune tabelle di conversione (lookup table) predeterminate e note al ricevitore.

• La trasformazione è studiata in modo da ottenere, per ciascuno dei 256 possibili byte in ingresso:

– Flusso in uscita con un numero sufficiente di transizioni 0/1, in modo da poter recuperare facilmente il clock in ricezione.

– Flusso in uscita con un numero bilanciato di 0 e 1 (bilanciamento della corrente DC).

– Possibilità di aggiungere codici di controllo, grazie al fatto che i possibili codici a 10 bit sono 1024 mentre i codici in ingresso sono solo 256.

– Possibilità di rilevare gli errori di trasmissione grazie al rilevamento della disparità sul segnale trasmesso.

– Svantaggio: nel passaggio da 8 a 10 bit si ha un degrado del 25% delle

(53)

Codifica 8/10

La codifica 8/10 deve rispettare le seguenti regole:

• nessun codice a 10 bit in uscita deve avere più di 5 bit consecutivi identici

• nessun codice a 10 bit in uscita deve contenere più di sei 0 o sei 1, distribuiti come segue:

• quattro 0 e sei 1

• quattro 1 e sei 0

• cinque 0 e cinque 1

• I caratteri che non rispettano queste regole vengono considerati errori dal ricevitore

• Le regole precedenti hanno come effetto il bilanciamento della

componente DC

(54)

Protocollo a livelli del PCI Express

Compatibilità

col PCI

(55)

PCI Express pacchetti dati

(56)

Perché si dice che è un bus

(57)

USB (1995)

Universal Serial Bus

• Nel mondo dei PC è’ diventata l’interfaccia standard per qualunque dispositivo esterno

• Più che un bus è un sistema di interconnessione di periferici che ha al centro un host

– Capacità di collegare più dispositivi sulla stessa porta USB – Periferrici e hub

• Collegamento/scollegamento a caldo

• Protocollo di comunicazione a 3 livelli

• Velocità

– USB 1.1 : 1,5 MB/s

– USB 2.0 : 35 MB/s (effettivi)

– USB 3.0 : 400 MB/s (effettivi)

(58)

USB

(59)

USB Protocollo/livelli flusso

(60)

Cavo USB

(61)

Seconda parte

DISCHI E

RELATIVI

BUS

(62)

Dischi magnetici

• Memorie di massa

• Piatti, settori, tracce, cilindri, testine,….

• Tecnologie raffinatissime

– l’altezza di volo delle testine è 0,5 micron (una particella di fumo è 6 micron)

– migliaia di giri al min senza mai fermarsi

(63)

Anatomia HDD

(64)

HD per PC - Evoluzione

ST506 : 5 MB 5 1/4 1979 (primo per i PC)

Oggi: 2,5”

portabili: 1TB e più

(65)
(66)

HDD

Piatti: da 1 a 4 (anche di più)

• Diametro: da 1 a 5,25 pollici (portatili 2,5”, desktop 3,5”)

• Giri/min: da 3.600 a 7.200 (e più, fino a 15.000)

• Tracce/faccia: da 1.000 a 5.000+ per faccia

• Settori/traccia: da 17 a 200+ (il valore “standard” è 63)

• Dim settore (Byte): 512 (tipica ), 1.024, 2.048, 4.096 (la tendenza è verso 4.096)

• Velocità massima trasferimento (interna): Con SATA 3.0 si arriva a fino a 6 Gb/s , SATA 1.0 arrivava fino a 1.5 Gb/s ,

• La velocità massima di trasferimento esterna può essere

superiore per via della cache interna che fa da buffer

(67)

Tempi (più o meno tipici)

• Tseek: da 3 a 12 ms

(è un tempo medio: sfavorevole!! )

• Tlat = 0,5 (60/g) (g: giri/min)

g = 3600 Tlat =8,33 ms g = 7200 Tlat = 4,17 ms g = 10000 Tlat = 3,00 ms

• Ttrasf = Dimsett/Vtrasf

Dim = 4096 Vt = 100 MB/s Ttrasf = 0,04 ms

• Tacc= Tseek+Tlat+Ttrasf (+Tcontr+Tq)

• Esempio: Seagate Barracuda 7200.11

– 1 TB; 7200 g/m; Interfaccia SATA; 32 MB cache;

– 512 B/settore; 1.953.525.168 settori; 63 settori/traccia;

– Tacc = 11 ms

– Vt (interna) = 1030 Mb/s; Vt (esterna continua) = 105 MB/s

– Vt (esterna max) = 300 MB/s;

(68)

Settori

Dischi attuali

Conviene avere + o – la

stessa densità => divisione per zone

N sett/traccia cresce verso le In passato

N sett/traccia costante

(69)

Cilindri

Indirizzamento CHS (cilindro – testina – settore) – C: individua il cilindro

– H: individua la testina (la superficie)

• (C+H individuano la traccia)

– S: individua il settore entro la traccia Le tracce in

posizione X formano

il cilindro X

(70)

Indirizzamento CHS

• Standard CHS versione iniziale:

– Bit di indirizzo 24: 10+8+6

– 1024 * 255 * 63 = 16 M settori c.a. Max – Con settori da 512 B => 8 GB c.a. Max

• Il BIOS del PC XT IMB usava 4 bit per H

– Ne conseguiva una capacità massima di = 0,5 GB c.a.

– Successivamente i bit di indirizzo venne portato a 28 e poi esteso ulteriormente.

• Con i dischi moderni IDE (zoned recording) questo schema non

corrisponde più a quello fisico. Ma CHS viene ancora usato per

compatibilità: il drive converte CHS nell’indirizzo fisico interno

(71)

LBA : Logic Block Addressing (dischi IDE)

• Ogni settore ha un indirizzo (un numero) da 0 fino a n-1 (se n è il numero complessivo dei settori)

• Per compatibilità è possibile usare l’indirizzamento CHS, il drive individua il settore corrispondente

• Nelle specifiche si leggono numeri di cilindri e di testine che non corrispondono a quelli fisici. Ad esempio, si può leggere che un disco ha la capacità pari a C=16.383; H= 20; e 63 sett/traccia.

Difficile far stare 20 testine in meno di 2 cm di spessore !!!!

Quei numeri non sono quelli fisici. Di norma le testine non sono

più di 8; il 20 corrisponde a un campo dell’indirizzo come CHS.

La logica del drive converte CHS nell’indirizzo interno

(72)

Esempio : Hitachi Travelstar 2,5” SATA

Spessore: 9,5 mm

(73)

SSD (Solid-State Drive)

• Usano Memorie Flash

– Ci sono anche SSD RAM (più veloci, ma (ovviamente) volatili)

• Vantaggi

– Silenziosi, meno influenzati da urti

– Più veloci (non ci sono i tempi i seek e di latenza)

• Svantaggi

– Più costosi (almeno per ora….)

• Interfacce

Seriali: SATA; Serial attached SCSI (usualmente sui

server); USB; Fiber Channel (esclusivamente sui server);

PCI Express

Parallele: IDE/ATA; SCSI (tendenzialmente rimpiazzate

dalle corrispondenti seriali)

(74)

Interfacce/bus Dischi Rigidi

• SCSI

– Prevede un controllore in grado di pilotare più dispositivi (teoricamente si può arrivare oltre 2000), anche diversi – Parallela

– High-end applications

• IDE/ATA

– La prima a integrare la logica del controllore sul disco stesso – Parallela

– Tipica di PC e workstation (1-2 HD)

• SATA

– Seriale (più veloce di ATA)

– Cavi di pochi fili (via il cavo piatto ATA) – Point-to-point seriale

• USB

– Seriale, point-to-point

(75)

SCSI (introdotto metà anni 80)

• Parallelo, Multidrop

• Connettore da 50 (o 68) pin

• Parallelismo: 8 o 16 bit (dati)

• Velocità

– SCSI (8 bit): 5 MB/s – Wide SCSI (16 bit): 20 MB/s – Ultra-640 SCSI (16 bit): 640 MB/s

Molte altre

versioni

(76)

SCSI

(77)

IDE/ATA (introdotto a metà anni 80)

IDE (Integrated Drive Electronics) /ATA (AT Attachment)

– E’ lo standard definito rispetto al bus del PC AT (il nome dovrebbe essere solo ATA)

Bus parallelo (16 bit). Multidrop – In svariate versioni

– ATA 1 : l’originale, pensato all’epoca del PC AT (ISA) per i soli dischi rigidi

– ATA 4 (ATAPI) : estende l’interfaccia anche ai CD (detto anche Ultra ATA o ATA/33)

• Velocità: 16 MB/s (introduzione) 133 MB/s (finale)

(78)

IDE/ATA

(79)

Bus Seriali

• In genere si tratta della trasformazione di bus paralleli in bus seriali:

SAS (Serial Attached SCSI, deriva dalo SCSI)SATA (Serial ATA, deriva da ATA)

– A livello di controllore mantengono la compatibilità con i paralleli da cui derivano

• La ragione per passare da bus paralli

(apparentemente più veloci) a bus seriali è già stata

illustrata

(80)

SAS

Serial Attached SCSI

• Evoluzione in forma di bus seriale

• Punto-punto

• Compatibile con il SCSI (al controllore), ma è un protocollo a livelli

• Preferito al SATA sui server

• Il cavo corrisponde a 4 collegamenti SATA (vedi avanti)

• Velocità

– 3 Gb/s : 300 MB/s

– 6 Gb/s : 600 MB/s

(81)

SATA (introdotto nel 2003)

• Serial Advanced Technology Attachment

Bus Seriale, point to point

• Praticamente ha del tutto rimpiazzato ATA

• I comandi al controllore sono rimasti quelli IDE per compatibilità, ma il protocollo è a livelli

• Preferito a SAS su applicazioni non critiche

• Velocità:

– Rev 1 1,5 Gb/s: 150 MB/s – Rev 3 6 Gb/s: 600 MB/s

– SATA Express: 16 Gb/s: 1,6 GB/s (su bus PCIe)

(82)

SATA

• Point-to-point

– A tutti gli effetti un collegamento diretto anche se si continua a chiamarlo “bus” (meglio parlare di interfaccia)

• 7 linee: 3 masse e 4 segnali

Nota: le tre masse hanno contatti

leggermente più lunghi per fare in

modo che si tocchino prima

(83)

SATA Protocollo a 3 livelli

• Link Layer – comandi primitivi

– Corrisponde al livello fisico, livello di segnale, caratteri

• Packet Layer – scambio di “frame”

• Application/Command Layer –

– È il livello che presenta un’interfaccia compatibile con i comandi ATA

– Un comando ATA (compresi i dati) viene trasformato in una serie di pacchetti che, a loro volta, si trasformano in una serie di caratteri

Nei bus seriali i protocolli a più livelli sono lo

standard

(84)

Parte terza

?

(85)

Il primo computer della storia

• ENIAC (Electronic Numerical Integrator And Calculator) – Sviluppato presso l’Università della Pennsylvania

– Finanziato dal Ministero della Difesa USA

– Divenne operativo durante la II guerra mondiale

– Costruito tra il 1943 e il 1946, reso pubblico nel 1946

– Oltre 120 metri cubi di volume, su una superficie di 180 mq, pesava 30 tonnellate. Consumava poco meno di 180kW

– Oltre 18.000 tubi a vuoto (valvole) collegati da 500.000 contatti saldati a mano.

– 20 registri di 10 cifre; ogni registro era lungo oltre mezzo metro.

• I progettisti erano J.P. Eckert e J. Mauchly

(86)
(87)

Processori Intel

(88)

Processori Intel

(89)

Primati

(90)

Ma come scaldi!

(91)

Ma come scaldi!

Core2 starebbe qui (+o-)

Se la crescita fosse stata la

stessa !!

(92)

Parte terza

SUPERCOMPUTER

(93)

K (il più potente a novembre 2011)

K Computer (Fujitsu, Giappone)

– Presso RIKEN Advanced Institute for Computational Science (AICS)

– 705.024 core (di processori SPARC64 VIIIfx 8C 2.00GHz ovvero 88.128 processori)

– 10,51 Petaflop/s

– Consumo 12,66 MW

– 0,83 MFlops/W

(94)

K computer

(95)

Il più potente (a novembre 2012)

TITAN (Cray XK7)

– Presso Oak Ridge National Laboratory (usa)

– 560.640 core (di processori Opteron 6274 16C 2,2 GHz, ovvero 35.040 processori)

– 261.632 acceleratori (coprocessori NVIDIA K20x) – 17.59 Petaflop/s (Linpack) (1 Peta = 10^

15

)

– Consumo 8.21 MW – 2,143 MFlops/W

– Questo supercomputer ha un numero relativamente basso i processori; usa i coprocessori (GPU) per raggiungere questo livello prestazioni

http://www.top500.org/

(96)

Il secondo più potente (a novembre 2012) ( Era il più potente a giugno 2012)

SEQUOIA ( IBM BlueGene/Q)

– Presso Lawrence Livermore National Laboratoy (usa)

– 1.572.864 core (di processori Power BQC (PowerPC) 16C 1,6 GHz, ovvero 98.304 processori)

– 16,32 Petaflop/s

– Consumo 7,89 MW – 2,1 MFlops/W

– 96 armadi

– 82,2 KW per armadio (circa 1/3 di ENIAC !!) – 1024 processori (16.384 core) per armadio

– Ogni processore ha 16 GB di memoria DRAM (DDR3)

– Pesa quanto 60 elefanti adulti

(97)

Sequoia

(98)

Il più potente (a giugno 2013)

Tianhe-2 (MilkyWay-2)

– Presso National University of Defense Technology (NUDT) Cina (è anche il costruttore)

– 3.120.000 core (di processori Intel Xeon E5-2692 12C 2.200GHz, ovvero 260.000 processori)

– 2.736.000 core acceleratori (coprocessori Xeon Phi 31S1P) – 33,86 Petaflop/s (Linpack)

– Consumo 17,81 MW – 1.902 MFlops/W

– E’ meno efficiente del precedente. Usa più processori e più

coprocessori.

(99)

Tanto per la cronaca

• Nella classifica di Giugno 2012 al numero 7 apparve

“Fermi” : BlueGene/Q (IBM) del CINECA (Bologna).

• 163.840 core (di processori Power BQC 16C 1.600GHz)

• 1,72 Petaflops/s

• A Novembre 2012 è passato al n. 9

• Giugno 2013 è passato al n. 12

• A Novembre 2013 è passato al n. 15

(100)

Nota

• I processori attuali hanno prestazioni dell’ordine delle decine di Gflop/s

• I7 (versioni ultime) c’è chi dice che faccia oltre 100 Gflop/s

ATTENZIONE: se si vedono le prestazioni sui cataloghi o su Internet ci si deve accertare bene come sono state misurate (benchmark, configurazione della macchina, ecc.). Vengono pubblicati risultati inconfrontabili.

• Da un studio serio (Dongarra)

– Intel Core i7 3930K ( a 4,720 GH (overclocked)

• prestazioni misurate con Linpack su Windows 64 bit

• 3.100 (circa) MFlop = 3,1 GFlop/s

(101)

Costo per GFlop (Tenuto conto dell’inflazione)

• 1961 $8,3 trillion (una moltplicazione in 17.7 ms)

• 1984 $33.000.000 (Cray X-MP)

• 1997 $42.000

• April 2000 $1.300

• August 2003 $100

• August 2007 $52

• March 2011 $1.80

• August 2012 $0.73

• June 2013 $0.22

Fonte: Wikipedia

(102)

“Legge” di Moore

• Enunciata nel 1965, aggiustata più volte:

Inizialmente: Raddoppio della “capacità elaborativa”

(numero di transistori) ogni 12 mesi (anni 70) – A media via: Raddoppio ogni 2 anni (anni 80) – Correntemente: Raddoppio ogni 18 mesi (dai 90)

• Vuol dire che nei prossimi 18 mesi l’elettronica avrà un aumento quantitativo pari a quello complessivo dall’inizio (della storia) ad oggi !!!!!!!!!!!!!!

– Non è una legge fisica

– Prima o poi non andrà più bene

(103)

Legge di Moore

(104)

Crescita livello integrazione DRAM

(105)

Evoluzione tecnologica (DRAM)

(106)

Costi DRAM

Riferimenti

Documenti correlati

I biologici, infatti, sia in monoterapia sia in associazione al methotrexate (MTX), agiscono più rapidamente ri- spetto ai DMARDs e sono in grado di ridurre l’attività della

Chiamata anche asincrona e spesso identificata con la sigla RS-232-C era l’interfaccia più comune e semplice fino all’introduzione delle USB Veniva utilizzata per collegare i

Il segnale viene inizialmente trasmesso nello stato +, quindi attraversa due canali successivi, infine viene ricevuto.. Ciascun canale trasmette il segnale correttamente con

 Per gestire un segnale un processo deve dire al kernel che cosa intende fare nel caso riceva tale segnale.  Tipicamente

Verso i cinque anni i bambini iniziano a sviluppare una conoscenza adeguata degli intenti degli spot Un bambino di sei anni non ha ancora sviluppato una conoscenza adeguata

l oggetto che aiuta ogni bambino a transitare dalla scuola dell infanzia alla scuola primaria.. da Vittorio Emanuele II dalle

riconoscimento della differenza degli altri da sé, ma non ancora il senso di sé come entità separata dagli altri maturazione fisica e psicologica descrivibile attraverso stadi.

Attraverso l’aggiunta di colore su una fascia della pavimentazione stradale che si insidia all’interno del Magazzino, le fermate restano più visibili dalla strada..