29
Insegnamento di Informatica – a.a. 2015-16 Il Microprocessore INSEGNAMENTO DI INFORMATICA – A.A. 2015-16 Francesco Ciclosi Macerata, 6 ottobre 2015

MODULO 04: Il microprocessore

Embed Size (px)

Citation preview

Page 1: MODULO 04: Il microprocessore

Insegnamento di Informatica – a.a. 2015-16

Il Microprocessore

INSEGNAMENTO DI INFORMATICA – A.A. 2015-16

Francesco Ciclosi

Macerata, 6 ottobre 2015

Page 2: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

L’unità centrale di elaborazione

La CPU (Central Processing Unit) è il cuore

nevralgico del computer

È costituita da un microprocessore (nei

microcomputer)

È ricavata da sottili lamine di silicio (chip)

Page 3: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Chip

Ogni chip contiene milioni di transistor, ovvero

dei piccolissimi interruttori acceso/spento

I transistor sono collegati tra di loro da

sottilissime tracce di alluminio

I transistor e le tracce di collegamento formano i

circuiti

I circuiti si occupano dell’elaborazione dei dati

Page 4: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Catalogazione dei chip

I microprocessori possono essere catalogati in

famiglie, ovvero una serie di chip compatibili tra

di loro

Solitamente i chip prodotti da aziende diverse

sono incompatibili

• hanno un’architettura differente

• non consentono l’esecuzione di programmi scritti

per l’esecuzione su altri chip

Page 5: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Attenzione alla compatibilità

Un programma che sfrutta le innovazioni

dell’ultimo processore di una data famiglia

potrebbe non funzionare correttamente con i

chip precedenti

Page 6: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Il termine multicore

Indica delle CPU composte da due o più «core»

Un core è un nucleo di un processore fisico

montato nello stesso involucro in modo da

comporre un unico elemento

Page 7: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

CPU multicore: definizione

Una CPU multicore è un insieme di unità

processanti e autonome montate in un unico chip

che condividono delle risorse (cache, bus e

memoria centrale)

I core possono condividere la cache oppure avere

delle cache proprie (scelta architetturale)

È un esempio di calcolatore parallelo a memoria

condivisa

Page 8: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Esempi di architetture multicore

IBM Power7 (2010) AMD Opteron (2010)

Core = 12, Cache L1 = 12x32 kB

Cache L2 = 12x1 kB, Cache L3 = 2x6 MB

Core = 8, Cache L1 = 8x32 kB

Cache L2 = 8x256 kB, Cache L3 = 32 MB

Page 9: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

La tecnologia Hyper-Threading di Intel

Introdotta da Intel sulle

CPU Pentium 4 nel 2002

con lo scopo di migliorare

le prestazioni

Consente di raddoppiare a

livello logico il numero dei

core

Il miglioramento ottenibile

è solo del 10%

Page 10: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Funzionamento di HT (1/2)

Normalmente la CPU accetta un solo thread (0) alla

volta per core fisico

Con la tecnologia HT attiva, la CPU accetta due

thread alla volta per core fisico (thread 0 e thread 1)

• ogni thread in ingresso viene suddiviso in due “semi-thread”,

che vengono uniti formando un “thread condiviso”

• il thread così formato viene elaborato sul core fisico della CPU

• in uscita il thread condiviso si scompone in semi-thread e

questi ultimi riformano i thread originari

Page 11: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Funzionamento di HT (2/2)

Visto che la CPU HT accetta 2 thread alla volta, il

sistema operativo vedrà questa CPU dotata di due

core “logici”

ATTENZIONE

A livello di capacità elaborativa la differenza tra core

logico e core fisico è abissale

Il miglioramento reale ottenibile è di solo il 10%

Page 12: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Comparazione tra CPU multicore Tipologia CPU N.° core fisici N.° core logici Famiglia CPU

single core senza

HT

1 core fisico 1 core logico (Intel Pentium 3)

single core con HT 1 core fisico 2 core logici (Intel Pentium 4

HT)

dual-core senza HT 2 core fisici 2 core logici (Intel Pentium D,

AMD Athlon X2)

dual-core con HT 2 core fisici 4 core logici (Intel Core i3)

quad-core senza HT 4 core fisici 4 core logici (Intel Core i5)

quad-core con HT 4 core fisici 8 core logici (Intel Core i7)

octa-core senza HT 8 core fisici 8 core logici (AMD FX-8100 o

superiori)

octa-core con HT 8 core fisici 16 core logici (Intel Xeon E5)

Page 13: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

I coprocessori

Sono dei processori particolari che agiscono

sotto il diretto controllo della CPU

Vengono utilizzati per sgravare la CPU da parte

del suo carico elaborativo

CPU

Coprocessore

Memoria di

sistema

Sistema di

I/O

Page 14: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

I processori paralleli

Sono processori che operano indipendentemente

l’uno dall’altro

Condividono alla pari le risorse del sistema

La loro attività è coordinata dal sistema operativo

CPU 1

CPU 2

Memoria

di sistema

Sistema

