Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
memoria
Arquitectura II Equipo: 2
Integrantes:
Cruz Cruz Uriel
Cervantes Hernández Luis Angel
Godínez Robles Roberto
Hernández Miranda Carlos Daniel
Hernández Jiménez Dilan Enrique
Modelos de memoria
Modelo intuitivo de memoria
• Programa secuencial
Las posiciones de memoria se utilizan para “comunicar valores” entre distintas puntos
del programa. Cuando se lee una posición se devuelve el último valor escrito en ella
• Espacio de direcciones compartido en sistemas con un único procesador (
Multiprogramación )
Cuando se lee una posición se devuelve el último valor escrito en ella,
independientemente del proceso (thread) que realizó la última escritura sobre dicha
posición
Las caches no interfieren con el uso de múltiples procesos ( threads ) en un
procesador, ya que todos ellos ven la memoria a través de la misma jerarquía
• Multiprocesadores de Memoria Compartida
Objetivo: Nos gustaría que el resultado de ejecutar un programa que usa varios
procesos (threads) sea el mismo independientemente de si los procesos se ejecutan
en paralelo (multiprocesadores) o de forma entrelazada (uniprocesador
multiprogramado).
Problema: Cuando dos o más procesos acceden a la memoria a través de caches
diferentes existe el peligro de que vean valores inconsistentes
Tipos de consistencia de memoria
Consistencia estricta
Consistencia secuencial: define el orden de accesos a memoria en términos del
orden impuesto por el programa fuente.
1. Consistencia causal
2. Consistencia PRAM (Pipelined RAM) Partial Storage Ordering ( PSO )
3. Consistencia de caché ( coherencia )
Condiciones de preservación
2. Luego de emitir una operación de escritura, el proceso que la emitió espera que se
haya realizado la escritura en la memoria antes de emitir su siguiente operación
(lectura de la misma posición o nueva escritura)
Después de emitir una operación de lectura, el proceso que la emitió espera a que la
lectura se haya completado, y espera también que se complete la escritura que generó el
valor devuelto por la lectura, antes de emitir su siguiente operación (el procesador debe
esperar a que la escritura se haya realizado respecto a todos los procesadores , o sea,
sea vista por todos)
Ordenaciones exigibles al modelo
2. R → W: Una lectura seguida de una escritura. Siempre se preserva si las operaciones se realizan
sobre una misma dirección (anti dependencia)
4. W → R: Una escritura seguida de una lectura. Siempre se preserva si las operaciones se realizan
sobre una misma dirección (dependencia verdadera)
Tipos de consistencia de memoria
•Los modelos “relajados “permiten relajar una o más de las ordenaciones respecto al
modelo de consistencia secuencial
•Relajar una ordenación significa permitir la finalización anticipada de una operación
por parte de un procesador.
Ejemplo: Relajar la ordenación W → R implica permitir que la lectura termine antes que la
escritura de la cual depende
(En un entorno multiprocesador, una escritura no se completa hasta que se han completado todas las
invalidaciones a todas las caché del sistema)
• La coherencia no dice nada acerca del orden de las lecturas relativo al orden de las
escrituras correspondientes a distintas localizaciones
Un sistema de memoria es coherente si: