next up previous contents
Next: Máquina Virtual Frente a Up: Bibliotecas de Programación Paralela Previous: Message Passing Interface   Índice General

Portabilidad Frente a Interoperabilidad

La interfaz de MPI fue diseñada de forma que recogiera las características de diferentes bibliotecas de paso de mensajes desarrolladas por diferentes fabricantes de MPP y clusters de ordenadores, de forma que las aplicaciones se pudieran ejecutar en cualquier tipo de sistema.

Así, la portabilidad de MPI se refiere a que un programa escrito para una determinada arquitectura se puede compilar y ejecutar en otra arquitectura sin modificación alguna.

PVM tiene este nivel de portabilidad (los programas pueden ser compilados y ejecutados en diferentes arquitecturas sin tener que realizar modificaciones), al tiempo que hace que las aplicaciones sean interoperativas.

Mientras que el estándar MPI no prohibe esa interoperación heterogénea, no la especifica en el sentido de requerirla.

Esa falta de flexibilidad tiene que ver con la decisión hecha en el diseño de la interfaz para dar prioridad a la eficiencia. La forma más eficiente de llevar a cabo el paso de mensajes en una arquitectura dada es utilizar el hardware disponible y eliminar librerías y programas intermedios innecesarios. Sin embargo, realizar esas operaciones en otras arquitecturas que no disponen de esas funciones hardware es más difícil.

La solución de PVM para este problema es sacrificar cierta eficiencia en favor de la flexibilidad para comunicar diferentes arquitecturas. Así, al comunicar procesos localmente o en máquinas de idéntica arquitectura, PVM usa las funciones nativas tal y como hace MPI; mientras que entre diferentes arquitecturas, PVM usa las funciones estándar definidas.


next up previous contents
Next: Máquina Virtual Frente a Up: Bibliotecas de Programación Paralela Previous: Message Passing Interface   Índice General
Francisco Javier Garcia Castellano
2000-12-14