Professional Documents
Culture Documents
CTURA
MULTINU
CLEO
INTRODUCCIN
Conceptos
Frecuencia de operacin.
Limitaciones en la escala de integracin y consumo de
energa.
Retardo RC: a altos niveles de integracin, la resistencia de
los cables se incrementa, as como la capacitancia entre
cables cada vez mas prximos.
Latencia de memoria.
Agotamiento de la
arquitectura secuencial
RETO MULTINUCLEO
1) LA MAQUINA DE TURING:
2) LEY DE MOORE:
El numero de transistores en un
RETO MULTINUCLEO
3) LEY DE AMDAHL:
4) LEY DE GUSTAFSON:
DOBLE NUCLEO
1)
2)
Aplicaciones
1) Ancho de banda
2) Aplicaciones
10
ESTRUCTURA NUCLEO
11
Diagrama de la arquitectura
Partes
Multiplexor del dato de lectura del CPU (cpuDataR s): Esta unidad
selecciona el dato que ser ledo por el CPU
Partes
Memoria cache: Esta compuesta por dos memorias sincrnicas de dos puertos
cada una, A y B. La primera de las memorias guarda los datos y la segunda los
indicadores, el puerto A se utiliza para atender solicitudes del CPU y el B para
la implementacin del algoritmo de coherencia de cache
Puertos y seales
MULTINUCLEO VS MULTIHILADO
22
Procesadores Multincleo vs
HyperThreading
Los procesadores multi-ncleo es un
procesador que contiene dentro del chip
a varios ncleos o "cerebros".
La mayora de los procesadores son
mono-ncleo, o sea tienen un solo
cerebro.
Mientras un procesador mono-ncleo
tiene un solo cerebro para ejecutar
procesos, un procesador multi-ncleo
puede repartir los procesos entre sus
varios cerebros para su posterior
ejecucin.
Procesadores Multincleo
HyperThreading
HyperThreading
Esto conlleva una mejora
en la velocidad de las
aplicaciones que segn
Intel es aproximadamente
de un 60%
Multiprocesador y multincleo,
parecido pero no igual
ORGANIZACIN Y
CLASIFICACION MULTINUCLEO
31
ORGANIZACIN MULTINUCLEO
ORGANIZACIN MULTINUCLEO
El uso de una memoria cache L2 compartida en el chip tiene varias
implementar
una memoria
Cada ncleo tiene su propia cache dedicada L1 (32KB para datos y 32KB
para instrucciones).
Cada ncleo tiene una Unidad de Control Trmico independiente para
maximizar el rendimiento del procesador dentro de las restricciones
trmicas. Si la temperatura de un ncleo excede un umbral, la UCT
reduce la frecuencia de reloj para reducir la generacin de calor de
dicho ncleo.
El Advanced Programmable Interrupt Controller (APIC) realiza las
siguientes funciones:
Proporciona interrupciones interprocesador, lo que permite que cualquier
proceso interrumpa cualquier procesador o conjunto de procesadores .
Acepta interrupciones de E/S y enruta estas al ncleo apropiado.
Cada APIC incluye un timer, que puede ser fijado por el SO para generar
una interrupcin en el ncleo local.
El Power Management Logic es responsable de reducir el consumo de
energa, cuando sea posible, para incrementar el tiempo de vida de las
batera en equipos mviles.
Incluye una memoria cache L2 compartida de 2MB (MESI) con mejoras
para SMP
Intel Core i7
Se introdujo el
2008.
Implementa cuatro
procesadores x86
SMT, cada uno con
una cache L2
dedicada y una
cache L3
compartida.
Cada ncleo tiene su propia cache L2 dedicada y los cuatro ncleos comparten una cache
L3 de 8MB con pre extraccin basada en el anlisis de patrones de acceso
El controlador DDR3 soporta tres canales de 8 bytes de ancho para un ancho de bus total
de 192 bits y una tasa de transferencia agregada de hasta 32GBps
Se elimina la necesidad del Front Side Bus.
El Quick Path Interconnect (QPI) es un enlace punto a punto que permite comunicacin
de alta velocidad entre chips de procesadores interconectados. Opera a 6,4GTps
(transferencias por segundo). Con 16 bits por transferencia, alcanza 12.8GBps.
Puesto que los enlaces QPI comprenden pares bidireccionales dedicados, el ancho de
banda total es de 25.6GBps
3.-Arquitecturas de memoria
distribuida
En este tipo de arquitecturas de nuevo cada nodo es un procesador con su
propia memoria principal y sus propios mecanismos de E/S. Los nodos
trabajan independientemente pero estn conectados mediante una red
de comunicaciones que les permite intercambiar informacin mediante
paso de mensajes. A veces se denominan sistemas o arquitecturas
dbilmente acopladas. Pero en el caso de la memoria distribuida
completamente, la memoria principal se encuentra dividida, fsica y
lgicamente en espacios de direcciones fsicas independientes. Es
decir, la misma direccin fsica de memoria en diferentes procesadores
hace referencia a distintas ubicaciones fsicas, cada una dentro d e la
memoria principal local de cada nodo.
Como cada procesador puede acceder nicamente a su espacio de
direcciones local, la comunicacin entre procesos debe ser explcita
mediante paso de mensajes.
En este tipo de arquitecturas es habitual que los nodos que componen el
sistema sean heterogneos o terminen sindolo. Estas arquitecturas
suelen denominarse multicomputadores, para dar una idea de que
estn compuestas por computadoras completas e independientes que
trabajan conjuntamente para resolver un nico problema. Como se
ver en secciones posteriores, de nuevo ser necesario un middleware
entre las aplicaciones y el hardware que permita utilizar una
arquitectura de este tipo como un nico sistema y no como nodos
independientes que simplemente estn conectados por una red de
comunicaciones.
RENDIMIENTO
41
Rendimiento de un
sistema paralelo
Rendimiento en un sistema con un
procesador:
RI : recuento de instrucciones
CPI: ciclos promedio por instruccin tciclo:
duracin del ciclo de reloj
T RI * 1 *t
P IPC
CPU
Con
CICLO
P : nmero de procesadores
IPC: nmero de instrucciones por ciclo de reloj tciclo:
duracin del ciclo de reloj
4
2
Rendimiento de un
sistema paralelo
Segn Amdahl:
Cuando la fraccin de un trabajo serie de un problema es pequea, y
la denominamos s, la mxima aceleracin o Speedup alcanzable
(incluso para un nmero infinito de procesadores) es slo 1/s
tiempo = 1
Ejecucin serie
en un
procesador
Ag s n 1
s pn s p
n
Ejecucin en un sistema
paralelo de p procesadores
tiempo = s + n/p
4
3
1
R
a
tiempo
i
1
45
Ejemplo
La tabla muestra los tiempos de ejecucin de 2
programas en tres mquinas distintas
Segundos
Programa 1
10
20
Programa 2
1000
100
20
total
1001
110
40
Se ve que
A es 1900% ms rpido que C para el programa 1
B es 100% ms rpido que C para el programa 1
B es 900% ms rpido que A para el programa 2
.
B es 810% ms rpido que A para los programas 1 y 2
C es 2400% ms rpido que A para los programas 1 y 2
B es 175% ms rpido que B para los programas 1 y 2
46
Ejemplo
La media aritmtica para las 3 mquinas A, B y C
ser:
T
A
RA = 1/TA = 0,002
1 1000
500,5seg.
RB = 1/TB = 0,018
10 100
20 20
55seg.
20seg.
RC = 1/TC = 0,05
R C > RB >
RA
47
1
f *tiempo
R
n
i1
48
Ejemplo
Media aritmtica ponderada para las 3 mquinas A, B y C segn
2 cargas distintas
f1 = 50%
f2 = 50%
Prog. 1
10
20
Prog. 2
1000
100
20
total
1001
110
40
media
aritmtica
500,5
55
20
fi
Ti *
j1
1
Tj
f1 = 99,9%
f2 = 0,1%
Prog. 1
10
20
Prog. 2
1000
100
20
total
1001
110
40
media
aritmtica
2,0
10,09
20,0
49
1
R
i1
f *tiempo
i
50
Ejemplo
Media geomtrica normalizada para las 3 mquinas A, B y C.
Normalizado para A (%)
Prog. 1
100
1000
2000
Prog. 2
100
10
M. arit.
100
505
1001
M. Geom.
100
100
63
Tiempo
total
100
11
10
100
200
50
100
1000
100
20
5000
500
100
100
110
2503
275
100
100
100
63
158
158
100
910
100
36
2503
275
100
505
RA>RB
RA<RB
RC= 63% de RA
RC= 63% de RB y
51
R T1
i
1
(f/R)
n
i1
52
FIN
56