Está en la página 1de 52

Grupo de Arquitectura de Computadores,

Comunicaciones y Sistemas
ARQUITECTURA DE
COMPUTADORES
Fundamentos del diseo de computadores
Contenido
Arquitectura de Computadores - Curso 2013
2
Tendencias tecnolgicas.
Tendencias en potencia y energa.
Tendencias en coste.
Evaluacin del rendimiento.
Tendencias tecnolgicas
3
Arquitectura de Computadores - Curso 2013
Impacto de la tecnologa
Arquitectura de Computadores - Curso 2013
4
Los cambios tecnolgicos tienen impacto en los
mecanismos de implementacin de la ISA.

Tecnologas:
Lgica de circuitos integrados.
DRAM.
Flash.
Discos magnticos.
Redes
Tendencias
Arquitectura de Computadores - Curso 2013
5
Tecnologas de circuitos integrados.
Densidad de transistores: 35% anual.
Tamao del dado: 10%-20% anual.
Efecto combinado: 40%-55% anual (Ley de Moore).

Capacidad DRAM.
25%-40% anual (reducindose).

Capacidad Flash.
50%-60% anual.
15-20 veces ms barato por bit que DRAM.

Capacidad Discos magnticos.
40% anual.
15-25 veces ms barato por bit que Flash.
300-500 veces ms barato por bit que DRAM.
Ancho de banda y latencia
Arquitectura de Computadores - Curso 2013
6
Ancho de banda o tasa de procesamiento
(throughput).
Cantidad de trabajo realizado por unidad de tiempo.
Procesadores: Incremento entre 10.000 y 25.000.
Memoria y discos: Incremento entre 300 y 1.200.

Latencia o tiempo de respuesta.
Tiempo entre inicio y fin de un evento.
Procesadores: Incremento entre 30 y 80.
Memorias y discos: Incremento entre 6 y 8.
Intervalo: 1982 a 2010
Ancho de banda y latencia
Arquitectura de Computadores - Curso 2013
7
Grfico log-log de ancho de banda y latencia
Tendencias en Potencia y Energa
8
Arquitectura de Computadores - Curso 2013
Potencia y Energa
Arquitectura de Computadores - Curso 2013
9
Se dispone de dos sistemas (A y B).
A consume un 20% ms de potencia elctrica que B.
A ejecuta una tarea en el 70% del tiempo que B.
Cul tiene menor coste?

La mtrica adecuada para la comparacin es la
Energa.
E(B) = P(B) x t(B)
E(A) = 1.2 P(B) x 0.7 t(B) = 0.84 E(B)
El sistema A consume el 84% de la energa que B.

Energa y potencia en micros
Arquitectura de Computadores - Curso 2013
10
En tecnologa CMOS el consumo de energa se
deriva de la conmutacin de transistores.
Energa dinmica:
Cantidad de energa necesaria para conmutar (01 o
10)
E
d
x carga_capacitiva x Voltaje
2
Potencia dinmica:
Depende de la frecuencia de conmutacin.
P
d
x carga_capacitiva x Voltaje
2
x Frecuencia



Ejemplo
Arquitectura de Computadores - Curso 2013
Si una reduccin de voltaje del 15% implica una
reduccin del 15% en la frecuencia,
Qu efecto hay sobre la potencia dinmica?







( ) ( )
61 . 0 85 . 0
85 . 0 85 . 0
3
2
2
= =


=
F V
F V
P
P
ant
nueva
11
Consecuencias
Arquitectura de Computadores - Curso 2013
12
Reduccin:
La potencia y energa dinmica se reducen al bajar el
voltaje.
En 20 aos el voltaje ha bajado de 5V a 1V.
La carga capacitiva depende de nmero de
transistores conectados a una salida .
Mecanismo de control de potencia y energa.


