PRÁCTICA DE SISTEMAS MULTIPROCESADORES

Anuncio
PRÁCTICA DE SISTEMAS MULTIPROCESADORES
Introduccción
El campo de la arquitectura de ordenadores es cada vez mas cuantitativo. A la hora de
introduccir una nueva característica en el diseño de un sistema es necesario realizar una detallada
evaluación previa de las ventajas e inconvenientes. Una vez que los sistemas están construidos,
deben evaluarse para poder ser comparados tanto por los usuarios a la hora de determinar su
adquisición como por los arquitectos para comprender el impacto de las decisiones que se tomaron.
Dada la complejidad de los sistemas actuales, el mejor método, y a veces el único, que tenemos
para evaluar las prestaciones de un sistema o el impacto de una decisión de diseño es la utilización
de cargas de trabajo que se ejecutan o simulan sobre los sistemas bajo estudio. En el caso de los
Sistemas Multiprocesador una de las cargas de trabajo que más se utilizan cuando estamos
interesados en evaluar el sistema para la resolución de problemas paralelizables es el SPLASH-2.
El objetivo de esta práctica es utilizar algunos de los programas que aparecen en este bechmark para
evaluar el impacto de algunas de las decisiones de diseño que se toman en un sistema
multiprocesador (tamaño de la caché, tamaño de la línea, número de procesadores, etc). Las
aplicaciones que utilizaremos son la LU, la FFT y el OCEAN . También se nos pedirá desarrollar
una p equeña aplicación p aralela qu e implemente el nú cleo de resolución d e ecuaciones
diferenciales parciales mediante el método de diferencias finitas (ver página 92 y siguientes del
libro “Parallel Computer Architecture” de David Culler) utilizando la ordenación red-black.
Todas estas aplicaciones se ejecutarán bajo un simulador denominado LIMES que implementa un
sistema SMP utilizando dos protocolos de coherencia de caché: el MESI y el Dragon. A partir de
los resultados que obtengamos para diferentes configuraciones se intentará determinar que
protocolo tiene un mejor comportamiento, así como las causas de dicho comportamiento.
Enunciado de la práctica
a) Utilizando el simulador LIMES obtener el speedup algorítmico de las tres aplicaciones:
LU, FFT y OCEAN, en función del número de procesadores para un tamaño de problema
mediano utilizando el modelo de escalamiento de tamaño de problema fijo (PC), tiempo
de ejecución fijo (TC) y utilización de la memoria fija (MC). (Por problema mediano
entendemos aquel que tiene un tiempo de simulación razonable incluso para el peor
modelo de escalamiento posible).
b) Comparar el speedup obtenido en el apartado anterior con el que se obtiene cuando se
tiene en cuenta el coste del protocolo de coherencia de caché para los dos protocolos bajo
estudio.
c) Determinar el tamaño de los conjuntos de trabajo para las tres aplicaciones antes
mencionadas para una ejecución con 4 procesadores y un tamaño de problema mediano.
d) Implementar la aplicación paralela de núcleo de resolución de ecuaciones mediante la
ordenación red-black, determinar el speedu-up ideal y real bajo los dos protocolos, así
como el escalamiento de la misma bajo los tres modelos antes comentados. Determinar el
tamaño de los conjuntos de trabajo para una ejecución con 8 procesadores.
e) Comparar ambos protocolos teniendo en consideración factores tales como el número de
procesadores (1-16), tamaño de la caché (8K-512K) y el tamaño de la línea (16-256
bytes), utilizando el modelo de escalamiento de tamaño de problema fijo y las 4
aplicaciones paralelas que has implementado.
f) Modificar la aplicación del núcleo de resolución de ecuaciones para permitir elegir si el
recorrido se quiere realizar por filas o columnos (opción -f y -c) y para introducir la
técnico del procesamiento por bloques (opción -bN). Determinar como afecta al
rendimiento de la aplicación el tiempo de recorrido que se realiza. Para ello realiza las
simulaciones que consideres opoturnas para diferentes configuraciones de la máquina y
analizando el recorrido por filas, por columnas, por filas para un tamaño de bloque de 8x8
y por columnas para ese mismo tamaño de bloque.
Documentación a entregar
La documentación a presentar será un boletín de la práctica en donde se comenten los
resultados obtenidos en cada uno de los apartados, valorando aquellos aspectos que consideres más
interesantes. La documentación incluirá un anexo con el código fuente de la aplicación que se os
pide implementar, así como una indicación de las opiciones de funcionamiento de dicha aplicación.
También se me enviará a través de un correo a mi dirección: [email protected] un fichero tgz con el
código de la aplicación realizada así como los ficheros con el volcado de las simulaciones
realizadas. El subject del correo deberá indicar “Prácticas de SMP”
La fecha de entrega máxima de esta práctica es el viernes 16 de enero de 2004.
Descargar