Otros temas sobre cachés

Slides:



Advertisements
Presentaciones similares
III - Gestión de memoria
Advertisements

Memoria Cache.
Arquitectura de Computadores I
Microprocesadores para comunicaciones Escuela Técnica Superior de Ingenieros de Telecomunicación Organización y estructura de las memorias caché.
Algoritmos de Remplazamiento de Paginas
Introducción a los Sistemas Operativos Memoria Virtual
Departamento de Ingeniería de Sistemas Universidad de Antioquia
Departamento de Ingeniería de Sistemas Universidad de Antioquia
MEMORIA 1.
SISTEMAS DE MEMORIA DEL COMPUTADOR
Tema II Unidad de memoria. 2 Unidad de memoria 2.1 Definiciones y conceptos básicos Localización Capacidad Unidad de transferencia
Memoria cache.
Memoria Virtual Fallos de Página Algoritmos de Reemplazamiento
Estructura y Tecnolología de Ordenadores
Problema Procesador-Memoria
Memoria Organización del caché. Universidad de SonoraArquitectura de Computadoras2 Organización del caché Hasta ahora solo se ha visto la estrategia de.
Memoria Otros temas sobre cachés. Universidad de SonoraArquitectura de Computadoras2 Otros temas 1. Estrategias de búsqueda de bloque. 2. Estrategias.
Simulador didáctico de jerarquías de memoria
Memoria Retos de diseño. Universidad de SonoraArquitectura de Computadoras2 Fallas de caché Las fallas de caché disminuyen conforme se incrementa la asociatividad.
1 Memoria Virtual Capítulo 8. 2 Estructuras de Hardware y Control Todas las referencias a memoria son direcciones lógicas y son mapeadas a direcciones.
Memoria Cachés. Universidad de SonoraArquitectura de Computadoras2 Introducción Caché es el nivel de memoria situada entre el procesador y la memoria.
Overview Sistemas Computacionales
Soporte HW para Administración de Memoria Cecilia Hernández
ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 19 La mayor parte del contenido de estas láminas, ha sido extraído del libro Computer Organization and.
Organización del Computador
Programa del Curso Fundamentos del Diseño de Computador. Fundamentos del Diseño de Computador. Arquitectura del Conjunto de Instrucciones (Revisión). Arquitectura.
Organización del Computador
Memoria virtual.
Organización del Computador I Verano Jerarquía de Memoria Basado en el capítulo 7 del libro de Patterson y Hennessy Verano 2004 Profesora Borensztejn.
ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 20 La mayor parte del contenido de estas láminas, ha sido extraído del libro Computer Organization and.
Rendimiento y/o desempeño.. RENDIMIENTO “El computador A es más rápido que el computador B” Como se determina el rendimiento de un computador para: El.
Memoria Virtual Msc. Rina Arauz.
Dra. Maricela Quintana López Centro Universitario Valle de México Memoria Dra. Maricela Quintana López Elaborado por: Arquitectura de Computadoras.
Gestión de Memoria – Parte 2
Arquitectura de Computadores Clase 21 Memoria Virtual IIC 2342 Semestre Rubén Mitnik Pontificia Universidad Católica de Chile Escuela de Ingeniería.
Arquitectura de Computadores Clase 19 Memoria Caché: Funciones de Correspondencia IIC 2342 Semestre Rubén Mitnik Pontificia Universidad Católica.
Memoria Virtual Conceptos Paginación Bajo Demanda Creación de Procesos Remplazo de Página Asignación de Marcos Hiperpaginación Ejemplos.
Memoria virtual. Universidad de SonoraArquitectura de Computadoras2 Introducción Memoria virtual es un mecanismo que permite que la memoria principal.
Arquitectura de Computadores
Vinculación de Instrucciones y Datos a Memoria Tiempo de compilación: si la dirección de memoria se conoce a priori, se puede generar código absoluto;
ALGORITMOS DE SUSTITUCIÓN DE PÁGINAS. Idea Cuando ocurre una falla de página, el sistema operativo tiene que escoger la página que sacará de la memoria.
Paginamiento / Paging Sistemas Operativos 16 de Septiembre de 2011.
Memoria Cachés.
Organización de computadoras
Pipelining Peligros de control.
Ley de Amdahl.
Memoria Rendimiento del caché.
Superescalares Scheduling estático.
Datapath para las instrucciones aritméticas y lógicas
ADMINISTRACíON DE LA MEMORIA EN SISTEMAS RECIENTES
Memoria Introducción.
Pipelining Peligros (hazards).
Otros temas sobre cachés
Organización del caché
Memoria virtual.
Memoria Retos de diseño.
Memoria virtual.
MEMORIAS. Alba Lus, Esther Escobar, Laura Hierro, Raquel Fdez.
Organización del Computador I Verano Memoria Virtual Basado en el capítulo 7 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.
Algoritmos de reemplazo
SISTEMAS OPERATIVOS MEMORIA VIRTUAL.
Pipelining Peligros de control.
ALGORITMOS DE REMPLAZO DE PAGINA PAULA ROMO RODRIGO ABREGO RANDOL FELIX.
El procesador Datapath y control.
Memoria Cachés.
Ejercicio 5.6 sobre cachés
Memoria Cachés. Universidad de SonoraArquitectura de Computadoras2 Introducción Caché es el nivel de memoria situada entre el procesador y la memoria.
Organización del caché
Memoria Rendimiento del caché.
Pipelining Peligros de control.
Transcripción de la presentación:

