Técnicas para reducir fallos
Existen diversas técnicas para reducir esos fallos en la caché:
- Incrementar el tamaño del bloque. Ventajas: Se reducen los fallos forzosos como sugiere el principio de localidad espacial. Inconvenientes: Aumentan los fallos por conflicto al reducirse el número de bloques de la caché y los fallos de capacidad si la caché es pequeña.
- Incremento de la asociatividad. Ventajas: Se reducen los fallos por conflicto. Inconvenientes: Aumenta el tiempo de acceso medio al incrementarse el tiempo de acierto.
- Caché víctima. Consiste en añadir una pequeña caché totalmente asociativa, para almacenar bloques descartados por fallos de capacidad o conflicto. En caso de fallo, antes de acceder a la memoria principal se accede a esta caché. Si el bloque buscado se encuentra en ella se intercambian los bloques de ambas cachés.
- Optimización del compilador. El compilador re-ordena el código de manera que por la forma en cómo se hacen los accesos se reducen los fallos de caché.
No hay comentarios:
Publicar un comentario