Memoria cache

31
MEMORIA CACHE

description

Memoria cache. La palabra Caché procede de la voz inglesa  cache  (/ kæʃ /; «escondite secreto para guardar mercancías, habitualmente de contrabando» ) y esta a su vez de la francesa  cache , (/ kaʃ /; «escondrijo o escondite»). ¿Qué es?. - PowerPoint PPT Presentation

Transcript of Memoria cache

Page 1: Memoria cache

MEMORIA CACHE

Page 2: Memoria cache

La palabra Caché procede de la voz inglesa cache (/kæʃ/; «escondite secreto para guardar mercancías, habitualmente de contrabando» ) y esta a su vez de la francesa cache, (/kaʃ/; «escondrijo o escondite»).

Page 3: Memoria cache

¿Qué es?

Una caché es un conjunto de datos duplicados de otros originales, con la propiedad de que los datos originales son costosos de acceder, normalmente en tiempo, respecto a la copia en la caché.

Page 4: Memoria cache

Su Uso

Se pretende con la cache que los procesadores reduzcan el tiempo necesario para acceder a los datos guardados en la memoria. Los datos que se van a copiar dependen del procesador y la cache.1. Búsqueda en cache.2. Hit ?3. Se realiza operación.

Page 5: Memoria cache

Tipos Memoria cache interna - L1 (Se encuentra dentro del núcleo) - L2 (En el procesador) - L3 (En placa base) - Memoria de disco Memoria cache Externa

VELO

CID

AD

TAM

O

Page 6: Memoria cache

Historia El primer procesador que vino con

memoria caché L2 fue el Pentium Pro en 1995 , su capacidad fue de 256 KB.

Con la introducción del Pentium II. Una ranura para un módulo de memoria caché dedicada fue plantado en el procesador

Sin embargo, fue desde la segunda generación de los procesadores Pentium III que la memoria caché se encontró dentro del procesador como tal.

Page 7: Memoria cache

Tipos de Políticas

Política de Ubicación Política de Reemplazo Política de Extracción Política de Actualización

Page 8: Memoria cache

Política de reemplazo

Determina qué bloque de memoria caché debe abandonarla cuando no existe espacio disponible para un bloque entrante. Básicamente hay cuatro políticas que son:

Page 9: Memoria cache

Tipos de Política de Reemplazo

Aleatoria: El bloque es reemplazado de forma aleatoria.

FIFO: Se usa un algoritmo First In First Out Menos recientemente usado (LRU): Se

sustituye el bloque que hace más tiempo que no se ha usado en la cache.

Menos frecuencias usadas (LFU): Se sustituye el bloque que ha experimentado menos referencias.

Page 10: Memoria cache

Políticas de actualización

Determinan el instante en que se actualiza la información en Memoria principal cuando se produce una escritura en Memoria caché

Page 11: Memoria cache

Tipos de Políticas de actualización 1)Escritura Inmediata 2)Escritura Aplazada

Page 12: Memoria cache

1)Escritura inmediata-Write through-Se escribe a la vez en Memoria caché y

Memoria principal  

-Ventajas:Asegura la consistencia en sistemas mono-procesadores

  --Inconvenientes:

El procesador tiene que esperar (La diferencia entre los tiempos de escritura en Memoria caché y Memoria principal) para que se complete la escritura.

  --Solución:

Usar un buffer de escritura

Page 13: Memoria cache

2)Escritura aplazada post-escritura –Writeback- Actualiza únicamente la Memoria caché. --Ventajas:-Produce menos tráfico de información en la Memoria principal-Los accesos de escritura, en caso de acierto, se llevan a cabo a la

velocidad de la Memoria caché--Inconvenientes:-El diseño es más complejo, debido a que es necesario implementar el

control del dirty bit.-Desde el punto de vista de los posibles fallos hardware transitorios de

la Memoria caché , es preferible la utilización de la escritura inmediata.

 --Soluciones:Existen dos formas de actuar en el caso en que un acceso de escritura

produce fallo:

Escritura con ubicación Escritura sin ubicación

Page 14: Memoria cache

Decide dónde debe colocarse un bloque de memoria principal que entra en la memoria cache. Las más utilizadas son:

Políticas de Ubicación

1) Directa2) Asociativa3) Asociativa por Conjuntos

Page 15: Memoria cache

Al bloque i-ésimo deMemoria principal lecorresponde la posición i módulo n,donde n es el número debloques de la memoriacache.

1)Ubicación Directa

Page 16: Memoria cache

Económico, acceso rápido (utilizado en caches internas), el bloque está disponible antes de terminar la comparación.

