Вы находитесь на странице: 1из 4

ARQUITECTURA DE COMPUTADORES II Curso 2011 Apndice: Clusters

Inicio del entorno BCCD


Se deber como primera medida iniciar un nodo como Master y luego de esto se podrn iniciar todos los dems nodos esclavos y stos tomarn la configuracin automticamente desde el primer nodo. Primer nodo Nodo Master Una vez iniciada la carga del BCCD lo primero que nos preguntar ser la password del usuario bccd que deberemos usar para ingresar en la consola (el modo grfico arrancar automticamente bajo este usuario y no necesitaremos la password). Para que la configuracin de la red del clster no interfiera con la configuracin del laboratorio, el BCCD levantar un servidor DHCP que slo atender a clientes BCCD mediante mensajes adecuados. Para esto deberemos responder No a la pregunta: eth0 has an IP address 163.10.3.129 from OTHER. Take this address? De esta manera el BCCD configurar una interface virtual con el IP 192.168.3.1 y mascara 255.255.255.0. from OTHER se refiere a que la primera vez el servidor DCHP es externo al clster (DHCP del laboratorio). Luego de esto continua la carga hasta entrar en el modo grfico y est listo el nodo. Nodo 2 hasta N Nodos Esclavos Asegurarse que el primer paso, de tener configurado y andando el nodo Master, termin sin problemas. Al ir poniendo a bootear los distintos nodos esclavos tambin se nos preguntar en cada caso, como primera medida, la password del usuario bccd. Esta puede ser cualquier e incluso la misma en todos los nodos. Ahora en la configuracin de la red, los nodos detectarn al nodo Master y solicitarn la configuracin automtica de la red. Para esto deberemos contestar Yes a la pregunta: eth0 has an IP address 192.168.3.2 from BCCD. Take this address? De esta manera se irn configurando los esclavos de forma consecutiva con los IP 192.168.3.2 hasta 192.168.3.N. from BCCD se refiere ahora, a que se utilizar al servidor DHCP del clster y no el del laboratorio. Luego de esto continua la carga hasta entrar en el modo grfico y est listo el nodo.

Chequeo del entorno paralelo


Para poder realizar las operaciones siguientes se supone que ya se tiene un entorno listo para funcionar en paralelo MPI (siguiendo los pasos anteriores). A partir de aqu todo se realizar desde el nodo Master. Asegurarse que el proceso pkbcast est ejecutndose. Este proceso es el que ir informando la presencia de los diferentes nodos a medida que aparecen en el clster. Ejecute el comando bccd-allowall para asegurarse que todos los nodos puedan comunicarse sin necesidad de ingresar la password de forma interactiva. Busque en su directorio de usuario bccd (/home/bccd) un archivo llamado machines. Asegrese que su contenido lista todos los nodos que ha iniciado en el clster. El contenido tpico de este archivo debe ser algo como el siguiente: node000.bccd.net node009.bccd.net node010.bccd.net node011.bccd.net slots=2 slots=2 slots=2 slots=2

Tambin puede utilizar el comando bccd-snarfhosts para recrear el archivo machines en cualquier momento. Este archivo es de vital importancia ya que lista todos los recursos del clster.

Compilacin y ejecucin de MPI


Por lo general, ejecutar un programa MPI constar de tres pasos: Compilar el cdigo. Copiar el cdigo a travs de todos los equipos que desea ejecutar el cdigo. La ejecucin del cdigo. Compilar Asumiendo que tiene el cdigo para compilar (si usted tiene slo ejecutables binarios, vaya al paso 2: copia) necesita crear un archivo ejecutable. Esto implica compilar el cdigo con el compilador adecuado y enlazarlo con las libreras MPI. Vamos a utilizar el ejemplo hello.c . Usted puede utilizar su editor de texto preferido para crear este archivo. Despus de guardar el archivo, se puede compilar el programa con el comando mpicc. mpicc -o hello hello.c La opcin "-o" proporciona un nombre de archivo de salida, de lo contrario su ejecutable se guarda como "a.out". Asegrese de que proporciona un nombre de archivo ejecutable (y no el mismo nombre que el cdigo fuente) si se utiliza la opcin "-o". Muchos programadores han eliminado parte de su cdigo fuente por accidente dando su cdigo fuente del mismo nombre que el nombre del archivo de salida. mpicc es un wrapper que hace uso del compilador gcc para compilacin y linkeo con las

libreras MPI. Si desea compilar un programa sin libreras MPI puede hacerlo con gcc de la misma manera que con mpicc. Copia Para que su programa se ejecute en cada nodo, el ejecutable debe existir en cada nodo. Existe un comando para copiar los ejecutables a travs de nodos BCCD. Se llama bccd-syncdir y se ejecuta con el siguiente comando: bccd-syncdir <directorio> ~/machines donde <directorio> es el directorio que contiene el ejecutable y ~/machines es el machinefile creado automticamente o previamente con bccd-snarfhosts, que contiene una lista de todos los nodos en el clster. Esto crea un nico directorio en /tmp que contiene el directorio ejecutable en todos los nodos. El nombre de este directorio es nico y elegido por los primeros 8 caracteres de la clave pblica de su host actual. Ejecutar Una vez que ha compilado el cdigo y se ha copiado a todos los nodos puede ejecutar el cdigo mediante el comando mpirun. Dos de los argumentos ms comunes para el comando mpirun son: np que le permite especificar la cantidad de procesos que debe usar y el machinefile que le permite especificar exactamente qu nodos estn disponibles para su uso. Cambiar al directorio creado anteriormente con bccd-syncdir donde se encuentra el ejecutable y ejecutar el comando hola con 4 procesos: mpirun -np 4 -machinefile ~/machines ./hello
Tener en cuenta que los procesos corren en una secuencia Round Robin entre slots de CPU si el nmero de procesos es mayor que el de slots totales del clster. Si se desea un solo proceso por core deber correr un nmero de procesos menor o igual que el de slots totales.

Automontaje USB
Si desea utilizar una unidad USB, el BCCD est configurado para montar automticamente las unidades extrables USB cuando se inserta. Si usted est en X, aparecer un mensaje diciendo donde se monta la unidad (por ejemplo /mnt/sdg1). Si usted no est en X, se puede averiguar cul es el ltimo dispositivo que fue montado haciendo tail -l /var/log/mount.log. El BCCD no desmonta automticamente la unidad, as que asegrese de desmontarla, por ejemplo con umount /mnt/sdg1.

Algunos comandos tiles de Linux (consultar: man <comando>)


cd cambia de directorio. ls lista el contenido de un directorio.

cp copia un archivo. rm borra un archivo. mv mueve o renombra un archivo. ps muestra la lista de procesos. cat muestra el contenido de un archivo. /sbin/ifconfig muestra o cambia la configuracin de la red.

Вам также может понравиться