Valutazione delle prestazioni
|
|
|
- Antonio Alberti
- 8 anni fa
- Visualizzazioni
Transcript
1 Valutazione delle prestazioni Trend tecnologico: Capacità della Memoria Capacità chip DRAM DRAM Year Size Kb Kb Mb Mb Mb Mb Mb Gb Incremento 1,4 per anno 4000X dal
2 Transistors Trend tecnologico: Densità Microprocessori up-name R10000 Pentium R4400 i i8086 i80386 i80286 R3010 SU MIPS i80x86 M68K MIPS Alpha 2X transistor/chip ogni 1,5 anni i Trend tecnologici Processore Densità Logica: circa 30% per anno Frequenza Clock : circa 20% per anno Memoria Capacità DRAM capacity: circa 60% per anno Velocità Memoria: circa10% per anno Costo per bit: riduzione di circa il 25% per anno Dischi Capacità: circa 60% per anno Larghezza di banda della rete: Aumenta di più del 100% per anno! 2
3 SPECint rating Trend delle prestazioni Year Approccio quantitativo L incremento delle prestazioni è superiore a quello tecnologico. Ciò è stato possibile per l affermazione di un nuovo approccio nella progettazione: approccio quantitativo ovvero basato su misure. Principio da seguire nella progettazione: Rendere veloce il caso più frequente 3
4 Approccio quantitativo Una diretta conseguenza di questo nuovo approccio è il passaggio da calcolatori con un numero elevato di istruzioni anche molto complesse (approccio CISC), a calcolatori con un ridotto insieme di istruzioni (approccio RISC) Da misure sul comportamento dei programmi si è visto che: l'80% delle istruzioni eseguite corrispondeva al solo 20% del repertorio. conviene investire nella riduzione dei tempi di esecuzione di quel 20%, anziché aggiungere raffinate istruzioni, quasi mai usate, ma responsabili dell'allungamento del tempo di ciclo di macchina conviene costruire processori molto veloci, necessariamente con repertori semplici, e contare sull ottimizzazione del compilatore Indici prestazionali Tempo di risposta (o tempo di esecuzione o latenza) Tempo tra l'inizio e il completamento di un lavoro o compito elaborativo Durata dell esecuzione del mio programma Attesa per l accesso ad un sito web Throughput Ammontare complessivo di lavoro svolto in un dato tempo Numero di programmi eseguiti nell unità di tempo Numero di lavori (job, transazioni, interrogazioni a basi di dati) svolti nell unità di tempo Numero di programmi eseguibili da una macchina contemporaneamente 4
5 Il tempo di CPU Il tempo è la misura delle prestazioni di un computer Il computer che svolge la stessa quantità di lavoro nel minore tempo è il più veloce Tempo di risposta rappresenta la latenza per il completamento di un lavoro Includendo accessi a disco, accessi a memoria, attività di I/O Tempo di CPU rappresenta il tempo speso dalla CPU per eseguire il programma dato Non include il tempo di attesa per I/O o per l'esecuzione di altri programmi Comprende il tempo utente di CPU (tempo speso dalla CPU per eseguire le linee di codice che stanno nel nostro programma) + tempo di CPU di sistema (speso dal sistema operativo per eseguire i compiti richiesti dal programma) Tempo di CPU Tempo di CPU cicli di clock della CPU durata periodo di clock Tempo di CPU cicli di clock della CPU frequenza diclock 5
6 Cicli di clock per Istruzione (CPI) In genere, istruzioni di tipo diverso richiedono quantità diverse di tempo La moltiplicazione richiede più tempo dell addizione L accesso alla memoria richiede più tempo dell accesso ai registri Fissata la durata del ciclo di clock, varia il numero di cicli di clock richiesti dalle diverse istruzioni Si può calcolare il numero medio di cicli di clock per istruzione di un dato programma ciclidiclock della CPUper eseguireilprogramma CPI numero di istruzionieseguite Tempo di CPU Indicati con: N ist, il numero di istruzioni eseguite; CPI, il numero medio di cicli di clock per istruzione; T, il periodo del clock; F, la frequenza T CPU = N ist * CPI/f = N ist * CPI * T 6
7 Tempo di CPU: N ist T CPU = N ist * CPI/f = N ist * CPI * T N ist dipende dal repertorio di istruzioni e dal grado di ottimizzazione del compilatore. Compilatori diversi possono dare luogo a N ist diversi Uno stesso compilatore che genera codice per due macchine diverse, darà N ist diversi Un repertorio CISC favorisce la riduzione del numero di istruzioni Tempo di CPU: la frequenza f T CPU = N ist * CPI/f = N ist * CPI * T f (T) è legata alla tecnologia e all'organizzazione architetturale della CPU Oggi MHz sono la norma Istruzioni complesse richiedono di norma frequenze di più basse Istruzioni semplici (RISC) permettono di diminuire i ritardi di propagazione nella logica di controllo e, quindi, di diminuire l'ampiezza del periodo di clock. 7
8 Tempo di CPU: il CPI T CPU = N ist * CPI/f = N ist * CPI * T CPI dipende dall'architettura e dal repertorio delle istruzioni Istruzioni semplici richiedono un minor numero di cicli. Attraverso tecniche come la pipeline è possibile portare CPI ad un valore molto vicino ad 1. L'aggiunta di più unità di esecuzione in parallello (macchine superscalari) permette di rendere CPI minore di 1. Tempo di CPU Se indichiamo con: N i, il numero di volte in cui l istruzione I i viene eseguita in un programma, CPI i, il numero di cicli di clock richiesto della I i n, numero di istruzioni diverse eseguite avremo: n ciclidiclock della CPU CPI i N i i 1 Questa formula può essere usata per esprimere il tempo di CPU come n n N i TCPU CPIi Ni T Nist * CPIi i 1 i 1 N ist T 8
9 Tempo di CPU Indicato con - f i = N i / N ist otterremo: T CPU CPI N n CPIi fi i 1 ist * n i 1 CPI f i i T Esempio Si consideri un calcolatore in grado di eseguire le istruzioni riportate in tabella. Calcolare CPI e il tempo di CPU per eseguire un programma composto da 100 istruzioni supponendo di usare una frequenza di clock pari a 500 MHz. Soluzione Tipo Frequenza CPI i ALU 43% 1 Load 21% 4 Store 12% 4 Branch 12% 2 Jump 12% 2 CPI = 1* * * * *0.12 = 2.23 T CPU = IC * CPI / f CK = 100 * 2.23 * 1/(500*10 6 ) = 446 ns 9
10 Misura delle prestazioni T CPU =N IST *CPI*T Processore1: N IST1 = N; CPI 1 =3; T 1 =T Processore2: N IST2 = 2,5N; CPI 2 =2; T 2 =T/2 T CPU1 =N IST1 *CPI 1 *T 1 =N*3*T T CPU2 =N IST2 *CPI 2 *T 2 =2,5N*2*T/2=2,5*N*T T CPU1 >T CPU2 Misura delle prestazioni T CPU =N IST *CPI*T Processore1: N IST1 =N; CPI 1 =10; T 1 =T/4 Processore2: N IST1 =2N; CPI 2 =1; T 2 =T T CPU1 =N IST1 *CPI 1 *T 1 =N*10*T/4=2,5*N*T T CPU2 =N IST2 *CPI 2 *T 2 =2N*1*T=2*N*T T CPU1 >T CPU2 10
La Valutazione delle Prestazioni
La Valutazione delle Prestazioni Maurizio Palesi Maurizio Palesi rend ecnologico: Microprocessori 00000000 0000000 000000 IBM PPC60 R0000 Pentium R4400 i80486 Alpha 2264: 5 milion Pentium Pro: 5.5 million
Valutazione delle prestazioni
Valutazione delle prestazioni Architetture dei Calcolatori (lettere A-I) Valutazione delle prestazioni Misura/valutazione di un insieme di parametri quantitativi per Quantificare le caratteristiche di
Valutazione delle prestazioni
Valutazione delle prestazioni Cristina Silvano Università degli Studi di Milano Dipartimento di Scienze dell Informazione email: [email protected] Cristina Silvano pag 1 Valutazione delle prestazioni
Valutazione delle prestazioni
Valutazione delle prestazioni Cristina Silvano Università degli Studi di Milano Dipartimento di Scienze dell Informazione email: [email protected] Cristina Silvano pag 1 Valutazione delle prestazioni
Cicli di clock e istruzioni
Cicli di clock e istruzioni Numero di cicli di clock differenti per istruzioni differenti Le moltiplicazioni impiegano più tempo delle addizioni Operazioni in virgola mobile impiegano più tempo delle operazioni
L'architettura del processore MIPS
L'architettura del processore MIPS Piano della lezione Ripasso di formati istruzione e registri MIPS Passi di esecuzione delle istruzioni: Formato R (istruzioni aritmetico-logiche) Istruzioni di caricamento
Soluzione Esercizio 1
Esercizio 1 Si consideri una notazione binaria in virgola mobile a 16 bit, detta ALFA, di cui (nell ordine da sinistra a destra) si usa 1 bit per il segno (0=positivo), 6 bit per l esponente, che è rappresentato
Il modello di von Neumann
1 Organizzazione di (quasi) tutti gli elaboratori moderni: personal computer, workstation, portatili, smartphone,... CPU memoria Control Unit I/O ALU 2 Il cuore è la CPU (Control Processing Unit): esegue
Il Processore. Informatica di Base -- R.Gaeta 27
Il Processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale
Fondamenti di informatica: un po di storia
Fondamenti di informatica: un po di storia L idea di utilizzare dispositivi meccanici per effettuare in modo automatico calcoli risale al 600 (Pascal, Leibniz) Nell ottocento vengono realizzati i primi
Architettura hardware
Architettura hardware la parte che si può prendere a calci Architettura dell elaboratore Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione
Architettura dei calcolatori
Cos'è un calcolatore? Architettura dei calcolatori Esecutore automatico di algoritmi Macchina universale Elementi di Informatica Docente: Giorgio Fumera Corso di Laurea in Edilizia Facoltà di Architettura
Sintesi Calcolatori Elettronici
Sintesi Calcolatori Elettronici Unità di misura Byte 1 2 KiloByte 1024 2 MegaByte 1048576 2 GigaByte 1073741824 2 TeraByte 1099511627776 2 1 Byte = 8 bit Complemento a 1 I numeri positivi vengono rappresentati
Mari, Buonanno, Sciuto Informatica e cultura dell informazione McGraw-Hill
Mari, Buonanno, Sciuto Informatica e cultura dell informazione McGraw-Hill // Copyright 7 The McGraw-Hill Companies srl Copyright 7 The McGraw-Hill Companies srl Supporto alla CPU: deve fornire alla CPU
PRESTAZIONI. senza e con memoria cache
PRESTAZIONI del processore MIPS pipeline senza e con memoria cache Prestazioni del processore GENERICO (P&H pp 29 31) Definizioni dei parametri di prestazione fondamentali del processore: sia P una prova,
G L O S S A R I O. Fondamenti di Informatica I - Università degli Studi di Trento Dott. Roberti Pierluigi
G L O S S A R I O BIT: acronimo di Binary Digit. E l unità elementare di informazione. Può assumere solo il valore 0 o 1. CALCOLATORE: macchina che opera la trasformazione dei dati (informazioni) HARDWARE:
Fondamenti di informatica: un po di storia
Fondamenti di informatica: un po di storia L idea di utilizzare dispositivi meccanici per effettuare in modo automatico calcoli risale al 600 (Pascal, Leibniz) Nell ottocento vengono realizzati i primi
Valutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput
Valutazione delle Prestazioni Architetture dei Calcolatori (Lettere A-I) Valutazione delle Prestazioni Prof. Francesco Lo Presti Misura/valutazione di un insieme di parametri quantitativi per caratterizzare
Processore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)
Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Memoria La dimensione del Register File è piccola registri usati per memorizzare singole variabili di tipo semplice purtroppo
Capitolo 7: Input/Output. Es.1 - Bus sincrono. Es.1 - Risposta (a)
Esercitazione di Calcolatori Elettronici Ing. Gian Luca Marcialis Corso di Laurea in Ingegneria Elettronica Capitolo 7: Input/Output Capitolo 7 Input/Output Esercizi sul BUS: 1. Bus sincrono 2. Arbitraggio
La memoria principale
La memoria principale DRAM (Dynamic RAM) il contenuto viene memorizzato per pochissimo tempo per cui deve essere aggiornato centinaia di volte al secondo (FPM, EDO, SDRAM, RDRAM) SRAM (Static RAM) veloce
Architettura degli Elaboratori
Architettura degli Elaboratori Università degli Studi di Padova Facoltà di Scienze MM.FF.NN. Corso di Laurea in Informatica docente: Alessandro Sperduti Informazioni Generali Lucidi ed esercizi disponibili
Il processore. Istituzionii di Informatica -- Rossano Gaeta
Il processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale
Richiami sull architettura del processore MIPS a 32 bit
Caratteristiche principali dell architettura del processore MIPS Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini E un architettura RISC
Implementazione semplificata
Il processore 168 Implementazione semplificata Copre un sottoinsieme limitato di istruzioni rappresentative dell'isa MIPS aritmetiche/logiche: add, sub, and, or, slt accesso alla memoria: lw, sw trasferimento
Criteri di caratterizzazione di una memoria
La memoria Supporto alla CPU: deve fornire alla CPU dati e istruzioni il più rapidamente possibile; Archivio: deve consentire di archiviare dati e programmi garantendone la conservazione e la reperibilità
Linguaggi, compilatori e interpreti
Linguaggi, compilatori e interpreti 1 Il codice macchina Ciascun calcolatore ha un ampio insieme di istruzioni che è in grado di eseguire. Le istruzioni vengono rappresentate mediante sequenze di bit 001000100011
ARCHITETTURA elementi di base
ARCHITETTURA elementi di base Contenuto della lezione Richiami sulla struttura del calcolatore (CPU) Logica cablata/microprogrammazione Repertorio istruzioni (RISC/CISC) Prestazioni Classificazione architetture
L insieme delle istruzioni (6)
L insieme delle istruzioni (6) Architetture dei Calcolatori (lettere A-I) Alcune note conclusive I due principi dell architettura a programma memorizzato Uso di istruzioni indistinguibili dai dati Uso
Prestazioni & Co: CPU, Memoria, I/O
Prestazioni & Co: CPU, Memoria, I/O CPU - progettazione - prestazioni ideali Panoramica Memoria - gerarchie di memoria: cache, memoria principale, etc. - organizzazione, dimensionamento, indirizzamento,
Lezione4: MIPS e Istruzioni (1 Parte)
Architettura degli Elaboratori Lezione4: MIPS e Istruzioni (1 Parte) Michele Nappi [email protected] http://www.biplab.unisa.it/ Alcune slide di questa lezione sono prodotte dal Prof. Luigi Palopoli AGENDA
Il Processore: l unità di controllo
Il Processore: l unità di controllo La frequenza con cui vengono eseguiti i cicli di esecuzione è scandita da una componente detta clock Ad ogni impulso di clock la UC esegue un ciclo di esecuzione di
Richiami sull architettura del processore MIPS a 32 bit
Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini Caratteristiche principali dell architettura del processore MIPS E un architettura RISC
FALSO FALSO VERO FALSO VERO VERO VERO VERO
DOMANDE CALCOLATORI ELETTRONICI Organizzazione generale di un calcolatore Nelle architetture RISC le istruzioni macchina vengono tradotte in microistruzioni che vengono poi eseguite dall'hardware. Le tecnica
Unità Aritmetico-Logica
Unità Aritmetico-Logica A ritmethic L ogic U nit E l unità che esegue le operazioni aritmetiche e le operazioni logiche AND e OR 1-bit ALU : è una componente dell ALU che produce un singolo bit sui 32
Porte Input/Output (I/O Connectors)
Porte Input/Output (I/O Connectors) Le porte I/O permettono al computer di comunicare (scambiare dati) con le periferiche Interfacce di entrata / uscita Porta seriale RS-232, invio dei dati attraverso
Dischi: Esercizio 1. Ora t.elab = n.cicli impiegati / Frequenza = / ( ) = 20ms
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.
NOZIONI BASE DEL PROCESSORE (CPU)
NOZIONI BASE DEL PROCESSORE (CPU) Il processore di un computer è di solito indicato come il microprocessorea causa delle sue dimensioni, che sono circa la dimensione di un'unghia. Un microprocessore elabora
Il modello di Von Neumann
Il modello di Von Neumann Appunti di STA per le classi seconde ind. informatiche Page 1 Il modello architetturale Per modello architetturale, si intende la descrizione delle parti del sistema e la loro
Caratteristiche di un PC
Caratteristiche di un PC 1 Principali porte presenti sui personal computer PC Una porta è il tramite con la quale i dispositivi (periferiche o Device ) vengono collegati e interagiscono con il personal
DEFINIZIONE. particolare l'unità di elaborazione centrale è una tipologia di
CORSO BASE DI TECNICO RIPARATORE HARDWARE CPU Docente: Dott. Ing. Antonio Pagano DEFINIZIONE L'unità di elaborazione centrale o CPU è una tipologia di processore digitale general purpose la quale si contraddistingue
Informatica Applicata - Architetture degli elaboratori. Parte 4 CPU. Facoltà di Scienze MM FF NN Università di Urbino A.A.
Parte 4 CPU Facoltà di Scienze MM FF NN Università di Urbino A.A. 2001/2002 1 1 Elementi architetturali di base [Bucci c2] 1.1 Macchina di Von Neumann Con riferimento alle reti logiche e ai sistemi digitali
Componenti di un processore
Componenti di un processore Unità di Controllo Bus Interno REGISTRI Program Counter (PC) Registro di Stato (SR) Registro Istruzioni (IR) Registri Generali Unità Aritmetico- Logica Registro Indirizzi Memoria
Architettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione
Architettura di un calcolatore e linguaggio macchina Primo modulo Tecniche della programmazione CPU Central Processing Unit, processore Unita logica/aritmetica: elaborazione dati Unita di controllo: coordina
INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo
INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo Prof. Carlo Rossi DEIS - Università di Bologna Tel: 051 2093020 email: [email protected] Classificazione Processori
LEZIONE 2 Il processore e la memoria centrale
Informatica per Igienisti Dentali LEZIONE 2 Il processore e la memoria centrale 1 Il linguaggio macchina Il processore è in grado di riconoscere (e quindi di eseguire) solo programmi scritti in un proprio
Architettura dei calcolatori
Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Elaborazione di Immagini e Suoni / Riconoscimento e Visioni Artificiali 12 c.f.u. Anno Accademico 2009/2010 Docente: ing. Salvatore
