jueves, 17 de diciembre de 2009

Fedora 12

Me he encontrado un blog excelente con tips de post-instalación para Fedora 12

Qué hacer después de instalar Fedora 12 Constantine

Muy recomendable, una de las características de esta nueva versión que mas me ha gustado es la mejora del proceso de actualización de tal suerte que ahora yum descarga muchos menos datos desde la red...

lunes, 26 de octubre de 2009

Ya viene el V Simposio Internacional de Cómputo!!




Conferencias

Miércoles 11 nov.

Nombre: Dr. Eduardo Romero Vivas

    Tema: Separación ciega de fuentes (BSS) para reconstrucción tridimensional de imágenes de microscopía

    Hora: 18:00 hs.

Nombre: Dr. Andrei Tchernykh

Tema: Procesamiento distribuido de gran escala basado en un Grid Computacional

    Hora: 19:30 hs.

Jueves 12 nov.

Nombre: Dra. Erika M. Ramos Michel

    Tema: Procesamiento de imágenes como soporte para el desarrollo de aplicaciones en TIC’s

    Hora: 18:00 hs.

Nombre: MC Mirtha Albañez Lucero

    Tema: Redes neuronales como herramienta para la modelación en el área de las ciencias marinas

    Hora: 19:30 hs.

Viernes 13 de nov.

Nombre: Dr. Sergio Suárez Guerra

Tema: Procesamiento Digital de Señales y Voz

    Hora: 18:00 hs.

Nombre: MC Luis Héctor Avena Ruíz

Tema: Aplicaciones en Ambientes Virtuales

    Hora: 19:30 hs.

Talleres

Instructor: Dr. Marco Antonio Castro Liera

Nombre: Clusters Sobre PVM

    Horario: 09:00 a 13:00 hs.

Instructor: Dr. Saúl Martínez Díaz

Nombre: Procesamiento Digital de Imágenes Utilizando MATLAB

    Horario: 09:00 a 13:00 hs.

Instructores: Dr. Joaquín Gutiérrez Jaguey, Ing. Juan Francisco Villa Medina

Nombre: Torneo de Sumo con Robots

    Horario: 09:00 a 13:00 hs.

Costos

Conferencias

Alumnos $200.00

Público en general $300.00

Talleres

Clusters Sobre PVM y Procesamiento Digital de Imágenes

Alumnos $300.00

Público en general $400.00

Torneo de Sumo con Robots

Costo general $500.00

Paquete

Conferencias+1 taller (Clusters Sobre PVM o Procesamiento Digital de Imágenes)

Alumnos $400.00

Público en general $500.00

Costo por día de conferencias

Alumnos $90.00

Público en general $150.00

sábado, 26 de septiembre de 2009

Artículo en la revista DYNA

En la edición de Septiembre de 2009 (159) de la Revista DYNA (incluida en el science citation index) nos han publicado el artículo:

DETERMINANDO LOS PARÁMETROS DE UN SISTEMA DE IDENTIFICACIÓN DIFUSA USANDO UN NUEVO ALGORITMO GENÉTICO DISTRIBUIDO BASADO EN PERIODO MIGRATORIO DINÁMICO

Puede descargarse en pdf (en Inglés)desde:

http://dyna.unalmed.edu.co/ver_resumen.php?id_articulo=a08v76n159

viernes, 25 de septiembre de 2009

CIPITITECH 09

Participamos en el CIPITEC 2009
Con la ponencia:

ADAPTATIVE MODELING OF THE NEAR SHORE WAVE BEHAVIOR OF THE BAJA CALIFORNIA SUR REGION

En lo que publican la memoria, puede descargarse la ponencia desde:

http://sistemas.itlp.edu.mx/mcastro/arts/cipitech09.pdf

jueves, 3 de septiembre de 2009

Un pálido punto azul, Carl Sagan

Este siempre me ha parecido uno de los mensajes más provocativos que encontré en los libros de Carl Sagan, y ahora me he enterado de que incluso tiene su sitio en la wikipedia.

El libro es muy recomendable.

En la imagen se aprecia una fotografía de la tierra transmitida por la nave espacial Voyager I en 1990 desde las fronteras del sistema solar.


"Mira ese punto. Eso es aquí. Eso es casa. Eso es nosotros. En él se encuentra todo aquel que amas, todo aquel que conoces, todo aquel del que has oído hablar, cada ser humano que existió, vivió sus vidas. La suma de nuestra alegría y sufrimiento, miles de confiadas religiones, ideologías y doctrinas económicas, cada cazador y recolector, cada héroe y cobarde, cada creador y destructor de la civilización, cada rey y cada campesino, cada joven pareja enamorada, cada madre y padre, cada esperanzado niño, inventor y explorador, cada maestro de moral, cada político corrupto, cada “superestrella”, cada “líder supremo”, cada santo y pecador en la historia de nuestra especie vivió ahí – en una mota de polvo suspendida en un rayo de luz del sol.

La Tierra es un muy pequeño escenario en una vasta arena cósmica. Piensa en los ríos de sangre vertida por todos esos generales y emperadores, para que, en gloria y triunfo, pudieran convertirse en amos momentáneos de una fracción de un punto. Piensa en las interminables crueldades visitadas por los habitantes de una esquina de ese pixel para los apenas distinguibles habitantes de alguna otra esquina; lo frecuente de sus incomprensiones, lo ávidos de matarse unos a otros, lo ferviente de su odio. Nuestras posturas, nuestra imaginada auto-importancia, la ilusión de que tenemos una posición privilegiada en el Universo, son desafiadas por este punto de luz pálida.

Nuestro planeta es una mota solitaria de luz en la gran envolvente oscuridad cósmica. En nuestra oscuridad, en toda esta vastedad, no hay ni un indicio de que la ayuda llegará desde algún otro lugar para salvarnos de nosotros mismos.

La Tierra es el único mundo conocido hasta ahora que alberga vida. No hay ningún otro lugar, al menos en el futuro próximo, al cual nuestra especie pudiera migrar. Visitar, sí. Colonizar, aún no. Nos guste o no, en este momento la Tierra es donde tenemos que quedarnos.

Se ha dicho que la astronomía es una experiencia de humildad y construcción de carácter. Quizá no hay mejor demostración de la tontería de los prejuicios humanos que esta imagen distante de nuestro minúsculo mundo. Para mí, subraya nuestra responsabilidad de tratarnos los unos a los otros más amablemente, y de preservar el pálido punto azul, el único hogar que jamás hemos conocido"


jueves, 27 de agosto de 2009

Memoria y Esperanza por Mario Benedetti

Quisiera recomendarles el libro

Memoria y esperanza,
Un mensaje a los jóvenes
de Mario Bedetti
Alfaguara (2008)


En lo personal soy lector asiduo de las obras de Benedetti, desde que descubrí hace algunos años su "Primavera con una esquina rota", no quisiera caer en la mala costumbre de recomendar a un autor hasta que este fallece, pero este libro que al parecer fue editado originalmente en el 2004 me ha parecido excelente.

El libro es una colección de poemas y breves ensayos sobre varios temas que aunque apelan a la juventud, son universales. Benedetti compromete su opinión contra el capitalismo voraz y la globalización, contra la enajenación masiva de la juventud y en pro de la decencia y la lucha por la mejora de las condiciones sociales. La edición de alfaguara es de una calidad excepcional y la imagenes aportan importantemente al disfrute del texto.

Les dejo un par de pequños extractos...

"Es bueno que el joven tenga algo de aguafiestas, que incomode al poder y al poderoso, que denuncie su vulnerabilidad y su injusticia..."

"Lo que se aprende en la juventud debería constituir un soplo vital capaz de acompañarnos hasta el fin de los días..."

jueves, 13 de agosto de 2009

Optimización de la función de Rastrigin


La función rastrigin es la novena de una bateria de prueba para optimizadores propuesta para la Competencia de Computación Evolutiva CEC05 mantenida por P. N. Suganthan

(Ediciones del 2005 a la fecha)

CEC05 Optimización de problemas un Solo Objetivo
CEC06 Optimización de problemas un Solo Objetivo con Restricciones
CEC07 Algoritmos de optimización Multi-Objetivos
CEC08 Optimización de problemas de gran escala
CEC09 Optimización Dinámica
(En ambientes dinámicos y con incertidumbre)
CEC09 Algoritmos de Optimización Multi-Objetivos con restricciones

Tiene como característica interesante una gran cantidad de extremos locales.
se muestra su representación gráfica en dos dimensiones:

