Principal Objetivos Equipo Bitácora Prototipos Foro  Contáctenos
Menú Principal
· Principal
· Objetivos
· Equipo
· Bitácora
· Prototipos
· Foro
· Contáctenos
· Links (Enlaces)

aa

 

 

 

Objetivos del Proyecto MPI.NET

El objetivo general del proyecto consiste en posibilitar la utilización de funciones para procesamiento paralelo y distribuido que otorga MPI, de modo que puedan ser utilizadas desde programas desarrollados en diferentes lenguajes utilizando la tecnología .NET.

La interfaz estándar ofrecida por la biblioteca MPI contempla únicamente el uso de las funciones para programación paralela y distribuida desde los lenguajes C y FORTRAN.

Utilizando mecanismos de exportación de clases a través de el ambiente .NET, este proyecto propone la utilización de MPI desde lenguajes soportados por .NET de modo que las técnicas de procesamiento paralelo puedan utilizarse desde programas desarrollados en esos lenguajes.

Para lograr el objetivo mencionado, deberán encapsularse en clases las primitivas básicas de comunicación de la biblioteca MPI ( envío de mensajes, recepción de mensajes bloqueante y no bloqueante, primitivas de comunicación colectivas ) y las primitivas de sincronización de procesos y reducción de resultados  de modo de posibilitar su uso desde programas remotos.

Complementariamente, se deberá instrumentar un mecanismo que posibilite la distribución del código paralelo a ejecutar en los diferentes nodos de la máquina virtual, que pueden estar en diferentes redes.

Para lograr este objetivo, existen dos enfoques que deberán evaluarse con el fin de implementar al menos uno de ellos.

El primer enfoque consiste en el diseño de un mecanismo de distribución de código basado en suscripción a un servicio web que permita copiar el código distribuído en redes remotas. Esta solución se basa en una idea bastante habitual en las plataformas que ofrecen la posibilidad de ejecución de procesos remotos.

La alternativa consiste implementar una primitiva de creación de procesos para que se encargue de la distribución del Código Intermedio a nativizar en el equipo remoto. Esta alternativa intenta aprovechar al máximo las potencialidades del entorno de ejecución que ofrece .NET.

El testeo de la modificación implementada se realizará diseñando programas que utilicen las funciones de MPI exportadas, utilizando técnicas de programación paralela y distribuida en lenguajes que no lo soporten.

Objetivos específicos

Las tareas a realizar por parte de los estudiantes durante el desarrollo del proyecto involucrarán:

Ø Comprensión del modelo de programación distribuida.
Ø Comprensión de la tecnología .NET y su entorno de programación.
Ø Introducción al funcionamiento de la máquina paralela virtual.
Ø Modificación de primitivas MPI para comunicación entre procesos.
Ø Modificación de primitivas MPI para  sincronización y reducción de resultados.
Ø Análisis comparativo de las propuestas para implementar la distribución de código (servicio web vs. primitiva de creación de procesos).
Ø Implementación del mecanismo de distribución de código.
Ø Testeo de funcionamiento de las modificaciones.
Ø Elaboración de informe final y artículo de síntesis.

 

Alcance y productos

El proyecto forma parte del proceso de desarrollo del área de procesamiento de alta performance en aplicaciones comerciales e industriales utilizando computadoras de bajo costo en curso en el UAS.

El entorno de trabajo estará conformado por un conjunto de computadores con sistema operativo Windows NT o Windows 2000, interconectados por una red de área Ethernet de 10 Mbits, que constituyen la Máquina Paralela Virtual de la Institución. 

Como producto final resultará una biblioteca de desarrollo de programas distribuidos MPI, modificada para permitir la invocación de funciones desde varios lenguajes a través de la plataforma .NET

 

Importancia de la propuesta

En lo referente a la formación de los estudiantes, la propuesta apunta a familiarizarlos con valiosas tecnologías emergentes y consolidadas:

Ø Técnicas de procesamiento paralelo y distribuido.
Ø Operativa de una arquitectura novedosa para el medio (máquina paralela virtual formada por una red de PCs en LAN).
Ø Tecnología Microsoft .NET
Ø Programación distribuida en Redes Locales e Internet.

De esta manera el proyecto se orienta hacia la consolidación de conocimientos adquiridos a lo largo de la carrera en las áreas de programación, arquitectura de sistemas, sistemas operativos e ingeniería de software, mediante la realización de un proyecto enmarcado en la conjunción de áreas innovadoras y de importante crecimiento en la actualidad académica y comercial.

Como un objetivo secundario de este trabajo, se encuentra la utilización y testeo de funcionamiento de la máquina paralela, constituyendo el primer proyecto de resolución de un problema mediante las técnicas de programación paralela y distribuida llevado a cabo en la Institución.

Complementariamente, se intenta dar un impulso a la creación de un grupo de trabajo en el área de procesamiento paralelo.

La importancia del área en el medio está ratificada por la demanda creciente de las tecnologías que permiten la ejecución optimizada de aplicaciones con grandes demanda de procesamiento, en particular, aquellas soluciones que involucran componentes de bajo costo como es el caso de computadoras personales conectadas en red.

Complementariamente a la atención del docente tutor, el proyecto involucra la capacitación formal en los temas de Procesamiento Paralelo y Distribuido, y capacitación en el ambiente de desarrollo .NET (a través de un curso por parte de personal de Microsoft).

 

 

Auspiciado por



 

Hosting


Facultad de Ingeniería

 

 


© Copyright 2002, Proyecto MPI.NET. Todos los derechos reservados
Aviso Legal