Tutorato 11 dicembre 2015



Documenti analoghi
Calcolatori Elettronici A a.a. 2008/2009

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web: Prof. G. Quarella prof@quarella.

Valutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput

Valutazione delle Prestazioni

ESERCIZI SULLO SCHEDULING DEI PROCESSI

Corso di Architettura degli Elaboratori

Valutazione delle Prestazioni

Esempio: aggiungere j

Edited by Foxit PDF Editor Copyright (c) by Foxit Software Company, 2004 For Evaluation Only.

Programmazione in Java e gestione della grafica (I modulo) Lezione 1: Presentazione corso

1. PRIME PROPRIETÀ 2

Architettura hardware

Valutazione delle Prestazioni

La memoria centrale (RAM)

La Valutazione delle Prestazioni

E naturale chiedersi alcune cose sulla media campionaria x n

Forze come grandezze vettoriali

Esame di INFORMATICA

Calcolatori Elettronici B a.a. 2008/2009

Esercizi su. Funzioni

Test d ipotesi. Statistica e biometria. D. Bertacchi. Test d ipotesi

1. Che cos è la multiprogrammazione? Si può realizzare su un sistema monoprocessore? 2. Quali sono i servizi offerti dai sistemi operativi?

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

DIMENSIONI E PRESTAZIONI

QUANTIZZAZIONE diverse fasi del processo di conversione da analogico a digitale quantizzazione

Analisi dei Dati 12/13 Esercizi proposti 3 soluzioni

Sistemi di Servizio e Simulazione

Guardiamo ora però la cosa da un altro punto di vista analizzando il seguente grafico a forma di torta. La torta in 5 parti

Gerarchie di Memoria Andrea Gasparetto

Laboratorio di Informatica

PROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0)

SISTEMA di GESTIONE QUALITÀ Non Conformità ed Efficacia delle Azioni Correttive Preventive

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme

ESERCIZI DI MATEMATICA FINANZIARIA DIPARTIMENTO DI ECONOMIA E MANAGEMENT UNIFE A.A. 2015/ Esercizi 4

OCCUPATI SETTORE DI ATTIVITA' ECONOMICA

Vlan Relazione di Sistemi e Reti Cenni teorici

Probabilità discreta

La progettazione centrata sull utente nei bandi di gara

MAPPE DI KARNAUGH. Nei capitoli precedenti si è visto che è possibile associare un circuito elettronico o elettrico ad una funzione logica.

ESERCIZIO 1 (b) Dove è memorizzato il numero del primo blocco del file? Insieme agli altri attributi del file, nella cartella che contiene il file.