Otros temas sobre cachés Memoria Otros temas sobre cachés

Otros temas Estrategias de búsqueda de bloque. Estrategias de reemplazo de bloque. Cachés multinivel. Universidad de Sonora Arquitectura de Computadoras

Localizando un bloque La dirección se divide en: En un caché de mapeo directo (1-way), el bloque está dado por el índice. En un caché n-way (n > 1), el índice indica el conjunto en donde está el bloque. Hay que buscar el bloque dentro del conjunto comparando las etiquetas. En un caché fully, el bloque puede estar en cualquier parte. Hay que buscar el bloque en todo el caché comparando las etiquetas. Universidad de Sonora Arquitectura de Computadoras

Localizando un bloque Para mayor velocidad, las etiquetas se comparan en paralelo. Universidad de Sonora Arquitectura de Computadoras

Localizando un bloque Un caché de mapeo directo requiere un solo comparador. Universidad de Sonora Arquitectura de Computadoras

Localizando un bloque Un caché 4-way set associative requiere 4 comparadores. Universidad de Sonora Arquitectura de Computadoras

Que organización usar La selección entre mapeo directo, n-way set associative y fully associative depende de compromisos entre la tasa de fallas y el costo del hardware. Universidad de Sonora Arquitectura de Computadoras

Bloque a reemplazar En mapeo directo no hay elección. En set associative se escoge un bloque dentro del conjunto seleccionado. En fully associative cualquier bloque del caché es candidato a ser reemplazado. Una estrategia típica es LRU (least recently used block – el bloque menos usado recientemente). Universidad de Sonora Arquitectura de Computadoras

Bloque a reemplazar LRU se vuelve costoso para conjuntos con muchos bloques. Otra opción es aproximar LRU o usar una estrategia FIFO (first-in first-out – el primero que entra es el primero en salir). Una tercera opción es usar reemplazo aleatorio. Universidad de Sonora Arquitectura de Computadoras

Cachés multinivel Tener uno o mas niveles de cachés. Los sistemas de dos niveles son comunes. El caché de segundo nivel (L2) se accesa cuando hay una falla en el caché primario (L1). Si el caché L2 contiene el dato, el castigo por falla de L1 es el tiempo de acceso de L2 que es mucho menor que el tiempo de acceso a la memoria Si el dato no está en L1 ni en L2, se accesa la memoria y el castigo por falla es mayor. Universidad de Sonora Arquitectura de Computadoras

