Arquitecturas Paralelas Examen 19 enero 2009

Facultad de Informática, UPV Dpto. de Arquitectura y Tecnología de Computadores Arquitecturas Paralelas Examen 19 – enero – 2009 Apellidos: Grupo:

0 downloads 148 Views 153KB Size

Recommend Stories


Tema 4.-INTRODUCCION A LAS ARQUITECTURAS PARALELAS
Sistemas de Multiprocesamiento PROCESADORES AVANZADOS Parte 2.- SISTEMAS PARALELOS Tema 4.-INTRODUCCION A LAS ARQUITECTURAS PARALELAS Anexo 2.- PROC

Examen neurológico (19-Oct-2001)
In: Clinical Neurology in Small Animals - Localization, Diagnosis and Treatment, K.G. Braund (Ed.) Publisher: International Veterinary Information Ser

LEY 1438 DE 19 DE ENERO DE 2011 (Enero 19)
LEY 1438 DE 19 DE ENERO DE 2011 (Enero 19) Por medio de la cual se reforma el sistema general de seguridad social en salud y se dictan otras disposici

Story Transcript

Facultad de Informática, UPV Dpto. de Arquitectura y Tecnología de Computadores

Arquitecturas Paralelas Examen

19 – enero – 2009

Apellidos:

Grupo:

Nombre:

Firma:

1

2

3

4

5

6

7

8

9

10

11

12

13

El examen consta de dos partes (t. total: 2:45 h + 1 h). La primera parte es obligatoria (26 puntos en total) y la asignatura se aprueba sacando al menos 13 puntos; la nota máxima de esa parte es un 8. La segunda parte es optativa, y se evalúa en 2,5 puntos, pero sólo si en la primera parte se obtienen al menos 17 de los 26 puntos.

1ª parte

11 ejercicios — 2:45 h — 26 puntos

1. (3 p.) Un computador vectorial tiene las siguientes características: encadenamiento de instrucciones; 2 buses para acceder a memoria; registros vectoriales de 256 elementos; frecuencia de reloj de 666 MHz. a. Completa la siguiente tabla indicando los principales momentos (ciclos) en la ejecución del programa vectorial indicado. No tengas en cuenta los conflictos en el acceso a los módulos de memoria. El esquema de segmentación de las instrucciones es: [ B/D - L - AM - M (6 ciclos) - E ] para las instrucciones de memoria, y [ B/D - L - A (+, 2 ciclos; *, 3 ciclos) - E ] para la suma y el producto. t. inicio

LV

V1,A(R1)

SV

B(R1),V1

MULV

V2,V1,V1

lat. UF.

dato 1

dato N

ADDVI V3,V2,#1.0 SV

A(R1),V3

b.

Sin rehacer los cálculos, ¿de qué orden sería el tiempo de ejecución si sólo hubiera un bus? ¿Y si hubiera tres buses pero las instrucciones no se encadenaran? Justifica tus respuestas.

c.

Los vectores A y B son de 100 elementos. ¿Qué velocidad de cálculo (en MF/s) se consigue al ejecutar el programa anterior? ¿Qué fracción (%) representa esa velocidad del máximo teórico posible si los vectores fueran muy grandes?

2. (3 p.) Dibuja el grafo de dependencias de este bucle, y, si es posible, escribe el código vectorial completo para el mismo. k = 4 do i = 1, 100 (1) A(i) = A(i) + 3 (2) B(i) = A(i+1) + A(i) (3) C(i) = A(i-1)+ B(k) k = k + 2 enddo

3. (3 p.) Una máquina SMP de 4 procesadores mantiene la coherencia de los datos mediante un snoopy y un protocolo de invalidación tipo MESI. En un momento dado de la ejecución de una aplicación paralela de memoria compartida, los procesadores acceden a la variable A, cuyo valor inicial es 20 y que no se encuentra en ninguna de las caches del sistema, en el siguiente orden: P1: LD R1,A; a.

P2: ST A,#5;

P0: LD R2,A;

Para cada una de las cuatro referencias, indica cómo se resuelve, las señales de control y el tráfico de datos que se genera, y el valor de A y el estado final del bloque de datos que la contiene en las cuatro caches y en memoria principal. MC0 inicio

b.

P3: LD R1,A;

MC1

MC2

MC3

MP A=20

Señ. Control

Tráf. datos

Sin rehacer el ejercicio, indica qué cambios habría en relación con el caso anterior si el protocolo de coherencia fuera de tipo MOESI.

4. (1 p.) En una máquina SMP de 16 procesadores se dispone de instrucciones Test&Set para operaciones de sincronización. Una determinada aplicación requiere utilizar una sección crítica que sabemos se va a ejecutar frecuentemente. Escribe código para las funciones que protegen la sección crítica (lock y unlock) de la manera más eficiente posible. Explica las ventajas para este caso del código que propones.

5. (3 p.) Se va a ejecutar este programa entre los 8 procesadores de una máquina SMP: suma = 0; for (i=0; i

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.