En 1994 la NASA construyó un cluster bajo Linux con hardware barato, con 16 procesadores 486 conectados mediante una red local Ethernet, con el objetivo de conseguir alto rendimiento. Para ello se utilizó computación paralela por lo que los programas (escritos en C y Fortran) estaban paralelizados, es decir, utilizaban librerías de Message Passing (PVM y MPI) para que los procesos se ejecutasen en múltiples procesadores siguiendo el paradigma master/esclavo. El proyecto se llamó Beowulf y fue un gran éxito, por lo que actualmente cualquier sistema similar se denomina cluster tipo Beowulf.
MPI (Message Passing Interface, mpi-forum.org) es la especificación de un protocolo de comunicación entre ordenadores para computación paralela, existiendo varias implementaciones del mismo, como por ejemplo:
Al hacer en /root/.bashrc #export P4_RSHCOMMAND=ssh seguido de #source .bashrc
hago un echo RSHCOMMAND y me sale lo mismo RSHCOMMAND.
:( alguna sugerencia ??
BGT, para ver el valor de P4_RSHCOMMAND:
# echo $P4_RSHCOMMAND
OK, me da como resultado “ssh” perfecto. Siguiente duda:
Al hacer #tstmachines se konekta como al ssh del master estando yo en el master y meto la pass de root y no valida ni nada… y pruebo a konektarme del slave al master y entra perfectamnte. El ssh lo tengo bien configurado (kreo) me konekto del master al slave sin ke me pida la password. Pongo komo citas ai arriba #ssh slave y entra perfecto.
??? Gracias por vuestra ayuda
Muy buenas,
Tengo un problemilla y no se si podeis echarme una mano, no entiendo muy bien la parte del tutorial que dice “tengan un filesystem compartido, para lo cual el master exportará vía NFS el directorio ~/ y los esclavos lo montarán en ~/.” signifika k los slave’s montan el /home/user del master ?? o /root en mi caso ??
Peru, en un cluster MPI son los ‘usuarios normales’ los que ejecutan los programas, no root, de manera que el filesystem a exportar vía NFS en el master es el directorio personal /home/user y los esclavos lo montan en /home/user
OK , gracias por la informacion. Luego otra cosilla por favor:
El tema del ssh lo hice de la siguiente manera, la llave publica la cree con el usuario root, y al pasarle la llave publica al nodo slave1 (al usuario normal, no root). Deberia de crear la llave publica con el usuario normal del master (no root) y pasarle esa llave en vez de la de root? Y en ese caso, el usuario normal deberia de coincidir el nombre de usuario? Es que tengo un poco lio, de todas formas gracias por tu ayuda crash-n-burn.
Peru, montar un cluster no es precisamente lo más fácil del mundo y suele costar hacerlo funcionar, son muchas las cosas que pueden fallar y hay que probar y googlear mucho. Nosotros ayudamos en lo que podemos pero esto no es un foro y no nos da para más. Te ayudarán mejor en los foros de, por ejemplo, http://www.hispacluster.org
El tema del SSH tendrás que investigarlo más. Más info en nuestro artículo:
Conexión remota segura con SSH
OK, gracias de todas formas !
Aun asi he disfrutado mucho con vuestros documentos, a seguir asi !
Saludos ;)
el cluster me funciona con el programa del hola undo pero no me funciona ninguna otra aplicacion… a que se deberá no me muesra ningun resultado
tengo un problema, para apagar los nodos del cluster, lo hago uno por uno…como hago para apagarlos desde el servidor.
tengo un problema, al compilar con el flag -fopenmp y poner la variable de entorno OMP_NUM_THREADS en todos los nodos
solo el nodo maestro hace threads openmp, los demas solo tienen un hilo
como puedo hacer que los esclavos tambien tengan threads openmp??
Buenas soy nuevo en MPI, si me pueden ayudar quiero saber, cual es la instrucción para conocer el nombre de una máquina que está ejecutando un proceso.
quiero introducir dicho comando en un programa, si me pueden indicar un sencillo programa de hola mundo que lo haga se lo agradeceria. No conozco la instrccuión en MPI que lo hace. Graccias.