Evolucin
Arquitectura de Computadores - Curso 2013
13
Evolucin dominada por
incremento de nmero
de transistores e
incremento de
frecuencia:
Incremento de Potencia
y Energa.
Intel 80386: 2W
Intel Core i7 3.3GHz:
130W.
Chip: 1.5 x 1.5 cm.
Lmite de enfriamiento
por ventilacin.
Eficiencia energtica
Arquitectura de Computadores - Curso 2013
14
Tcncias:
Desactivacin de reloj de unidades inactivas.
Escalado dinmico de voltaje y frecuencia (DVFS).
Modos de bajo consumo en memoria y discos.
Requiere mecanismo para reactivar.
Overclocking automtico.
Se activa si es seguro.
Ej. Core i7 3.3GHz puede ejecutar rfagas a 3.6 GHz.
Tendencias en coste
15
Arquitectura de Computadores - Curso 2013
Coste
Arquitectura de Computadores - Curso 2013
El coste de fabricacin de un computador se reduce a
lo largo del tiempo.
Principio de la curva de aprendizaje.
Medido por el rendimiento del proceso de fabricacin.
Porcentaje de dispositivos que sobreviven a la fabricacin.
Si se dobla el rendimiento se divide a la mitad el coste.
DRAM: Promedio de cada anual del 40% en coste y precio.
Excepto periodos de escasez o superavit.
Volumen
Decremento del 10% en coste si se dobla volumen.
Reduccin de amortizacin de desarrollo por unidad.
Incremento de eficiencia del proceso de fabricacin.
Venta por mltiples fabricantes de mismo producto.
Mayor competencia.

16
Coste de circuito integrado
Arquitectura de Computadores - Curso 2013
Proceso de fabricacin.
Oblea Dados.
iento n
Coste Coste Coste
Coste
o Empaquetad uebas Die
IC
dim Re
Pr
+ +
=
o Rendimient lea DadosPorOb
=
oblea
die
Coste
Coste
area
diametro
area
diametro
Dados
oblea

|
.
|

\
|