Macroeconomia, Esercitazione 2. 1 Esercizi. 1.1 Moneta/ Moneta/ Moneta/3. A cura di Giuseppe Gori (giuseppe.gori@unibo.

Esercitazione 23 maggio 2016

regola(1,[e,f],b) regola(2,[m,f],e) regola(3,[m],f) regola(4,[b,f],g) regola(5,[b,g],c) regola(6,[g,q],a)

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1

CLASSIFICAZIONE DEI CARATTERI

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

Corso di Sistemi di Gestione di Basi di Dati. Esercitazione sul controllo di concorrenza 12/02/2004

Esercitazione di Laboratorio - Leve di genere TITOLO ESERCITAZIONE: VERIFICA DELLE LEGGI DELLE LEVE

Esercitazioni di Calcolo Numerico 23-30/03/2009, Laboratorio 2

LA MOLTIPLICAZIONE IN CLASSE SECONDA

come nasce una ricerca

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Lezione 10 Funzione di produzione ed

Regione Liguria Disposizioni e criteri per l esercizio, il controllo, la manutenzione e l ispezione degli impianti termici

C. P. U. MEMORIA CENTRALE

Analisi di dati di frequenza

Vari tipi di computer

Carichiamo il segnale contenuto nel file ecg_es_ mat

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno

Capitolo Terzo Valore attuale e costo opportunità del capitale

4.1. La migliore relazione affettiva con la figura di riferimento principale

CABINE ELETTRICHE DI TRASFORMAZIONE

Anno 1. Le relazioni fondamentali (equivalenza, d'ordine, inverse, fra insiemi)

Corso di formazione CerTICTablet

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09

SUPERAMMORTAMENTI Fonti Relazione Illustrativa Il Sole 24 Ore

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:

Come si seleziona un fondo di investimento

4 3 4 = 4 x x x 10 0 aaa

Esercitazione n.2 Inferenza su medie

9. Memoria Virtuale. 9. Memoria Virtuale. 9. Memoria Virtuale

STATISTICA ESERCITAZIONE 11 Dott. Giuseppe Pandolfo 3 febbraio Modelli continui di probabilità: la v.c. uniforme continua

Capitolo 25: Lo scambio nel mercato delle assicurazioni

4. Operazioni elementari per righe e colonne

Linux lo installo a 32 o 64 bit? (teoria e pratica)

1. LE REGOLE EDUCAZIONE ALLA LEGALITA OBIETTIVI

ESEMPIO 1: eseguire il complemento a 10 di 765

Più processori uguale più velocità?

Esempi di algoritmi. Lezione III

La distribuzione Normale. La distribuzione Normale

Probabilità condizionata: p(a/b) che avvenga A, una volta accaduto B. Evento prodotto: Evento in cui si verifica sia A che B ; p(a&b) = p(a) x p(b/a)

ECCO COME FUNZIONA. Ti mostriamo ora come acquistare un volantino.

1 Giochi a due, con informazione perfetta e somma zero

SERVIZIO NAZIONALE DI VALUTAZIONE

UMA - versione Rilascio del 10/07/2013. I riepiloghi a disposizione sono: per riparto colturale (uso del suolo) per comune e uso del suolo.

Strumenti e metodi per la redazione della carta del pericolo da fenomeni torrentizi

Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer.

La Politica Economica e i Tassi di Cambio

CONTROLLO IN TENSIONE DI LED

J. Assfalg Appunti di Sistemi Operativi

Parte II Indice. Operazioni aritmetiche tra valori rappresentati in binario puro. Rappresentazione di numeri con segno

Test statistici di verifica di ipotesi

Matematica generale CTF

Le scelte del consumatore in condizione di incertezza (cap.5)

Esercizi di Calcolo delle Probabilità con Elementi di Statistica Matematica

Statistica e biometria. D. Bertacchi. Variabili aleatorie. V.a. discrete e continue. La densità di una v.a. discreta. Esempi.

= 0, 098 ms. Da cui si ricava t 2 medio

CORSO DI FORMAZIONE PER L'ACCESSO AI LABORATORI DELL'ATENEO Istruzioni per la validazione della frequenza al corso e del superamento del test finale

Esercizio 1: trading on-line

Dimensione di uno Spazio vettoriale

Transcript:

Tutorato 11 dicembre 2015 Calcolo delle prestazioni Nomenclatura T: periodo del ciclo di clock. Equivale al tempo di durata di un ciclo del clock, ovvero al reciproco della frequenza di clock: T = 1 F F: frequenza del ciclo di clock. Equivale al numero di volte che il ciclo di clock si ripete in un secondo: F = 1 T CPI: (Clock Per Istruzione) numero di cicli di clock impiegati per eseguire una particokare istruzione CPI m,c :numerodiciclimedidataunacertamacchinam ed un certo compilatore c. Equivale alla media pesata del CPI di ciascuna istruzione per la distribuzione percentuale delle istruzioni del compilatore IC: numerodiistruzionidiunprogramma Exe T ime: (Execution Time) tempo di esecuzione di un particolare programma su una particolare macchina. Equivale al numero di cicli medi per istruzione CPI m,c per il numero di istruzioni del programma IC,per il periodo del ciclo T = 1 F : Exe T ime = IC CPI m,c T = IC CPI m,c 1 F Perf : performance. L idea è che la performance sia tanto più grande quanto migliore sia la prestazione. Una prestazione migliore corrisponde ad un tempo di esecuzione più piccolo, viene adottato quindi, come misura della Performance di una macchina, l inverso del tempo di 1 escuzione Exe T ime: Perf = Exe Time. Speedup(avsb:Misuradiquantounsistemaaèpiùvelocediunsistemab.Speedup(avsb)= P erf a P erf b = Exe Time b Exe Time a 1-Qualemacchinacomprareeconchecompilatore Si considerino due diverse macchine, M1 ed M2, dello stesso set di istruzioni, partizionato in tre classi A, B, C: M1: CPI M2: CPI Utilizzo C1 Utilizzo C2 Utilizzo C3 A 4 2 30% 30% 50% B 6 4 50% 20% 30% C 8 3 20% 50% 20% 1

M1 ha una frequenza di clock pari a 400 MHz M2 ha una frequenza di clock pari a 200 Mhz C1 è un compilatore sviluppato dai produttori di M1 C2 è un compilatore sviluppato dai produttori di M2 C3 è un compilatore sviluppato da un terzo costruttore. Si supponga che il codice prodotto dai tre compilatori per uno stesso programma preveda un ugual numero di istruzioni eseguite (IC), ma una diversa distribuzione nelle varie classi come riportato in tabella. Domanda 1: : Usando C1 su M1 e M2, di quanto M1 è più veloce di M2? Bisogna calcolare il tempo di esecuzione di M1 e M2 usando il compilatore C1. Per fare questo calcoliamo il CPI nei due casi. CPI M1 =4 0, 3+6 0, 5+8 0, 2=1, 2+3+1, 6=5, 8(clock/istruzione) CPI M2 =2 0, 3+4 0, 5+3 0, 2=0, 6+2+0, 6=3, 2(clock/istruzione) Il tempo di esecuzione quindi è: Exe T ime M1 = IC CPI M1 1 = IC 5,8 400 10 6 Exe T ime M1 = IC CPI M2 1 = IC 3,2 200 10 6 da cui semplificando ed eseguendo le oper- Speedup(M1 vs M2) = P erfm1 P erf M2 azioni: Speedup(M1 vs M2) = 6,4 5,8 =1, 10 Domanda 2 Riposta: = 400 106 IC 3,2 IC 5,8 200 10 6 Usando C2 su M1 e M2 di quanto M2 è più veloce di M1? equindi:perf M1 = 400 106 IC 5,8 equindi:perf M2 = 200 106 IC 3,2 Il calcolo è identico a quello precedente, utilizzando la distribuzione delle istruzioni del compilatore C2 CPI M1 =4 0, 3+6 0, 2+8 0, 5=1, 2+1, 2+4=6, 4(clock/istruzione) CPI M2 =2 0, 3+4 0, 2+3 0, 5=0, 6+0, 8+1, 5=2, 9(clock/istruzione) da cui semplificando ed eseguendo le oper- Speedup(M2 vs M1) = P erfm2 P erf M1 azioni: Speedup(M2 vs M1) = 6,4 5,8 =1, 10 Domanda 3 = 200 106 IC 6,4 IC 2,9 400 10 6 Se si acquista M1, quale dei tre compilatori conviene usare? Se si acquista M2, quale dei tre compilatori conviene usare? 2

: Bisogna calcolare le prestazioni del compilatore C3. CPI M1 =4 0, 5+6 0, 3+8 0, 2=2+1, 8+1, 6=5, 4(clock/istruzione) CPI M2 =2 0, 5+4 0, 3+3 0, 2=1+1, 2+0, 6=2, 8(clock/istruzione) Tabella delle CPI C1 C2 C3 M1 5,8 6,4 5,4 M2 3,2 2,9 2,8 Dalla tabella si può vedere che in tutti i casi il compilatore C3 ha una CPI media più bassa degli altri, quindi è da scegliere sia per la macchina M1 che per la macchina M2. Domanda 4 Quale macchina è il miglior acquisto, supponendo che tutti gli altri criteri siano identici, compreso il prezzo? Bisogna confrontare le prestazioni delle due macchine utilizzando, ovviamente, il compilatore C3. Risulta: Exe T ime M1 = IC CPI M1 1 = IC 5,4 400 10 6 Exe T ime M2 = IC CPI M2 1 = IC 2,8 200 10 6 Quindi: da cui semplificando ed eseguendo le oper- Speedup(M1 vs M2) = P erfm1 P erf M2 azioni: = 400 106 IC 2,8 IC 5,4 200 10 6 equindi:perf M1 = 400 106 IC 5,4 equindi:perf M2 = 200 106 IC 2,8 Speedup(M1 vs M2) = 5,6 5,4 =1, 04 La macchina M1 è più performante della macchina M2, quindi quella da preferire per l ascquisto. 2-Confrontofraduemacchine Considerare due macchine M1 (a 300 MHz) ed M2 (a 450 Mhz) con le seguenti caratteristiche (rispetto acompilatoriprefissati): Macchina Classe Cicli Distribuzione M1 M2 A 1 40% B 2 30% C 3 20% D 4 10% A 1 40% B 2 60% Sapendo che, per uno stesso programma, in media il codice prodotto per M2 prevede il doppio di istruzioni rispetto a quello prodotto per M1, stabilire: 3

Domanda 1 Quale macchina è migliore? Il numero di istruzioni della macchina M2 per un programma qualsiasi è mediamente il doppio delle istruzioni della macchina M1. Quindi: IC M2 =2 IC M1 Dobbiamo calcolare il tempo di esecuzione delle due macchine e poi confrontare le preformance CPI M1 =1 0, 4+2 0, 3+3 0, 2+4 0, 1=2 CPI M2 =1 0, 4+2 0, 6=1, 6 Exe T ime M1 = IC M1 CPI M1 1 = ICM1 2 300 10 equindi:perf 6 M1 = 300 106 IC M1 2 Exe T ime M2 = IC M2 CPI M2 1 = 2 ICM1 1,6 450 10 equindi:perf 6 M2 = 450 106 2 IC M1 1,6 Speedup(M2 vs M1) = P erfm2 operazioni: P erf M1 = 450 106 2 IC M1 1,6 Speedup(M2 vs M1) = 9 9,6 =0, 93745 La macchina M1 è migliore. Domanda 2 2 IC M1 300 10 6 da cui semplificando ed eseguendo le Se si usa un nuovo compilatore su M2 che riduce di 1/3 il numero delle operazioni di tipo B, cosa succede alle prestazioni? Un programma che con M1 ha IC M1 istruzioni con M2 avrà: IC M2 =2 IC M1 0, 4+2 IC M1 0, 6 2 3 =1, 6 IC M1 La Distribuzione si calola come segue. Dato un programma che col precedente compilatore aveva IC M istruzioni, col nuovo compilatore avrà: IC M2 =0, 4 IC M +0, 6 2 3 IC M =0, 8 IC M La distribuzione quindi sarà Classe Cicli Distribuzione 0,4 IC M A 1 0,8 IC M 100 = 50% B 2 0,4 IC M 0,8 IC M 100 = 50% La CPI per M! col nuovo compilatore sarà: CPI M1 =1 0, 5+2 0, 5=1, 5 quindi Speedup(M2 vs M1) = P erfm2 operazioni: 450 10 P erf M1 = 6 1,6 IC M1 1,5 2 IC M1 300 10 6 da cui semplificando ed eseguendo le Speedup(M2 vs M1) = 9 7,2 =1, 25 Concludendo la macchina M2 in questo caso è migliore della macchina M1. 4

3-Lunghezzadelcodice Considerare due macchine M1 (a 3 GHz) ed M2 (a 1.5 GHz). La seguente tabella illustra le classi di istruzioni macchina, i relativi CPI medi e la distribuzione di probabilità delle istruzioni nei programmi considerati. Macchina Classe ICP Distribuzione M1 M2 Domanda: A 1 40% B 2 30% C 3 20% D 4 10% A 1 60% B 2 40% Supponendo di sapere che il codice prodotto, compilando lo stesso programma per le due piattaforme, ha identiche prestazioni sia per M1 che per M2, calcolare in che rapporto devono stare i numeri di istruzioni prodotte per i due programmi (ovvero, ICM1 e ICM2) perché ciò si verifichi. Dobbiamo calcolare il CPI medio per le due macchine. CPI M1 =1 0, 4+2 0, 3+3 0, 2+4 0, 1=2 CPI M1 =1 0, 6+2 0, 4=1, 4 Itempidiesecuzionesiesprimonoquindicomesegue: Exe T ime M1 = CPIM1 ICM1 = 2 ICM1 3 10 9 =0, 66 10 9 IC M1 Exe T ime M2 = CPIM2 ICM2 F M2 = 1,4 ICM2 1,5 10 =0, 93 10 9 IC 9 M1 Affinchè le prestazioni siano le stesse i tempi di esecuzione dovranno essere uguali per cui Exe T ime M1 = Exe T ime M2! 0, 66 10 9 IC M1 =0, 93 10 9 IC M2 quindi IC M1 = 0.93 0.66 IC M2 =1, 41 IC M2 Vale a dire che il compilatore di M1 genera un eseguibile 1,41 volte più lungo dell equivalente eseguibile della macchina M2 (41% di istruzioni in più). 4-CPImedioideale1 Un computer a 1 GHz, nell eseguire un certo programma, ha una prestazione ideale di 500 MIPS. Domanda: Calcolare il CPI medio ideale. In un secondo il computer esegue 0,5G istruzioni quindi abbiamo: 0, 5 10 9 = 109 CPI =2 CPI da cui 5

5-CPImedioideale2 Considerare l esecuzione di un programma P su di una data CPU. Domanda 1: Rispsta Calcolare il CPI ideale, considerando che il CPI medio delle load/store è 4.5, il CPI medio delle altre istruzioni è 2, mentre la percentuale di load/store è del 40%. Riscriviamo questi dati nella seguente tabella: Classe CPI Distribuzione load/store 4,5 40% altre 2 60% Quindi: CPI Id =0, 4 CPI l/s +0, 6 CPI altre =0, 4 4, 5+0, 6 2=3 Domanda 2: Calcolare i tempi ideali pereseguire P considerando che IC = 200 10 6,mentrelafrequenza della CPU è di 500 MHz. Il tempo di ciclo (periodo) è T = 1 500 10 6 =2 10 9 Il tempo ideale di esecuzione del programma P è quindi: T empo Ideale = CPI id IC T =3 200 10 6 2 10 9 =1, 2 sec 6