You are on page 1of 16

SEMINARIO E.D.

S
DOS TPICOS

S4010 ON-LINE
PVM: Parallel Virtual Machine

S4010 ON-LINE
Dentro del proyecto Universidad Virtual. Objetivos bsicos:
Contenidos, talleres, ejercicios, problemas, evaluaciones on-line (en la WEB).

Modelo para implementar on-line otros cursos. Extensin, educacin continuada.

S4010 ON-LINE
Trabajo efectuado hasta ahora:
Unificacin de contenidos Documentacin bsica en internet
http://perseus.unalmed.edu.co/~walvarem www.minas.unalmed.edu.co/cursos/Algoritmos

Diseo diapositivas y talleres. Ejemplos y problemas. Diseo quices interactivos.

S4010 ON-LINE

Perspectivas:
Rediseo orientado ON-LINE:
Rediseo pgina WEB.

Tutores de contenidos
Manuales: papel, formato electrnico

Proceso evaluacin: Mezcla de presencial y on-line Ejemploteca, problemateca...

PVM: Parallel Virtual Machine


PVM es un software que permite:
Un conjunto heterogneo de computadores Sea utilizado en forma coherente y flexible Como un recurso computacional concurrente.

Un solo PC o una red de PCs

PVM: Parallel Virtual Machine


Los computadores individuales pueden ser:
Multiprocesadores de memoria local o memoria compartida. Supercomputadores vectoriales Mquinas grficas especializadas. Estaciones de trabajo escalares.

Interconectados por una variedad de redes, tales como ethernet y FDDI

PVM: Parallel Virtual Machine


Los programas del usuario pueden estar escritos en:
C C++ FORTRAN

El acceso es a travs de rutinas de librera (libpvm3.a, libfpvm3.a)

PVM: Parallel Virtual Machine


Arquitectura de mquinas:
En el sistema PVM son asignadas por medio de un string corto que identifica la arquitectura, incluyendo el tipo de S.O. y de CPU. [archivo de configuracin]

Algunos ejemplos:
ALPHA, para DEC Alpha/OSF-1 APOLLO, para HP 300 bajo Domain/OS CRAYSMP, para Cray S-MP WIN32, para PCs bajo WINDOWS 95/98 o NT (Intel, Alpha)

PVM: Parallel Virtual Machine


Operacin:
Todas las aplicaciones PVM se ensamblan con la librera libpvm para permitirles la comunicacin con otras entidades dentro del sistema PVM. La librera base libpvm3.a est escrita en C y directamente soporta aplicaciones C y C++.

PVM: Parallel Virtual Machine Operacin:


La librera libfpvm3.a contiene funciones que convierten la secuencia de llamadas de FORTRAN a C. El proceso de ensamble depende del S.O.

PVM: Parallel Virtual Machine


SUBRUTINAS: cinco categoras
Paso de mensajes : pvm_initsend, pvm_pack, .... Control de tareas: pvm_exit, pvm_mytid,...

Librera de funciones de grupo: pvm_joingroup, ...


Control de la mquina virtual: pvm_addhost, ... Miscelneas: pvm_archcode, pvm_reduce, ...

PVM: Parallel Virtual Machine


Operacin con Fortran:
En primer lugar, se define la forma de repartir los datos: Y = AX Y X
P1 P2 P3

PVM: Parallel Virtual Machine


Cada proceso (P1, P2, P3) almacenar un grupo contiguo de filas de la matriz A y todo el vector X. Como resultado del clculo, cada proceso paralelo generar un pedazo del vector Y. El programa principal:
Include fpvm3.h, tipos de datos y constantes PVM Include paral.h, datos comunes CALL leerdatos, enviardatos1, Recibirdatos1, MatXVect, RecibirDatos2, Enviardatos2, Resultados, pvmexit(info)

PVM: Parallel Virtual Machine


El proceso 1 (P1) realiza la lectura de datos y enva el pedazo de matriz y el vector X a los dems procesos (Enviardatos1). Mientras tanto, los otros procesos ejecutan la rutina Recibirdatos1, que se encarga de recibir el pedazo de matriz correspondiente. Seguidamente todos los procesos ejecutan la rutina MatrizXVector con su pedazo de matriz y generan un trozo del vector Y.

PVM: Parallel Virtual Machine


Finalmente, el proceso 1 (P1) recibe todos los pedazos de Y en la rutina Recibirdatos2, mientras que los dems procesos ejecutan Enviardatos2. El proceso 1 (P1) escribe todo el vector Y en el fichero de salida y el programa finaliza.

PVM: Parallel Virtual Machine


Perspectivas: implementar PVM para trabajar reas como:
IA Redes neuronales. Procesos de optimizacin Mtodos numricos Otras...

Empleando C, C++, Fortran.

You might also like