Una versión de algoritmo genético distribuido con migración adaptativa para optimizar esta función en dos dimensiones usando PVM:

http://sistemas.itlp.edu.mx/mcastro/anillo/rastrigin.tgz

Corrección en la regla de migración

Las aplicaciones que usan migración en la versión original de la tesis tienen un bug que genera incorrectamente el anillo de migración en el AG.

por lo que remplacé la regla de migración de:

l=nproc-i;
l--;

por:

l=(i+1)%nproc;

En los siguientes enlaces pueden descargarse las versiones corregidas ademas de dos programas nuevos, uno que optimiza la función rastrigin y otro modelo predictor de sustrato para el mismo juego de datos para el que se habia desarrollado el modelo de biomasa.

Goldstein Price (adaptativo, migracion normal y headless chicken)
http://sistemas.itlp.edu.mx/mcastro/anillo/amdga.tgz
http://sistemas.itlp.edu.mx/mcastro/anillo/mdga.tgz
http://sistemas.itlp.edu.mx/mcastro/anillo/mdga-hc.tgz

Rastrigin (Adaptativo y escalador estocástico)
http://sistemas.itlp.edu.mx/mcastro/anillo/rastrigin.tgz
http://sistemas.itlp.edu.mx/mcastro/anillo/ratrigin-shc.tgz

Modelos de la Fermentación(adaptativo,migracion normal y headless chicken)
http://sistemas.itlp.edu.mx/mcastro/anillo/biomasa-full.tgz
http://sistemas.itlp.edu.mx/mcastro/anillo/biomasa-sin.tgz
http://sistemas.itlp.edu.mx/mcastro/anillo/biomasa-hch.tgz
http://sistemas.itlp.edu.mx/mcastro/anillo/sustrato-full.tgz


martes, 11 de agosto de 2009

Defensa Doctoral

El pasado 9 de julio presenté la defensa de mi tesis de doctorado, el tribunal falló por 9 votos a favor y 0 en contra para que se recomiende a la Comisión Nacional de Grados Científicos de Cuba el otorgarme el grado.

La versión electrónica de la tesis y las aplicaciones que se utilizaron para los experimentos se pueden descargar desde los siguientes enlaces:

Tesis:
UN ALGORITMO GENÉTICO DISTRIBUIDO CON APLICACIÓN EN LA IDENTIFICACIÓN DIFUSA DE UN PROCESO FERMENTATIVO
http://sistemas.itlp.edu.mx/mcastro/tesis%20de%20marco.pdf


Aplicaciones:

• Algoritmo genético para la optimización de la función Goldstein-Price
http://sistemas.itlp.edu.mx/mcastro/ga.tgz


• Algoritmo genético distribuido para la optimización de la función Goldstein-Price
http://sistemas.itlp.edu.mx/mcastro/dga.tgz


• Algoritmo genético distribuido con migración para la optimización de la función Goldstein-Price
http://sistemas.itlp.edu.mx/mcastro/mdga.tgz


• Algoritmo genético distribuido con migración modificada (headless chicken) para la optimización
de la función Goldstein-Price
http://sistemas.itlp.edu.mx/mcastro/mdga-hc.tgz

• Algoritmo genético distribuido con migración adaptativa para la optimización de la función Goldstein-Price
http://sistemas.itlp.edu.mx/mcastro/amdga.tgz


• Escalador de colinas estocástico para la optimización de la función Goldstein-Price
http://sistemas.itlp.edu.mx/mcastro/shc.tgz


• Algoritmo genético distribuido con migración fija para la optimización en dos fases de los parámetros de un modelo difuso de concentración de biomasa en un proceso fermentativo.
http://sistemas.itlp.edu.mx/mcastro/biomasa-sin.tgz


• Algoritmo genético distribuido con migración adaptativa para la optimización en dos fases de los parámetros de un modelo difuso de concentración de biomasa en un proceso fermentativo.
http://sistemas.itlp.edu.mx/mcastro/biomasa-full.tgz


• Algoritmo genético distribuido con migración adaptativa modificada (headless chicken) para la optimización en dos fases de los parámetros de un modelo difuso de concentración de biomasa en un proceso fermentativo.
http://sistemas.itlp.edu.mx/mcastro/biomasa-hch.tgz


• Escalador estocástico para la optimización en dos fases de los parámetros de un modelo difuso de concentración de biomasa en un proceso fermentativo.
http://sistemas.itlp.edu.mx/mcastro/biomasa-shc.tgz