=
2
2
2
t
t
17
Ejemplo
Arquitectura de Computadores - Curso 2013
18
Oblea de 30 cm de dimetro.
Dados de 1.5 cm de lado.
Dados por oblea: 270.
Dados de 1 cm de lado
Dados por oblea: 640.
Confiabilidad
19
Arquitectura de Computadores - Curso 2013
Fiabilidad
Arquitectura de Computadores - Curso 2013
Fiabilidad de un mdulo.
Medida del cumplimiento continuo del servicio.
Mtricas:
MTTF (Tiempo medio hasta fallo).
Mide la fiabilidad.
FIT (Fallos por tiempo) o tasa de fallos 1/MTTF.
MTTR (Tiempo medio de reparacin) mide interrupcin.
Mtricas derivadas:
MTBF (Tiempo medio entre fallos) MTTF + MTTR
Disponibilidad
Fraccin de tiempo que el mdulo est disponible.
MTTF / (MTTF + MTTR)
20
Ejemplo
Arquitectura de Computadores - Curso 2013
Si se puede asumir:
Tiempo de vida exponencialmente distribuido
Edad del mdulo no afecta probabilidad de fallo.
Fallos independientes.
Sistema:
10 discos con MTTF=1,000,000 horas.
1 controlador MTTF=500,000 horas
1 fuente alimentacin MTTF=200,000 horas
1 ventilador MTTF=200,000 horas
1 cable MTTF=1,000,000 horas
21
Arquitectura de Computadores - Curso 2013
TasaFallos
Disco: 10 x 1/1,000,000
Controlador: 1/500,000
Fuente: 1/200,000
Ventilador: 1/200,000
Cable: 1/1,000,000
Total: 23/1,000,000
MTTF = 1/TasaFallos =
1,000,000/23 = 43478,26 horas 4.9 aos
22
Evaluacin del rendimiento
23
Arquitectura de Computadores - Curso 2013
Velocidad
Arquitectura de Computadores - Curso 2013
24
Qu significa que el computador A es ms rpido
que el computador B?
Desktop
Mi programa se ejecuta en menor tiempo.
Quiero reducir el tiempo de ejecucin.
Administrador de sitio Web.
Puedo procesar ms transacciones por hora.
Quiero aumentar la tasa de procesamiento.
Rendimiento
Arquitectura de Computadores - Curso 2013
25
El rendimiento R(x) es una mtrica inversa del
tiempo de ejecucin T(x).
R(x) = 1 / T(x)
Alto rendimiento Bajo tiempo de ejecucin
X se ejecuta n veces ms rpido que Y.
T(y) / T(x) = n

) (
) (
) (
1
) (
1
) (
) (
x R
y R
y R
x R
y T
x T
n = = =
Mtricas
Arquitectura de Computadores - Curso 2013
26
La nica mtrica fiable para comparar el
rendimiento de computadores es la ejecucin de
programas reales.
Cualquier otra mtrica conduce a errores.
Cualquier alternativa a programas reales conduce a
errores.
Tiempo de ejecucin.
Tiempo de respuesta: Tiempo total transcurrido.
Percibido por el usuario.
Tiempo de CPU: Tiempo que la CPU ha estado
ocupada.

Carga de trabajo
El rendimiento de un computador depende de la
carga de trabajo con la que se evala.

Computadores adaptados a cargas especficas
Servidores web.
Servidores de bases de datos.
Servidores de ficheros.
Computadores personales.
Multiprocesadores.
Multicomputadores.
Etc.
Arquitectura de Computadores - Curso 2013
27
Benchmark
Arquitectura de Computadores - Curso 2013
28
Aplicacin o conjunto de aplicaciones usadas para
evaluar el rendimiento.

Aproximaciones:
Kernels: Partes pequeas de aplicaciones reales.
Ejemplo: FFT.
Programas de juguete: Programas cortos.
Ejemplo: quicksort.
Benchmarks sintticos: Inventados para representar
aplicaciones reales:
Ejemplo: Dhrystone.

Todas malas aproximaciones:
El arquitecto y el compilador pueden engaar!
Benchmarks
Arquitectura de Computadores - Curso 2013
29
Empotrados:
Dhrystone (relevancia discutible).
EEMBC (kernels).
Desktop:
SPEC2006 (mezcla de programas enteros y coma
flotante).
Servidores:
SPECWeb, SPECSFS, SPECjbb, SPECvirt_Sc2010.
TPC
Benchmarks: SPEC 2006
30
Arquitectura de Computadores - Curso 2013
Ley de Amdahl
31
Arquitectura de Computadores - Curso 2013
Ley de Amdahl (1967)
Arquitectura de Computadores - Curso 2013
32
El incremento de rendimiento obtenido usando un
modo de ejecucin ms rpido est limitado por la
fraccin de tiempo que se puede usar dicho modo.

Sepeedup o aceleracin:
Ratio entre el rendimiento mejorado y rendimiento
original.
S = R(M) / R(O)
S = T(O) / T(M)
Factores:
Fraccin susceptible de mejora. [F]
Speedup de la mejora. [S(m)]
Tiempo de ejecucin
Arquitectura de Computadores - Curso 2013
33
T(A)
T(A)
T(B)
T(B)
) ( ) (
) (
B T A T
A T
F
+
=
) ' (
) (
) (
A T
A T
m S =
( )
( ) T F
m S
T F
T
T F
m S
A T
B T A T T
+

=
'
+ = +
'
=
'
1
) (
1
) (
) (
) ( ) (
( )
|
|
.
|

\
|
+ =
'
) (
1
m S
F
F T T
Ejemplo de tiempo de ejecucin
Arquitectura de Computadores - Curso 2013
34
20
10
5
5
8 . 0
5 20
20
=
+
= F
2
10
20
) ( = = m S
( ) ( ) 15
2
8 . 0
8 . 0 1 25
) (
1 =
|
.
|

\
|
+ =
|
|
.
|

\
|
+ =
'
m S
F
F T T
Esto ya los sabamos!
Ley de Amdahl
Arquitectura de Computadores - Curso 2013
35
T(A)
T(A)
T(B)
T(B)
( )
( )
) (
1
1
) (
1
'
m S
F
F
m S
F
F T
T
T
T
S
+
=
|
|
.
|

\
|
+
= =
Ley de Amdahl
El speedup depende exclusivamente
de la fraccin de mejora y el
speedup de la mejora
Caso 1
Arquitectura de Computadores - Curso 2013
36
Un servidor Web distribuye su tiempo en:
Cmputo: 40%
E/S: 60%
Si se sustituye por otra mquina que puede hacer el
cmputo 10 veces ms rpido, Cul es el speedup
global?

5625 . 1
64 . 0
1
10
4 . 0
6 . 0
1
= =
+
= S
Caso 2
Arquitectura de Computadores - Curso 2013
37
Una aplicacin tiene una parte paralelizable que
consume el 50% del tiempo.
Si se asume que se puede paralelizar esta parte
completamente con 32 procesadores, cul ser el
mximo speedup?
9393 . 1
515625 . 0
1
32
5 . 0
5 . 0
1
= =
+
= S
El speedup de esta aplicacin nunca ser superior a 2
Caso 2
Arquitectura de Computadores - Curso 2013
38
0
1
2
3
4
5
6
7
8
9
10
1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52 55 58 61
Speedup
F=0,5 F=0,75 F=0,8 F=0,9
Reflexiones sobre la Ley de Amdahl
Una mejora es ms efectiva cuanto ms grande es la
fraccin de tiempo en que sta se aplica
Para mejorar un sistema complejo hay que optimizar los
elementos que se utilicen durante la mayor parte del
tiempo (caso ms comn)
Campos de aplicacin de las optimizaciones
Dentro del procesador: la ruta de datos (data path)
En el juego de instrucciones: la ejecucin de las instrucciones
ms frecuentes
En el diseo de la jerarqua de memoria, la programacin y
la compilacin: hay que explotar la localidad de las
referencias
El 90% del tiempo se est ejecutando el 10% del cdigo
Arquitectura de Computadores - Curso 2013
39
Ley de Gustafson
40
Arquitectura de Computadores - Curso 2013
Planteamiento de Gustafson
La Ley de Amdahl enfatiza el aspecto ms negativo del
procesamiento paralelo.
Sin embargo:
Las mquinas paralelas se usan para resolver grandes
problemas (meteorologa, biologa molecular).
Un computador secuencial nunca podra ejecutar un gran
programa paralelo.
No tendra capacidad para ello.
p
s
T
T
S =
paralela mquina en Tiempo
secuencial mquina en Tiempo
=
=
p
s
T
T
Arquitectura de Computadores - Curso 2013
41
La aceleracin proporcional
La cantidad de trabajo que se puede hacer en
paralelo vara linealmente con el nmero de
procesadores
Con ms procesadores se pueden acometer problemas de
mayor coste computacional
) 1 (
) 1 (
p p
T
pT T
T
T
S
s
s s
p
s
p
+ =
+
=
'
= o
o o
T
s
= T
p
T
s
o T
s
(1o) T
s
o T
s
(1o) p T
s
Mquina paralela
Mquina
secuencial
Arquitectura de Computadores - Curso 2013
42
Efectos de la Ley de Gustafson
Arquitectura de Computadores - Curso 2013
43
La ley dede Gustafson asume que la parte
secuencial (no paralelizable) disminuye con el
tamao del problema.
Cuando el problema crece se puede aproximar el
paralelismo lineal (Sp).

El paralelismo permite atacar problemas mayores.
Efecto
Arquitectura de Computadores - Curso 2013
44
0
10
20
30
40
50
60
70
1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52 55 58 61
Speedup
alpha=0,5 alpha=0,25 alpha=0,2 alpha=0,1 Lineal
Ecuacin de rendimiento del procesador
45
Arquitectura de Computadores - Curso 2013
CPI
Arquitectura de Computadores - Curso 2013
46
Un procesador ejecuta cada instruccin en varios
ciclos de reloj.
El tiempo consumido por la CPU para ejecutar un
programa:


Se puede expresar la velocidad media como ciclos
por instruccin (CPI) a partir del nmero total de
ciclos consumidos y del nmero de instrucciones
ejecutadas (IC).
reloj de frecuencia
programa del CPU de ciclos
CPU tiempo =
IC
programa del CPU de ciclos
CPI =
Factores sobre el tiempo de ejecucin
Arquitectura de Computadores - Curso 2013
47
Si se reducen un 10% cualquiera de los 3 factores
se reduce un 10% el tiempo de ejecucin.
Pero los 3 factores estn interrelacionados.
reloj de periodo IC CPI CPU tiempo
reloj de frecuencia
IC CPI
CPU tiempo
IC CPI programa del CPU de ciclos
IC
programa del CPU de ciclos
CPI
=

=
=
=
Clases de instrucciones
Arquitectura de Computadores - Curso 2013
48
Distintas clases de instrucciones tienen distinto IC y
CPI.
Impacto de la frecuencia relativa de instrucciones en
ejecucin de programa.
i
n
i
i
n
i
i i
i i
n
i
i i
CPI
IC
IC
IC
CPI IC
CPI IC
CPI IC
=

=
|
.
|

\
|
=
=

=
=
=
=
1
1
global
n
1 i
1
CPI
reloj de periodo CPU de tiempo
CPU de ciclos
Ejemplo
Arquitectura de Computadores - Curso 2013
49
En ejecucin de un programa se ha visto que:
Operaciones coma flotante: 25% (4.0 CPI en
promedio).
Operacin FPSQR (raz cuadrada): 2% (20 CPI).
Resto de instrucciones 1.33 CPI.
Elegir entre alternativas de diseo:
Reducir CPI de FPSQR a 2.
Reducir CPI de todas las operaciones de coma flotante
a 2.5.

Solucin
Arquitectura de Computadores - Curso 2013
50
6225 . 1 33 . 1 75 . 0 5 . 2 25 . 0 ) (
6375 . 1 33 . 1 75 . 0 2 02 . 0 6087 . 2 23 . 0 ) (
6087 . 2
23 . 0
20 02 . 0 4 25 . 0
) (
20 02 . 0 ) ( 23 . 0 4 25 . 0
) ( 02 . 0 ) ( 23 . 0 ) ( 25 . 0
9975 . 1 75 . 0 33 . 1 4 25 . 0
sin
sin
sin
= + =
= + + =
=

=
+ =
+ =
= + =
nuevoFP CPI
nuevoFPSQR CPI
FP CPI
FP CPI
FPSQR CPI FP CPI FP CPI
CPI
FPSQR
FPSQR
FPSQR
Conclusiones
Arquitectura de Computadores - Curso 2013
51
El ancho de banda ha mejorado mucho ms que la
latencia en los ltimos 20 aos.
El crecimiento de potencia consumida limita la
frecuencia de reloj.
Reduccin del coste de fabricacin a lo largo del
tiempo.
La nica mtrica fiable para comparar el rendimiento
de computadores es la ejecucin de programas reales.
Las leyes de Amdahl y Gustafson presenta dos visiones
sobre los lmites de la mejora de rendimiento.

Arquitectura de Computadores - Curso 2013
52
Computer Architecture. A Quantitative Approach.
Fifth Edition.
Hennessy y Patterson.
Secciones 1.4 a 1.9

También podría gustarte