Esercitazioni I/O. Dischi: Esercizio 1 Si consideri un programma che legge blocchi di 2 KB da disco, esegue un’elaborazione su questi, e quindi li riscrive.

Slides:



Advertisements
Presentazioni simili
Dipartimento di Ingegneria Idraulica e Ambientale - Universita di Pavia 1 Caduta di un corpo circolare sommerso in un serbatoio 50 cm 28 cm Blocco circolare.
Advertisements

1 Introduzione ai calcolatori Parte II Software di base.
Gestione della memoria centrale
L’Architettura del Sistema di Elaborazione
B-alberi dizionari in memoria secondaria. ASD - B-tree2 dizionari su memoria secondaria la memorizzazione su memoria secondaria risponde a due esigenze.
File System Cos’è un File System File e Directory
Architettura di un sistema informatico Hardware
Comandi ai dispositivi di I/O + Si usano due metodi per mandare informazioni a un dispositivo: –Istruzioni specifiche di I/O –I/O mappato in memoria (memory.
Memoria virtuale Memoria virtuale – separazione della memoria logica dell’utente dalla memoria fisica. Solo alcune parti di un programma devono trovarsi.
Esercizi sulle architetture
MICROCONTROLLORI Di Tiziano Ragazzi.
Il Software: Obiettivi Programmare direttamente la macchina hardware è molto difficile: lutente dovrebbe conoscere lorganizzazione fisica del computer.
Esercizio 1 1)      Un collegamento end-to-end è formato da tre tratte, la prima AB con la velocità di 5 Mb/s, la seconda BC di 20 Mb/s e la terza CD di.
1 Esercizio 1 Due nodi A, e B, sono collegati a un nodo C con canali di velocità pari a 500 Mb/s e 1000 Mb/s e a sua volta C è collegato al nodo D con.
Novembre 2006F. Borgonovo: Esercizi-61 Esercizio: Il collegamento ISDN fra NT e centrale locale (interfaccia U) avviene su un doppino con duplexing (uplink.
Esercizio 1 Un sistema di multiplazione TDM di velocità pari a 2Mb/s trasporta canali vocali codificati a 16 kb/s più un canale dati a 112 kb/s. Si indichi.
Esercizio 1 Due collegamenti in cascata, AB e BC hanno una velocità rispettivamente di 100 Mb/s e 50 Mb/s e tempi di propagazione pari a 1 ms e 1.2 ms.
2 Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione dati memorizzazione dati trasferimento.
File.
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Algoritmi e Strutture Dati Capitolo 2 Modelli di calcolo e metodologie.
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Disco magnetico (2) Ciascuna traccia è divisa in settori
Schema di principio del SCA di una MMU Memory Management Unit
Criticità sui dati (esempio da fare on line)
Criticità sul controllo
I SEGNALI AUDIO nella frequenza
La gestione dell'I/O Architettura degli elaboratori 1 - A. Memo La gestione dellI/O 4Prestazioni e generalità 4.1Modelli di funzionamento 4.2Dischi.
3. Architettura Vengono descritte le principali componenti hardware di un calcolatore.
2) Trattamento dell'informazione. Lab.Calc. I AA 2002/03 - cap.22 Esempio Supponiamo di volere calcolare X, per uno o più possibili valori di Y, in base.
1.7 Risorse di sistema Comprendere le risorse di sistema Gestire le risorse di sistema.
Lezione 6 Encoder ottici
EVOLUZIONE DEL PC Legge di Moore: La potenza dei calcolatori raddoppia ogni 18 mesi Metà anni 80 (Personal Computer IBM AT) Architettura 16 bit interna,
MEMORIA CENTRALE Spazio di lavoro del calcolatore: contiene i dati da elaborare e i risultati delle elaborazioni durante il funzionamento del calcolatore.
BUS DI CPU M. Mezzalama - M. Rebaudengo Politecnico di Torino
1 Prof. Marco Mezzalama CICLO DI BUS CON DATA BUS A 32 BIT (ciclo scrittura con wait) Verifica Segnale di READY: nel primo caso La memoria NON è pronta,
@2000 R. Bisiani1 R. Bisiani2 Dischi u Piatti multipli coperti da materiale magnetizzabile.
CPU (central process unit)
L’Architettura del Sistema di Elaborazione
UNIVERSITA’ STUDI DI ROMA “FORO ITALICO”
LEvoluzione dei computer In principio fu Eniac il primo calcolatore ad essere in grado di eseguire trecento moltiplicazioni al secondo. Bisogna aspettare.
Il Calcolatore Elettronico
I blocchi fondamentali dell’elaborazione Componenti e funzionamento del calcolatore I blocchi fondamentali dell’elaborazione.
Tratto da “HW PC” – O. Maeran
Architettura del Computer
BUS DI CPU M. Mezzalama - M. Rebaudengo - M. Sonza Reorda
Unità centrale di processo
Architettura Centralizzata di un DBMS Relazionale
INTERNET e RETI di CALCOLATORI
Sistemi Elettronici Programmabili: La Memoria Principale 6-1 Sistemi Elettronici Programmabili La memoria principale.
Luca Orrù 1 Input/Output. 2 SOMMARIO Organizzazione di sistema Trasferimento dati; Gestione I/O.
TRASFORMATA DI FOURIER
Arch. Elab. - S. Orlando 1 Input / Output Salvatore Orlando.
1 Introduzione Sistema di calcolo + applicazioni Possibilità di effettuare confronti e stime dei tempi di esecuzione Metriche di misura delle prestazioni.
Architettura di una CPU
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
1 Introduzione Sistema di calcolo Valutazione dell’impatto delle varie modifiche sulle prestazioni globali del sistema Modifiche all’architettura.
3  Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione  elaborazione dati  memorizzazione dati 
SCHEDA INFORMATIVA DI UNITÀ. Introduzione Applicazione della gerarchia di memoria –Memoria cache fra la CPU e la memoria centrale Il processore vedrà.
Luglio 2004Generalità Hardware1 Luglio Generalità Hardware2 MACCHINA DI VON NEUMAN (1947) BUS Processore Elaborazione Controllo Memoria Ingresso.
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Tipo Documento: unità didattica 3 Modulo 7 Compilatore: Supervisore: Data emissione: Release: Indice: A.Scheda informativa B.Introduzione C.Corpo D.Riepilogo.
Calcolatori Elettronici Valutazione delle Prestazioni Francesco Lo Presti Rielaborate da Salvatore Tucci.
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
EVOLUZIONE DEL PC Legge di Moore: La potenza dei calcolatori raddoppia ogni 18 mesi. Inizi anni 80 (Personal Computer IBM AT) Architettura 16 bit interna,
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Tipo Documento: unità didattica 3 Modulo 7 Compilatore: Supervisore: Data emissione: Release: Indice: A.Scheda informativa B.Introduzione C.Corpo D.Riepilogo.
I Microprocessori Unità 3 del libro Internet Working Sistemi e reti.
Gestione delle periferiche. Le periferiche sono dispositivi che permettono le operazioni di input/output.
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Transcript della presentazione:

