|
| |
Tópicos en Computación: Evaluación de Herramientas de Apoyo
al Desarrollo de Software Paralelo y Distribuido.
Objetivo
Al finalizar el curso los estudiantes conocerán diversas
herramientas de apoyo a la programación de aplicaciones paralelas y distribuidas. Además
se ejercitarán en la instalación y uso de algunas de ellas, las que hayan
seleccionado.
Actividades
El curso va a ser de orientación primordialmente práctica. La
actividad principal consistirá en la instalación, prueba y evaluación de diversas
herramientas de apoyo al desarrollo de programas distribuidos. La instalación de tales
herramientas se hará en alguna de las redes disponibles en el LDC o en el cluster de
Estaciones Pentium II que el Grupo de Sistemas Paralelos
y Distribuidos está adquiriendo.
Los estudiantes instalarán y evaluarán, en grupos de a 2, unas
dos herramientas durante el trimestre. Las herramientas que cada grupo eligirá estará en
relación con la experticia y área de interés de sus integrantes. Una vez que instalen y
estudien cada una de las herramientas seleccionadas, prepararán un tutorial corto y lo
presentarán al resto del curso. El tutorial deberá quedar en forma de página Web
sencilla. En consecuencia, al final del trimestre los estudiantes habrán aprendido a usar
dos herramientas con cierto nivel de profundidad y habrán tomado tutoriales del resto de
las herramientas, impartidos por compaņeros del curso.
Herramientas
Las actividades a ser distribuidas entre los estudiantes del
curso son:
- Instalación, entonación y evaluación de sistemas de operación
sobre un cluster de Estaciones Pentium II conectadas a través de una red de alta
velocidad llamada Myrinet de 1.28 Gbps. Se evaluarán diferentes versiones de Unix de
libre distribución como plataforma de cómputo, tales como como Linux y NetBSD. Asimismo
se instalarán módulos de comunicación (``device drivers'') que usen directamente los
adaptadores de red, evitando el ``overhead'' de TCP/IP. Estos módulos serán Fast
Messages y Active Messages.
- Instalación y evaluación de lenguajes y librerías de
comunicación para programación distribuida y paralela. En particular, se tiene el
lenguaje HPF (High Performance Fortran, en versiones shpf y Adaptor), la librería de
comunicación MPI (en versiones MPICH y LAM) y la librería de comunicaciones PVM.
- Instalación y evaluación de herramientas de apoyo a la
paralelización. Se tienen cuatro herramientas Hence, una herramienta para la
especificación visual de un programa paralelo, CAPtools, una herramienta de
paralelización semi-automática, Lebep, una herramienta para generación de esqueletos de
programas paralelos, y TotalView, un depurador ("debugger") de programas
paralelos.
- Instalación y evaluación de herramientas de apoyo al análisis
de desempeņo, como Pablo, un ambiente para instrumentación y análisis de datos de
desempeņo, y Paradyn, una herramienta que persigue los mismos objetivos pero soporta
instrumentación dinámica.
- Instalación y evaluación librerías de cómputo científico
paralelo y de alto desempeņo, como BLAS, LAPACK, SCALAPACK, PLAPACK.
Bibliografía
Requisitos
Haber pasado Redes de Computadoras o Sistemas de Operacion II o
haber tenido experiencia en el LDC (cualquiera de las tres alternativas).
Información
Para mayor información, ponerse en contacto con el Prof. Emilio Hernández o el Prof. Alejandro Teruel.
Última modificación realizada por Julio Rodríguez el día viernes 14 de enero de 2000
|