Capítulo 4.- Multiprocesadores - Ejecicios

2
DEPARTAMENTO DE AUTOM ´ ATICA Arquitectura e Ingenier´ ıa de Computadores Ingenier´ ıa Inform´ atica Tema 4 Arquitecturas paralelas Problemas 1. Se tiene un sistema de dos procesadores con memoria compartida y cach´ es privadas de post- escritura como muestra la figura 1. Cada cach´ e tiene cuatro bloques y la memoria compartida est´ a dividida en ocho bloques. P0 P1 C memoria C Figura 1: Sistema de dos procesadores Todo el sistema est´ a controlado por un ´ unico reloj y la coherencia de las cach ´ es se asegura por un protocolo snoopy de tres estados en cada bloque (M, S, I). El procesador 0 tiene prioridad sobre el 1 en todos los conflictos. Todas las operaciones se realizan en un ciclo, excepto cuando se produce un fallo de cach´ e en lectura o escritura, en cuyo caso se necesita un ciclo de carga del bloque en cach´ e y un segundo ciclo desde el procesador a la cach´ e para la lectura o escritura del dato; en ninguno de los dos ciclos el otro procesador puede usar el bus. a) Dibujar la asignaci´ on de bloques de memoria principal a cach´ e en una estructura de asignaci´ on directa y en una estructura asociativa por conjuntos, de dos conjuntos. b) Sup´ ongase que, inicialmente, las cach´ es est´ an vac´ ıas y que se realizan accesos (la letra negrita indica escritura; el resto, lectura) a los siguientes bloques de memoria por parte de cada procesador: P0 0 0 0 1 1 4 3 3 5 5 5 P1 2 2 0 0 7 5 5 5 7 7 0 1

description

Arquitectura e ingenieria de computadoras, arquitecturas paralelas.

Transcript of Capítulo 4.- Multiprocesadores - Ejecicios

Page 1: Capítulo 4.- Multiprocesadores - Ejecicios

DEPARTAMENTO DE AUTOMATICA

Arquitectura e Ingenierıa de ComputadoresIngenierıa Informatica

Tema 4Arquitecturas paralelas

Problemas

1. Se tiene un sistema de dos procesadores con memoria compartida y caches privadas de post-escritura como muestra la figura 1. Cada cache tiene cuatro bloques y la memoria compartidaesta dividida en ocho bloques.

P0 P1

C

memoria

C

Figura 1: Sistema de dos procesadores

Todo el sistema esta controlado por un unico reloj y la coherencia de las caches se asegura porun protocolo snoopy de tres estados en cada bloque (M, S, I).

El procesador 0 tiene prioridad sobre el 1 en todos los conflictos. Todas las operaciones serealizan en un ciclo, excepto cuando se produce un fallo de cache en lectura o escritura, encuyo caso se necesita un ciclo de carga del bloque en cache y un segundo ciclo desde elprocesador a la cache para la lectura o escritura del dato; en ninguno de los dos ciclos el otroprocesador puede usar el bus.

a) Dibujar la asignacion de bloques de memoria principal a cache en una estructura deasignacion directa y en una estructura asociativa por conjuntos, de dos conjuntos.

b) Supongase que, inicialmente, las caches estan vacıas y que se realizan accesos (la letranegrita indica escritura; el resto, lectura) a los siguientes bloques de memoria por partede cada procesador:

P0 0 0 0 1 1 4 3 3 5 5 5P1 2 2 0 0 7 5 5 5 7 7 0

1

Page 2: Capítulo 4.- Multiprocesadores - Ejecicios

Representar la evolucion de la ejecucion en cada procesador manifestando el estado de losbloques de cache para una cache de acceso directo. El comienzo es simultaneo en los dosprocesadores. Supongase que las actualizaciones de bloques, cuando se hace referencia aellos por parte del otro procesador, se realizan automaticamente y sin perdida de tiempo.

2. Se tiene un sistema de tres procesadores con memoria compartida y caches privadas de post-escritura como muestra la figura 2. Cada cache tiene cuatro bloques y la memoria compartidaesta dividida en ocho bloques.

P0

C

memoria

P2

C

P1

C

Figura 2: Sistema de tres procesadores

Todo el sistema esta controlado por un unico reloj y la coherencia de las caches se asegura porun protocolo snoopy de tres estados en cada bloque (M, S, I).

El procesador 0 tiene prioridad sobre el 1 y este sobre el 2 en todos los conflictos. Todas lasoperaciones se realizan en un ciclo, excepto cuando se produce un fallo de cache en lectura oescritura, en cuyo caso se necesita un ciclo de carga del bloque en cache y un segundo ciclodesde el procesador a la cache para la lectura o escritura del dato; en ninguno de los dos cicloslos otros procesadores pueden usar el bus.

Supongase que, inicialmente, las caches estan vacıas y que se realizan accesos (la letra ne-grita indica escritura; el resto, lectura) a los siguientes bloques de memoria por parte de cadaprocesador:

P0 0 0 1 7 5 3P1 7 7 3 3 5 3P2 6 6 5 0 0 0

Representar la evolucion de la ejecucion en cada procesador manifestando el estado de losbloques de cache para una cache de acceso directo. El comienzo es simultaneo en los tresprocesadores. Supongase que las actualizaciones de bloques, cuando se hace referencia a ellospor parte del otro procesador, se realizan automaticamente y sin perdida de tiempo.

2