Esercitazioni I/O

Dischi: Esercizio 1 Si consideri un programma che legge blocchi di 2 KB da disco, esegue un’elaborazione su questi, e quindi li riscrive su disco. Le tre fasi non hanno sovrapposizioni. La frequenza della CPU è di 500 MHz e l’elaborazione di ogni blocco richiede 10 milioni di cicli. I parametri del disco sono: 6200 RPMbanda di trasferimento = 10 MB/s seek = 9 msoverhead controller = 1.5 ms. a. Calcolare le prestazioni del sistema in termini di banda di elaborazione complessiva, cioè di blocchi letti+elaborati+scritti (les) al secondo. Il tempo dedicato a ciascun blocco, dato che non vi sono sovrapposizioni è t_les = 2 t.accesso + t.elab e quindi la banda di elaborazione (#blocchi elaborati al secondo) banda_les = 1 / t_les Ora t.elab = n.cicli impiegati / Frequenza = / ( ) = 20ms e …

Dischi: Esercizio 1 (continua) Blocchi di 2 KB 6200 RPMbanda di trasferimento = 10 MB/s seek = 9 msoverhead controller = 1.5 ms. … t.accesso = seek + lat.rotazione + overhead + t.trasferimento dove lat.rotazione = 0.560/RPM = /6200 = s = 4.8 ms t.trasferimento = dim.blocco / banda trasf = 2 KB / 10 MB/s =0.2 ms t.accesso = 9 ms ms ms ms = 15.5 ms Pertanto t_les_a = ms + 20 ms = 51 ms e quindi banda_les = 1 / ( ) = 19.6 Hz

Dischi: Esercizio 1 (continua) Processore 800 MHz t_les = 2 t.accesso + t.elab Si migliora il tempo di elaborazione: t.elab = n.cicli impiegati / Frequenza = / = 12.5 ms quindi t_les’ = ms ms = 43.5 ms banda_les’ = 1 / ( ) = 23 e pertanto Speedup’ = banda_les’ / banda_les = 23 / 19.6 = 1.17 Blocchi 2 KB freq. CPU è di 500 MHz ogni blocco richiede 10 7 cicli 6200 RPMbanda di trasferimento = 10 MB/s seek = 9 msoverhead controller = 1.5 ms. b. Valutare, in base ai relativi Speedup, se sia meglio comprare un nuovo processore a 800 MHz, oppure cercare di ottimizzare il tempo medio di seek fino a 4.5 ms.

Dischi: Esercizio 1 (continua) Seek 4.5 ms Si migliora il tempo di accesso: t.accesso = 4.5 ms ms ms ms = 11 ms quindi t_les’’ = 2 t.accesso + t.elab = 2 11 ms + 20 ms = 42 ms banda_les’’ = 1 / ( ) = 23.8 per cui Speedup’’ = banda_les’’ / banda_les = 23.8 / 19.6 = 1.21  Meglio migliorare il tempo di seek ! Blocchi 2 KB freq. CPU è di 500 MHz ogni blocco richiede 10 7 cicli 6200 RPMbanda di trasferimento = 10 MB/s seek = 9 msoverhead controller = 1.5 ms. b. Valutare, in base ai relativi Speedup, se sia meglio comprare un nuovo processore a 800 MHz, oppure cercare di ottimizzare il tempo medio di seek fino a 4.5 ms.

Dischi: Esercizio 2 Ogni blocco, per essere trasferito richiede controller: 1 ms rotaz.+seek: 12 ms trasfer.1.6 ms (= 16 KB / 10 MB/s) Quindi complessivamente, i dischi possono trasferire 8  16 KB in 14.6 ms, con una banda di trasferimento pari a 8  16 KB / (14.6  ) = 8.8 MB/s molto piu` bassa di 8  10 MB/s (la banda massima degli otto dischi) Si supponga di avere un sistema di 8 dischi, ognuno con latenza di rotazione + seek medi pari a 12 ms e banda di trasferimento pari a 10 MB/s. I dischi sono gestiti da un controllore DMA con overhead di 1 ms. a. Calcolare la banda di trasferimento del sottosistema di I/O, per blocchi di dimensione 16 KB.

Dischi: Esercizio 2 (cont.) Ogni blocco, per essere trasferito richiede controller: 1 ms rotaz.+seek: 12 ms trasfer.6.4 ms (= 64 KB / 10 MB/s) Quindi complessivamente, i dischi possono trasferire 8  64 KB in 19.4 ms, con una banda di trasferimento pari a 8  64 KB / (19.4  ) = 26.3 MB/s La banda aumenta notevolmente, dato che il tempo di trasferimento inizia a divenire più rilevante. Si supponga di avere 8 dischi, ognuno con latenza di rotazione + seek medi pari a 12 ms e banda di trasferimento pari a 10 MB/s. I dischi sono gestiti da un controllore DMA con overhead pari a 1 ms. b. Calcolare come cambia la banda di trasferimento se si aumenta la dimensione dei blocchi a 64 KB.

Dischi: Esercizio 2 (cont.) Ogni word richiede due cicli per essere trasferita (4 word richiedono 8 cicli, 4 per il caricamento e 4 per il trasferimento). Quindi il bus ha una banda massima di 100 M word/s = 400 MB/s, ampiamente sufficiente per tollerare il sistema dei dischi (anche se si annullassero i tempi di rotazione+seek!). Si assuma che il controllore DMA acceda ad un bus sincrono processore- memoria, di ampiezza 32 b (1 word), a 200 Mhz, con linee separate per gli indirizzi. Il sistema di memoria accetta transazioni in lettura di blocchi di 4 word, inviate sul bus una word alla volta, per ciascun ciclo del bus. Al termine della trasmissione di un blocco sono necessari 4 cicli per leggere il nuovo blocco da inviare. Qual è la massima banda tollerata dal bus? E’ sufficiente per il sistema di I/O descritto?

Dischi: Esercizio 3 Ciclo = 1/Freq = 1/(1 G) s. = 1/(10 9 ) s. = 1ns = 1/10 6 ms Tempo CPU per trasf.=7000 cicli (trascurabile): 7000/10 6 ms. = ms Tempo trasf. blocco: size/banda = (1KB)/(10MB) = 1/10 4 s = 0.1 ms. Tempo medio di rotazione: 0.5/5000 min. = /5000 s. = 6 ms. Il tempo totale per trasferire un blocco è quindi: seek +rotation+overhead contr +trasf blocco+overhead cpu = ms Banda reale: 1KB / B/s ≅ 60000B/s = 60 KB/s. Supponiamo di avere un disco che trasferisca in continuazione. Il disco ha un tempo medio di seek di 10 ms, RPM = La banda di trasferimento è di 10 MB/s, mentre l’overhead del controllore DMA è di 1 ms. Consideriamo inoltre che la CPU spenda circa 2000 cicli per l’inizializzazione DMA di ogni trasferimento e 5000 per il trattamento dell’interruzione, mentre la frequenza del clock è di 1 GHz. a) Qual è la banda reale di trasferimento nel caso in cui i blocchi letti siano di 1 KB?

Dischi: Esercizio 3 (cont) Se il tempo di seek si riduce del 50%, il tempo totale per trasferire un blocco diventa: seek + rotation + overhead contr + trasf blocco + overhead cpu = = ms La banda reale diventa: 1KB/ B/s ≅ B/s = 85 KB/s. b) Verificare quali delle soluzioni seguenti è la migliore dal punto di vista della banda misurata: - ridurre il tempo di seek del 50% (ovvero 5 ms) grazie ad una oculata allocazione dei settori; - acquistare un disco con RMP di 10000; - raddoppiare la dimensione del blocco.

Dischi: Esercizio 3 (cont) Se si acquista un disco con RMP di 10000, abbiamo che il tempo medio di rotazione diventa di 3 ms, e quindi il tempo totale per trasferire un blocco diventa: seek + rotation + overhead contr + trasf blocco + overhead cpu = = ms La banda reale diventa: 1KB/ B/s ≅ B/s = 73 KB/s. b) Verificare quali delle soluzioni seguenti è la migliore dal punto di vista della banda misurata: - ridurre il tempo di seek del 50% (ovvero 5 ms) grazie ad una oculata allocazione dei settori; - acquistare un disco con RMP di 10000; - raddoppiare la dimensione del blocco.

Dischi: Esercizio 3 (cont) Infine, raddoppiando la dimensione del blocco, il tempo per trasferire un blocco diventa: size/banda = (2KB)/(10MB) = 2/10 4 s = 2/10 ms = 0.2 ms. Il tempo per trasferire un blocco (doppio) diventa: seek + rotation + overhead contr + trasf blocco+overhead cpu = = ms La banda reale diventa: 2KB/ B/s ≅ B/s = 119 KB/s che risulta essere la migliore ottimizzazione b) Verificare quali delle soluzioni seguenti è la migliore dal punto di vista della banda misurata: - ridurre il tempo di seek del 50% (ovvero 5 ms) grazie ad una oculata allocazione dei settori; - acquistare un disco con RMP di 10000; - raddoppiare la dimensione del blocco.