Ejemplo Se tiene una CPU con: Tiempo de acceso de memoria = 100 ns. CPI = 1.0 con caché perfecto (sin fallas). Velocidad de reloj = 5 GHz. Tiempo de acceso de memoria = 100 ns. Tasa de fallas del caché primario = 2%. ¿Qué tan rápido es el sistema si se agrega otro nivel de caché con tiempo de acceso de 5 ns y capaz de reducir la tasa de fallas a la memoria a 0.5%? Universidad de Sonora Arquitectura de Computadoras

Ejemplo El castigo por falla es: Para la memoria principal el castigo es: 100 ns / 0.2 ns = 500 ciclos. El CPI efectivo con un nivel de caché es: Para la CPU con un nivel de caché: 1.0 + 0.02 x 500 = 11.0 Universidad de Sonora Arquitectura de Computadoras

Ejemplo Con dos niveles de caché, una falla en el caché L1 se puede resolver por L2 o por la memoria. Si se resuelve en L2, el tiempo de acceso a L2 es el castigo por falla. En otro caso, el castigo por falla es la suma de los tiempos de acceso a L2 y a la memoria. El castigo por falla por un acceso a L2 es: 5 ns / 0.2 ns = 25 ciclos Universidad de Sonora Arquitectura de Computadoras

Ejemplo El CPI efectivo para un caché de dos niveles: Para la CPU con dos niveles de caché: 1.0 + 0.02 x 25 + 0.005 x 500 = 1 + 0.5 + 2.5 = 4 Por lo tanto, la CPU con dos niveles de caché es más rápido que la CPU con un nivel en: 11 / 4 = 2.75 Universidad de Sonora Arquitectura de Computadoras

Cachés multinivel Se introducen dos nuevos conceptos: Tasa de fallas global (global miss rate) es la fracción de referencias que fallan en todos los niveles. Tasa de fallas local (local miss rate) es la fracción de referencias que fallan en un nivel. El caché primario es mas pequeño y con menor tiempo de acceso que los secundarios. Universidad de Sonora Arquitectura de Computadoras

Cachés multinivel Valores típicos en 2012. Universidad de Sonora Arquitectura de Computadoras

Comparación Universidad de Sonora 17

Conclusión 4 preguntas en la jerarquía de memoria: ¿Dónde se puede poner un bloque? ¿Cómo se encuentra un bloque? ¿Qué bloque debe ser reemplazado si es necesario? ¿Qué pasa en una escritura? Universidad de Sonora Arquitectura de Computadoras

Conclusión Pregunta 1: ¿Dónde se puede poner un bloque? En mapeo directo en el lugar que le toque según su dirección. En n-way set associative en cualquier lugar dentro del conjunto que le toque. En fully associative en cualquier lugar del caché. Universidad de Sonora Arquitectura de Computadoras

Conclusión Pregunta 2: ¿Cómo se encuentra un bloque? En mapeo directo, buscando en la línea indicada por el índice y comparando las etiquetas. En n-way set associative, buscando en el conjunto indicado por el índice y comparando las etiquetas. En fully associative, buscando en todo el caché comparando etiquetas. Universidad de Sonora Arquitectura de Computadoras

Conclusión Pregunta 3: ¿Qué bloque debe ser reemplazado si es necesario? En mapeo directo no hay otra opción: el bloque nuevo reemplaza al anterior. Para n-way y fully: LRU (least recently used - menos usado recientemente). Aproximación LRU o FIFO (first-in first-out – el primero que entra es el primero en salir). Aleatorio. Universidad de Sonora Arquitectura de Computadoras

Conclusión Pregunta 4: ¿Qué pasa en una escritura? Si el dato está en el caché: Write-through: se escribe en el caché y en la memoria para evitar inconsistencias. Write-back: se escribe en el caché y la memoria se actualiza cuando el bloque va a ser reemplazado. Universidad de Sonora Arquitectura de Computadoras

Conclusión Si el dato no está en el cache: Write allocate: se actualiza la memoria y se carga el dato en el caché. No write allocate: se actualiza la memoria y no se carga el dato en el caché. Universidad de Sonora Arquitectura de Computadoras