-
Asociatividad: La
asociatividad de una cache es el número de lugares en la cache donde
un bloque puede estar, a este tipo de cache se llamará cache
set-asociativa. En una cache con asociatividad n (cache n-asociativa)
hay n lugares posibles.
-
Cache de Columnas
Asociativas: Mejora la Cache Hash-Rehash agregando
un bit rehash, el cual usa para implementar reemplazos LRU aproximados
y para filtrar pruebas innecesarias. Una cache hash-rehash usa dos funciones
de mapeo para determinar las posiciones candidatas, usa búsqueda
secuencial. Trata de mantener los bloques MRU en la primera posición
para referencias usando swapping, examinando la segunda posición
solo si la primera fue una falla. Si la segunda posición es
un acierto, el sistema cambia los contenidos en las dos posiciones (swap)
porque la segunda posición ahora contiene el bloque MRU. Si la segunda
prueba es una falla, el sistema mueve los datos en la priemra posición
hacia la segunda posición y coloca el nuevo bloque traído
en la primera posición. En la cache de columnas asociativas, cada
posición tiene asociado un bit rehash que indica si es una
posición rehashed. El sistema setea el bit rehash para una
posición, marcandolo como una posición rehashed, cuando el
sistema la prueba en segundo lugar en una referencia. La cache de columnas
asociativas difiere en su operación con el cache hash-rehash solo
cuando el bit rehash de la primera posición esta seteado, lo que
significa que los los dos bloques en el set no están usados para
la referencia actual. En este caso, el sistema no prueba la segunda posición,
y reemplaza el block en la primera posición con el block recientemente
traído y borra el bit rehash.
-
Costo por Error:
Es el tiempo requerido para responder una referencia cuando el dato no
se encuentra en la cache y debe buscarse en la memoria.
-
Posición
Candidata: Es un lugar en una cache donde un bloque puede
residir. Esta definición no restringe como determinar la localidad
o como buscarla para la información buscada cuando se responde una
referencia
-
Swapping: Este enfoque
determina el orden de búsqueda estáticamente. Usa un orden
fijo y asume que el bloque usado más recientemente esta en la posición
0, el segundo bloque usado está en la posición 1, y así
en adelante. Realizando cambios apropiados después de cada referencia
puede garantizar el orden correcto. Este enfoque es impracticable para
una asociatividad mayor que dos si un orden completo va a ser mantenido.
Para reducir la complejidad y el costo, se puede simplificar el enfoque
de la búsqueda de manera que sólo busque las posiciones más
importantes en un estricto orden de importancia. Entonces puede buscar
las posiciones restantes en un orden arbitrario, esto si la degradación
de la performance que la búsqueda causa es aceptable.
-
Tiempo Promedio
de Acceso: Es el promedio de ciclos requeridos
para completar una referencia.
Volver al índice
|