lunes, 27 de abril de 2009

The Linux Documentation Poject

Una opción para obtener información libre, actualizada y gratuita sobre diferentes proyectos de software libre es

The Linux Documentation Project

En este sitio puedes descargar manuales, guías y documentación en diferentes formatos. Existe además una sección para documentos en español.

Linux Manual de Referencia Sexta Edición

Linux
Manual de Referencia
Richard Petersen
Mc.Graw-Hill
Sexta Edición


En esta ocasión voy a recomendarles este libro, el cual es una muy completa referencia para los que se inician a Linux y que es también muy útil para los administradores mas avanzados.

EL libro incluye 8 secciones que cubren desde los fundamentos del Shell, hasta la configuración de servidores web, NAT, Proxys y seguridad mejorada entre otros.

miércoles, 8 de abril de 2009

Instalación de Fedora 10 en una acerone netbook

Hoy instalamos Fedora 10 en una acerone y debo decirles que funcionó de maravilla, detectando el hardware sin necesidad de hacer nada excepcional con los drivers.

Para llevar a cabo la instalación fue necesario tener a la mano el iso de fedora10 (usamos el de dvd), utilizamos además una memoria usb de 8 GB (podría hacerse con una mas pequeña pero no teniamos las isos de los cds)

Para crear la usb con el arrancador utilizamos la utilería de fedora live-usb-creator-3.6.3 (que tiene versiones tanto para windows como para linux)

Una vez creada la usb con arrancador, fue necesario copiarle la imagen iso del dvd en la raiz e instalar con la opción de disco duro (desde sdb1). (si se tienen las isos de los cds, habrá que copiarlas todas en la raiz)

De ahi en más la cosa funcionó sin nignuna novedad, anaconda permite cambiar el tamaño de la partición de Windows si deseas tener dual boot y todo el hardware funcionó, en especial, la tarjeta de red inalámbrica funcionó a la primera!!! (esto es raro :D)

Nos basamos en la guía de fedora project que aunque basada para la instalación de la versión live, funciona con la versión completa haciendo el cambio mencionado arriba de la copia de la iso y la instalación desde "disco duro".

Cabe señalar que aunque se reportan problemas de rendimiento con las netbook con discos duros de estado sólido, la que probamos tiene un ide de 160 gb, por lo que no tuvimos esas broncas...

La maquinita funciona muy bien.

martes, 7 de abril de 2009

Linus Torvalds Comenta Sobre Las Netbooks

Buscando recursos para instalar linux en la nueva netbook de mi señor padre, me encontré esta entrevista en DistroWatch con Linus Torvalds, donde explica por qué usa Fedora, GNOME y de las netbooks opina:

"I think that netbooks are really just 'laptops done right'"

"Pienso que las netbooks son solo laptops, pero bien hechas"

http://distrowatch.com/weekly.php?issue=20090202#feature

La entrevista no tiene desperdicio...

jueves, 26 de marzo de 2009

40 años de UNIX

Este año se cumplen 4 decadas de el desarrollo de unix en una DEC PDP-7 sobrante en los laboratorios BELL (ahora AT&T). Ken Thompson y Dennis Ritchie lo hecharon a andar para continuar sus torneos de Viajes Espaciales (un juego que Thompson habia desarrollado).

Sus compañeros se burlaban del sistema y le pusieron el nombre UNICS como una mofa a la falla del proyecto MULTICS (UNiplexed Information and Computed Service vs. Multiplexed Information and Computing Service). No hay registro a la fecha de cuando UNICS cambio su nombre por UNIX pero el mundo de la informática lleva ya 40 años de disfrutar de los derivados de esa plataforma.

viernes, 13 de marzo de 2009

Al inicio de "Sueño con serpientes"

"Hay hombres que luchan un día y son buenos. Hay otros que luchan un año y son mejores. Hay quienes luchan muchos años y son muy buenos. Pero hay los que luchan toda la vida: esos son los imprescindibles."
--Bertolt Brecht

jueves, 12 de marzo de 2009

Algoritmo Genético Distribuido Sobre PVM

Sub-poblaciones estáticas con migración

