Clase06 Jerarquia
Clase #6
Facultad de Ingeniería
Universidad de la República
Instituto de Computación
Curso 2010
Recapitulando:
donde estamos?
Componentes clásicos de un computador
Procesador
Entrada/
Salida
Control
Memoria
Datapath
Veremos otras ideas para mejorar el rendimiento
Localidad y jerarquía de memoria
Memorias SRAM, DRAM
Organización de la memoria
Caches, memoriavirtual
1
Recordemos las tendencias
tecnológicas…
Jerarquía de memoria
Processor
Control
Speed (ns): 1s
Size (bytes): 100s
On-Chip
Cache
Registers
Datapath
Second
Level
Cache
(SRAM)
Main
Memory
(DRAM)
10s
100s
Ks
Gs
Tertiary
Secondary
Storage
Storage (Disk/Tape)
(Disk)
10,000,000s 10,000,000,000s
(10s ms)
(10s sec)
Ts
100Gs
2
Jerarquía de memoria
Registros
Cache L1
Cache L2Memoria Principal
Disco (c/cache)
Alm. óptico
Cintas
Por qué funciona la jerarquía ?
Principio de Localidad:
Los programas acceden a una porción relativamente
pequeña del espacio de direcciones en un determinado
lapso de tiempo.
Localidad temporal
• Si un ítem es referenciado en determinado momento, es
común que vuelva a ser referenciado poco tiempo después
Localidad Espacial
• Cuando un ítem esreferenciado en determinado momento,
es común que los ítems con direcciones “cercanas”también
sea accedidos poco tiempo después.
3
Jerarquía de Memoria:
Cómo Funciona?
Localidad Temporal
Mantener los datos más recientemente accedidos
“cercanos” al procesador
Localidad Espacial
Mover bloques de palabras contiguas al nivel superior
Como se maneja la jerarquía?
Registros <-> Memoria
por el compilador(programador?)
cache <-> memoria
por el hardware
memoria <-> discos
por el hardware y el sistema operativo (memoria virtual)
por el programador (archivos)
4
Jerarquía de Memoria:
Terminología
Hit: los datos están en algún bloque del nivel superior
Hit Rate: fracción de accesos a memoria encontrados en el
nivel superior
Hit Time: Tiempo de acceso al nivel superior
• Tiempo para determinarhit/miss + tiempo de lectura/escritura
Miss: los datos deben ser traídos desde un bloque en el
nivel inferior
Miss Rate = 1 - (Hit Rate)
Miss Penalty
• Tiempo adicional requerido en caso de Miss.
Hit Time << Miss Penalty
Tiempo medio de acceso a memoria =
= Hit time + Miss Rate * Miss Penalty
Tecnologías de Memoria:
Accesso “Aleatorio”
El tiempo de acceso es el mismo para cualquier posición
DRAM:Dynamic Random Access Memory
•
•
Alta densidad, baja potencia, barata, lenta
Dinámica: necesita ser “refrescada” regularmente
SRAM: Static Random Access Memory
•
•
Baja densidad, alta potencia, cara, rápida
Estática: su contenido no se pierde mientras se mantenga la
alimentación
Tecnología de Acceso “Non-so-random”
Tiempo de acceso varía según la posición y el momento
Ejemplos: Disco, CDROMTecnología de Acceso Secuencial: tiempo de acceso lineal con
la posición (ej. Cinta)
5
Algunas medidas de
rendimiento de memoria
Tiempo de Acceso
Tiempo transcurrido entre presencia de direcciones y
obtención de datos válidos
Tiempo de Ciclo de Memoria
Tiempo entre dos accesos consecutivos
Tiempo de Ciclo: acceso + recuperación
Tasa de Transferencia
Tasa a la que se mueven los datos
MemoriaPrincipal:
La organización
puede mejorar el rendimiento
Simple:
CPU, Cache, Bus, Memoria mismo ancho(32 bits)
Ancho (Wide):
CPU/Mux 1 palabra; Mux/Cache, Bus, Memoria N palabras
Entrelazado (Interleaved):
CPU, Cache, Bus 1 palabra: Memoria N Módulos; el ejemplo es
de 4 módulos, word interleaved ( estrelazado de palabra)
6
Entrelazado (Interleaving)
Patrón de Acceso sin Interleaving:
D1disponible
InicioAcceso de D1
CPU
Memoria
InicioAcceso de D2
Memoria
Banco 0
Patrón de Acceso con Interleaving de 4 vías:
Memoria
Banco 1
Acceso Banco 0
CPU
Memoria
Banco 2
Memoria
Banco 3
Acceso Banco 1
Acceso Banco 2
Acceso Banco 3
Podemos Acceder Banco 0 nuevamente
Rendimiento de la Memoria
Principal
Modelo de Tiempos
1 u. para enviar direcciones,
10 u. de tiempo de acceso, 1 u. para...
Regístrate para leer el documento completo.