di I/O

Cache

Cache

Page 15: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Architetture multi CPU

Scheda madre a singola CPU Scheda madre a doppia CPU

Page 16: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Anatomia di una CPU

Page 17: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

La lunghezza (o dimensione) di parola

Indica la quantità di dati che un computer può

trasmettere ed elaborare

È misurata dal numero di bit utilizzabili

contemporaneamente

Può variare dagli 8 bit dei primi computer ai 128

bit degli elaboratori più recenti e potenti

Page 18: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Word lenght Sistema Operativo Architettura CPU

8 bit Atari OS e Atari DOS Intel 8080 (1973)

Intel 8085 (1977)

16 bit MS-DOS

Intel 8086 (1978)

Intel 80286 (1982)

32 bit Windows 95, 98, 98SE, ME

Windows 2000, XP, Vista

Windows NT 3.1, 3.5, 3.51, 4.0

Windows 2000 Server

Windows Server 2003/2003 R2

Windows Server 2008

x86 Intel 80386 (1986)

Intel 80486 (1989)

Intel Pentium (1993)

AMD Athlon

64 bit Windows XP, Vista, 7.0, 8.0, 8.1, 10

Windows Server 2003/2003 R2

Windows Server 2008/2008 R2

Windows Server 2012

Intel EM64T

AMD AMD64

Intel IA-64

Intel Pentium D (2005)

AMD Opteron, AMD

Athlon64

Intel i3, i5, i7

128 bit Non esistono processori general-purpose che utilizzano word a 128 bit

Page 19: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Il clock (1/2)

Il clock è l’orologio incorporato nel

microprocessore

Determina la velocità di ogni operazione svolta

dal computer

La sua velocità si misura in (MHz) milioni di

cicli al secondo

Page 20: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Il clock (2/2)

Poiché non tutti i microprocessori utilizzano lo

stesso numero di cicli per elaborare le istruzioni

Il clock è un indicatore della velocità di una CPU

solo all’interno della stessa famiglia

Page 21: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Il set di istruzioni delle CPU

Ogni elaboratore è programmato per svolgere vari

compiti utilizzando una serie di semplici istruzioni

(insieme di istruzioni del microprocessore)

Più l’insieme di istruzioni è grande, più il

microprocessore può svolgere varie funzioni

Esistono differenti architetture, ma due sono le

più diffuse

Page 22: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

CISC e RISC: architetture a confronto

CISC (Complex Instruction Set Chips)

• Utilizza un insieme di istruzioni particolarmente

complesso

• Le istruzioni sono più di 300

RISC (Reduced Instruction Set Chips)

• Utilizza un insieme di istruzioni ridotto

• Le istruzioni sono meno di 200

Page 23: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

CISC - RISC: differenze (1/2) L’architettura interna dei microprocessori RISC:

1. Consente l’esecuzione di più istruzioni in un unico

ciclo elaborativo

2. Contiene molti meno elementi di quella CISC

3. È più economica e semplice da progettare rispetto

a quella CISC

1. L’architettura interna dei microprocessori

CISC consente di svolgere più operazioni

rispetto a quelle consentite da quella RISC

Page 24: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

CISC - RISC: differenze (2/2) A volte l’architettura RISC è più veloce poiché il

set ridotto di istruzioni che utilizza è sufficiente a

svolgere circa l’80% delle operazioni

Attualmente i processori CISC hanno quasi

raggiunto la potenza dei microprocessori RISC

Page 25: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Le prestazioni della CPU

In generale è possibile migliorare le prestazioni

di un sistema in tre modi:

• Espanderne la capacità

• Aumentarne la velocità

• Migliorarne l’efficienza

Page 26: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

La legge di Joy

La velocità del computer è misurata in MIPS,

ovvero milioni di istruzioni eseguibili al secondo

Nel 1984 William Joy ipotizzò che le prestazioni

degli elaboratori sarebbero aumentate secondo

un indice prevedibile

𝑴𝑰𝑷𝑺 = 𝟐(𝒂𝒏𝒏𝒐 −𝟏𝟗𝟖𝟒)

Page 27: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

Andamento della legge di Joy

Page 28: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

I benchmark

Sono programmi eseguibili su differenti tipi di

elaboratori e utilizzati per effettuare raffronti

reali sui sistemi

Ma il metodo non funziona bene

• Risente dell’ottimizzazione del microprocessore

verso l’ambito del calcolo di numeri interi oppure

verso quello delle operazioni in virgola mobile

• I risultati possono essere «drogati» considerando

opportunamente l’area che si vuole evidenziare

Page 29: MODULO 04: Il microprocessore

Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati

© Francesco Ciclosi – Settembre 2015 CC-BY-SA 4.0 – Common Deed – Legal Code

Insegnamento di Informatica – a.a. 2015-16

I miei contatti linkedin

http://it.linkedin.com/pub/francesco-ciclosi/62/680/a06/

facebook

https://www.facebook.com/francesco.ciclosi

twitter

@francyciclosi

www

http://www.francescociclosi.it