1 / 31

Memoria cache

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?.

lucas
Download Presentation

Memoria cache

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Memoria cache

  2. 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»).

  3. ¿Qué es? Unacaché 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é.

  4. 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. • Búsqueda en cache. • Hit ? 3. Se realiza operación.

  5. 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 TAMAÑO VELOCIDAD

  6. 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.

  7. Tipos de Políticas • Política de Ubicación • Política de Reemplazo • Política de Extracción • Política de Actualización

  8. 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:

  9. Tipos de Política de Reemplazo • Aleatoria: El bloque es reemplazado de forma aleatoria. • FIFO: Se usa un algoritmo First In FirstOut • 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.

  10. 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é

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

  12. 1)Escritura inmediata -Writethrough-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

  13. 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

  14. Políticas de Ubicación Decide dónde debe colocarse un bloque de memoria principal que entra en la memoria cache. Las más utilizadas son: • Directa • Asociativa • Asociativa por Conjuntos

  15. 1)Ubicación Directa Al bloque i-ésimode Memoria principal le corresponde la posicióni módulo n, donde n es el número de bloques de la memoria cache.

  16. Ventajas y Desventajas • 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.

  17. 2)Ubicación Asociativa Cualquier bloque de memoria principal puede ir en cualquiera de los n bloques de la memoria cache.

  18. Ventajas y Desventajas • 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).

  19. 2)Ubicación Asociativa Por Conjuntos 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.

  20. Cada de bloque memoria puede ser ubicado en uno de N bloques del cache (conjuntos de N bloques). Cada bloque de memoria tiene asociado un conjunto específico

  21. Ventajas y Desventajas • 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.

  22. La dirección se descompone en varios campos: • Etiqueta (tag): se utiliza para comparar la dirección requerida por laCPU 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 lasasociativas 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 deseadodentro del bloque

  23. Implementación Caché Asociativo por Conjuntos

  24. 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 Demanda • Con Prebúsqueda

  25. 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:

  26. 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é.

  27. 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.

  28. 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)

  29. 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.

  30. 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.

  31. Bibliografía • es.wikipedia.org/wiki/Cache • www.configurarequipos.com/doc585.html • www.monografias.com › Computacion › Hardware • www.conozcasuhardware.com/.../memcache.htm • www.mailxmail.com/curso.../memoria-cache • www.minambiente.gov.co/.../5468_050510_anexo_7_taller_pnb_comun_base.pdf • http://www.conozcasuhardware.com/

More Related