Esta estrategia de paralelización consiste en utilizar un conjunto estático de sub-poblaciones independientes y utilizar un operador genético adicional de migración, mediante el cual, cada cierto número de generaciones se da el intercambio de individuos entre las poblaciones, como una forma de compartir material genético entre las mismas. Esto hace necesario la introducción de un conjunto de parámetros migratorios que determinen la periodicidad del proceso de migración, la cantidad de individuos a migrar en cada ocasión y las poblaciones destino de dichos individuos.

A esta estrategia de paralelización también se le conoce como modelo de islas, algoritmos genéticos distribuidos o algoritmos genéticos de grano grueso y su escalabilidad ha sido comprobada en varios trabajos [1-5].

Existen diversos modelos de migración para los algoritmos genéticos de grano grueso, los cuales incluyen modelos en anillo, y la migración aleatoria [6].

En el modelo de anillo, se determina la población de destino de cada elemento a migrar antes de iniciar el algoritmo. (figura 1)


Figura 1: Migración en anillo entre 7 poblaciones.

En el modelo de migración aleatoria la población de destino se elige al azar en cada evento de migración. (figura 2)


Figura 2: Migración aleatoria entre 7 poblaciones.

Los efectos de la migración sobre los algoritmos genéticos en paralelo han sido abordados en [7-9]. En estos textos se obtienen resultados satisfactorios migrando porciones pequeñas de las sub-poblaciones (en el rango del 20%) lo cual es compatible con el objetivo de minimizar el uso del ancho de banda entre procesadores.

También existen diferentes estrategias para seleccionar los individuos a migrar que van desde la elección elitista de los individuos con mejor adaptación de cada población hasta la selección por torneo. La determinación dinámica de los parámetros migratorios se ha tratado en [5, 6, 10].

En este tipo de algoritmo, se denomina intervalo de migración al número de generaciones que se ejecutan en cada procesador antes del intercambio de material genético con los demás, mientras que a la cantidad de individuos que se seleccionan para migrar cada vez, se le denomina razón de migración.


Aplicación de prueba Sobre PVM

Para la aplicación de este algoritmo es conveniente tomar un ejemplo de optimización. El problema que se eligió para probarlo inicialmente es la minimización de la función de Goldstein-Price descrita en [11] la cual ha sido utilizada para el estudio de algoritmos genéticos. Esta función tiene un mínimo global en fG*(0,-1) = 3.


(1)

Después de efectuar varias pruebas empíricas con el algoritmo genético sin paralelizar, se escogió un conjunto de parámetros que en principio arrojaron soluciones prometedoras, estos parámetros se utilizaron como base para hacer pruebas del efecto de la variación del tamaño de población:
• Representación real, cromosoma X = [x1,x2].
• Rango de búsqueda para X (-100,100).
• Error máximo permitido 0.1 (cuando el error es mayor, se considera una convergencia prematura).
• Número máximo de generaciones GMAX = 100.
• Selección por torneo, con tamaño de torneo Z=2.
• Probabilidad de cruce PC = 0.7.
• Parámetro de cruzamiento generado de manera uniforme en (0,1).
• Probabilidad de mutación PM =0.1.


El código fuente escrito en C con migración para optimizar la función Goldstein-Price con licencia GPL puede descargarse desde

http://sistemas.itlp.edu.mx/mcastro/mdga.tgz