Mayor razón de desaciertos por competencia por bloque específico.

Ventajas y Desventajas

Page 17: Memoria cache

2)Ubicación AsociativaCualquier bloque dememoria principalpuede ir en cualquierade los n bloques de lamemoria cache.

Page 18: Memoria cache

Acceso más lento, dato no disponible hasta saber si acceso fue acierto o desacierto (etapa de comparación y multiplexión).

Menor tasa de desaciertos por competencia por bloque

Más caro (muchos comparadores).

Ventajas y Desventajas

Page 19: Memoria cache

La memoria caché se divide en k conjuntos de bloques, así al bloque i-ésimo de memoria principal le corresponde el conjunto i módulo k. Dicho bloque de memoria podrá ubicarse en cualquier posición de ese conjunto.

2)Ubicación Asociativa Por Conjuntos

Page 20: Memoria cache

Cada de bloquememoria puede ser ubicado en uno de N bloques del cache (conjuntos deN bloques).

Cada bloque dememoria tieneasociado unconjunto específico

Page 21: Memoria cache

• Más económico que caché completamente asociativo, pero más caro que caché directo.

• Dato disponible después de etapa de comparación y multiplexión.

Ventajas y Desventajas

Page 22: Memoria cache

La dirección se descompone en varios campos:

• Etiqueta (tag): se utiliza para comparar la dirección requerida por la CPU con aquellos bloques que pueden contener la información deseada (búsqueda en paralelo de etiquetas)

• Índice (index): se usa para seleccionar el conjunto, en el caso de las asociativas por conjunto, o el bloque en las de mapeado directo (conjuntos de una vía). No existe para las completamente asociativas

• Desplazamiento de bloque (block offset): selecciona el dato deseado dentro del bloque

Page 23: Memoria cache

Implementación Caché Asociativo por Conjuntos

Page 24: Memoria cache

Políticas de extracción La política de extracción determina cuándo y

qué bloque de memoria principal hay que traer a memoria cache. Existen dos políticas muy extendidas:

Por DemandaCon Prebúsqueda

Page 25: Memoria cache

Por Demanda: Un bloque sólo se trae a memoria cache

cuando ha sido referenciado y se produzca un fallo.

Cuando se referencia el bloque i-ésimo de memoria principal, se trae además el bloque (i+1)-esimo. Esta política se basa en la propiedad de localidad espacial de los programas.

Con Prebúsqueda:

Page 26: Memoria cache

Mejoras de desempeño Un procesador rápido no es suficiente

para aumentar el desempeño si el acceso a la memoria es muy lento.

Es por eso que en la actualidad se buscan estrategias para disminuir el tiempo de “viaje” de los datos.

La memoria caché es una de estas estrategias, y ha sido tan exitosa que se siguen buscando formas de aumentar la capacidad del caché.

Page 27: Memoria cache

La estrategia “Multicore”

Una de las estrategias más usadas actualmente es la de incluír más núcleos de procesamiento dentro del mismo chip.

Esto le permite al procesador realizar más de un proceso de forma simultanea, aumentando el rendimiento sin necesidad de consumir más energía.

Page 28: Memoria cache

Memoria Caché en procesadores Multicore Cada núcleo tiene su propia caché de

nivel 1, lo cual le permite seguir accediendo a los datos de una forma muy rápida.

Existen dos estrategias para la implementación de la caché de nivel 2:Cada núcleo tiene su propio espacio reservado

de la caché L2. (Usado principalmente por AMD)

La totalidad de la caché L2 está disponible para el núcleo que la necesite(Usado principalmente por Intel)

Page 29: Memoria cache

Conclusiones La memoria caché mejora el

desempeño general de un sistema al guardar información de los procesos más utilizados.

Aumentar el tamaño de la memoria caché solo es eficiente hasta cierto punto, pues aunque se puedan guardar muchos datos, si estos no se usan con cierta frecuencia, no hay una mejora real en la velocidad de procesamiento.

Page 30: Memoria cache

Conclusiones

El caché es hasta 6 veces más rápido que la DRAM

Entre mayor sea la tasa de aciertos que hace la memoria caché, mejor será el rendimiento del procesador.

Page 31: Memoria cache

Bibliografía es.wikipedia.org/wiki/Cache www.configurarequipos.com/doc585.ht

ml www.monografias.com › Computacion

 › Hardware www.conozcasuhardware.com/.../mem

cache.htm www.mailxmail.com/curso.../memoria-

cache  www.minambiente.gov.co/.../5468_050

510_anexo_7_taller_pnb_comun_base.pdf

http://www.conozcasuhardware.com/