REFERENCIAS BIBLIOGRÁFICAS
1. Alba, E. and J.M. Toya, Analyzing Synchronous and Asyncrhonous Parallel Distributed Genetic Algorithms. Future Generation Computer Systems, 2001. 17(4): p. 451-465.
2. Alba, E. and M. Tomassini, Parallelism and Evolutionary Algorithms. IEEE Transactions on Evolutionary Computation, 2002. 6(5): p. 443-462.
3. Alba, E. and J.M. Troya, A Survey of Parallel Distributed Genetic Algorithms. 1997, Universidad de Málaga, Campus de Teatinos. p. 32.
4. Tomoyuki, H., M. Mitsunori, and T. Yusule, The Differences of Parallel Efficiency between the Two Models of Parallel Genetic Algorithms on PC Cluster Systems. Proceedings of The Fourth International Conference/Exhibition on High Performance Computing in Asia-Pacific Region, 2000: p. 945-948.
5. Berntsson, J. and M. Tang, Dynamic Optimization of Migration Topology in Internet-based Distributed Genetic Algorithms. Proceedings of the 2005 conference on Genetic and evolutionary computation GECCO '05, 2005: p. 1579-1580.
6. Hiroyasu, T., M. Miki, and M. Negami, Distributed Genetic Algorithms with Randomized Migration Rate, in IEEE Proceedings of Systems, Man and Cybernetics Conference SMC'99. 1999, IEEE Press. p. 689-694.
7. Matsumura, T., et al., Effects of Chromosome Migration on a Parallel and Distributed Genetic Algorithm. Proceedings. Third International Symposium on Parallel Architectures, Algorithms, and Networks, 1997. (I-SPAN '97), 1997: p. 357-361.
8. Rebaudengo, M. and M. Sonza Reorda, An Experimental Analysis of the Effects of Migration in Parallel Genetic Algorithms. Proceedings Euromicro WorkShop on Parallel and Distributed Processing, 1993, 1993: p. 232-238.
9. Alba, E., C. Cotta, and J.M. Troya, Numerical and Real Time Analysis of Parallel Distributed GAs with Structured and Panmictic Populations. Proceedings of the IEEE Conference on Evolutionary Computing (CEC), 1999. 2: p. 1019-1026.
10. Noda, E., et al., Devising Adaptive Migration Policies for Cooperative Distributed Genetic Algorithms. Proceedings of the IEEE Conference on Evolutionary Computation, 2002.
11. Jamshidi, M., et al., Robust Control Systems With Genetic Algorithms. Control Series, ed. R.H. Bishop. 2002, USA: CRC Press. 210.

PVM

PVM (Parallel Virtual Machine) es un paquete de software libre desarrollado por el Oak Ridge National Laboratory. Con PVM es posible hacer que una colección heterogénea de computadoras conectadas en red funcione como una sola computadora paralela, lo cual permite la ejecución y programación de aplicaciones paralelas en red, mediante el modelo de paso de mensajes.

PVM está escrito en C y cuenta con librerías que soportan la generación de aplicaciones en C, C++ y Fortran.

Algunas de las características principales de PVM incluyen las siguientes:

• Conjunto de máquinas definido por el usuario: El usuario puede elegir a través de una consola, de entre las máquinas conectadas al cluster, en cuales de ellas se va a ejecutar una tarea. Incluso las máquinas que forman parte de ese conjunto pueden ser agregadas o eliminadas dinámicamente, lo cual es una característica importante para la implementación de tolerancia a fallos.
• Acceso traslúcido al hardware: Los usuarios pueden utilizar un acceso transparente al hardware, en el que se permite que PVM decida la asignación de tareas o puede asignarse de manera explícita cuál máquina ejecutará cada tarea, para explotar mejor las capacidades del hardware.
• Computación basada en procesos: La unidad de paralelismo en PVM es una tarea, que es un hilo independiente de control que se alterna entre los estados de comunicación y cálculos. No existe un mapeo directo entre tareas y procesadores. De hecho es posible ejecutar varias tareas en una sola máquina.
• Modelo de paso de mensajes Explícito: Un conjunto de tareas cooperan en la solución de un problema enviándose mensajes entre sí. El tamaño de los mensajes sólo está limitado por la cantidad de memoria de cada computadora.
• Soporte de heterogeneidad: PVM soporta la heterogeneidad en términos de computadoras, redes y aplicaciones. Con respecto al paso de mensajes, PVM permite que mensajes que contienen más de un tipo de datos puedan ser intercambiados entre computadoras con diferentes formas de representación de datos.
• Soporte de multiprocesadores: PVM utiliza las facilidades nativas de paso de mensaje en computadoras paralelas, para hacer uso de las ventajas de este tipo de hardware subyacente. Algunos distribuidores proveen versiones de PVM optimizadas para sus arquitecturas particulares, que pueden comunicarse con las versiones públicas de PVM.

El sistema PVM está compuesto por dos partes: la primera parte es un daemon (llamado pvmd3 y a veces abreviado como pvmd) que se ejecuta en cada computadora conectada a la máquina virtual. Este proceso residente o daemon es el responsable de mantener la comunicación que
permite el paso de mensajes y la creación y eliminación de tareas en el cluster.
La segunda parte es un conjunto de librerías que permiten a las aplicaciones hacer uso de las características que ofrece PVM.

Instalación
Un cluster PVM está compuesto por un nodo maestro y varios nodos esclavos.

Para instalar PVM, es necesario que los nodos que van a ser incluidos en el cluster puedan accederse entre ellos mediante sus hostnames. Esto puede lograrse configurando un DNS o agregando dichos nombres en los archivos de hosts de cada uno de los nodos.

Para la ejecución de los procesos de forma remota, PVM utiliza por omisión RSH. Sin embargo, debido a que este es un protocolo que ya ha caído en desuso, se recomienda que se configure en cada nodo el servicio SSH. Posteriormente se puede recompilar PVM con la opción de utilizar SSH o simplemente crear una variable de entorno que le indica a PVM que utilice SSH y no RSH como su método de ejecución remota.

Para instalar PVM en Scientific Linux, basta con seleccionar el paquete al momento de instalar el sistema operativo, o instalarlo posteriormente desde los discos de la distribución.

Si se tiene acceso a internet, se puede instalar el paquete mediante un

yum -y install pvm

También es posible descargar y compilar el código fuente de PVM desde:

http://www.netlib.org/pvm3/index.html

Antes de utilizar el paquete, deben crearse las siguientes variables de entorno en cada nodo del cluster:
• PVM_ROOT: que debe contener la ruta donde esta instalado PVM. Para Scientific Linuxes: /usr/share/pvm3
• PVM_ARCH: que debe contener el nombre de la arquitectura para la cual se ha compilado (o se va a compilar) PVM. Por ejemplo LINUXI386 para computadoras que ejecutan una versión de Linux con un procesador compatible con el 386 de Intel.
• PVM_RSH: Que permite seleccionar el programa que se utilizará para lanzar procesos en cada nodo del cluster. Se recomienda utilizar /usr/bin/ssh.

Para que estas variables se carguen de manera automática, al iniciar la sesión de cada usuario que vaya a utilizar PVM, se pueden agregar las siguientes líneas a su archivo .bashrc:
PVM_ROOT=/usr/share/pvm3
PVM_ARCH=LINUXI386
PVM_RSH=/usr/bin/ssh
export PVM_ROOT PVM_ARCH PVM_RSH

De forma opcional, es recomendable agregar al PATH el directorio donde se encuentran las librerías de pvm, lo cual permite la ejecución de la consola y aimk (una herramienta para la compilación automática que funciona sobre make). Esto se logra agregando la cadena $PVM_ROOT/lib a la variable PATH
Por ejemplo:
PATH=$PATH:$HOME/bin:$PVM_ROOT/lib

Acto seguido, pueden compilarse en cada nodo las aplicaciones de ejemplo de PVM que vienen en el directorio $PVM_ROOT/examples. Esto puede hacerse cambiándose a dicho directorio y ejecutando el comando aimk all, el cual compila todos los ejemplos incluidos con PVM.

Los ejecutables son depositados automáticamente por aimk en el directorio $PVM_ROOT/bin/$PVM_ARCH.

Una vez hecho esto en cada nodo del cluster es posible dar de alta una máquina paralela virtual ejecutando el comando PVM en el nodo maestro y agregando, desde esta consola cada uno de los nodos esclavos mediante el comando add , SSH pedirá el password para poder acceder a cada uno de ellos. Para esto, es recomendable que en cada computadora se cree una cuenta con el mismo nombre de usuario, que permita acceder al cluster. El comando quit, permite salir de la consola de pvm sin dar de baja el cluster y ejecutar los ejemplos (como master1 o hello) desde la línea de comandos.

La página del proyecto PVM permite acceder a un manual de referencia muy completo, escrito por sus desarrolladores, que cubre la instalación y el desarrollo de aplicaciones en esta plataforma. Dicho manual está disponible en formato postscript y html en:

http://www.csm.ornl.gov/pvm/pvm_home.html

miércoles, 11 de marzo de 2009

Frases

Have the courage to be ignorant of a great number of things, in order to avoid the calamity of being ignorant of everything
-- Sydney Smith


Freud decí­a que:
"Existen dos maneras de ser feliz en esta vida: una es hacerse el idiota y la otra serlo".
Empiezo a considerar la primera opción, pero me gustaría creer que existe una tercera manera de ser feliz en la vida

martes, 10 de marzo de 2009

Bienvenidos

Bienvenidos a mi blog, donde espero tener entradas sobre linux, tecnología, algoritmos genéticos, software libre y lo que se me vaya ocurriendo.