cómputo paralelo usando mpi: simulaciones de n-cuerpos en la física m.a. rodríguez-meza instituto...
TRANSCRIPT
![Page 1: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/1.jpg)
UAEH 1
Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física
M.A. Rodríguez-MezaInstituto Nacional de Investigaciones Nucleares
Correo electrónico: [email protected]://www.astro.inin.mx/mar
Rock & Roll!!18/08/09
![Page 2: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/2.jpg)
2
Sistemas operativos
• MS-DOS y similares: Un usuario un proceso
• VMS: Multitask, multiusers, ...• UNIX: igual
• ... y ¿Windows? Muli-CHAFA
![Page 3: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/3.jpg)
3
Linux y el software libre
• Fue lo que hizo posible el bum del desarrollo de cómputo científico barato y al “alcance de todos”.
• ¡Software libre y abierto!
• Pero, ..., ¡entiendale Uds a los códigos!
Siguiente paso: Código abierto y libre y te enzeño como funciona
![Page 4: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/4.jpg)
4
Nuestros intentos en Puebla (1994-1995)
• Linux, distribución Slackware• MPI, distribución MPICH• Cluster de 4 486 a 66 Mhz (1995)• La Jauria (2000): Alphas
![Page 5: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/5.jpg)
5
Ekbek en el CINVESTAV
• 64 nodos Pentiums 2.5 Ghz
![Page 6: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/6.jpg)
6
Tipos de clusters• Memoria distribuida (Ekbek)• Memoria compartida (ININ: draco 16
itanium)
• Clusters, Granjas y grids
• ¿Cúal es mejor?
![Page 7: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/7.jpg)
7
Configuración física de un cluster
![Page 8: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/8.jpg)
8
Ingredientes básicos• Hardware: Maestro y esclavos, N-computadoras
• Computadora Maestra: CPU, teclado, ratón y monitor (Aparentemente)• Computadora esclava (de cómputo): CPU y ya (Aparentemente)
• Software ... Rocks and Rolls: Sistema operativo Linux, lenguages C y Fortran, Visualización, Protocolo MPI, herramientas de administración (el propio Rocks), monitoreo, más distribución y administración de trabajos.
![Page 9: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/9.jpg)
9
Rocks
![Page 10: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/10.jpg)
10
Rocks and Rolls• Kernel• base• Area51: Utilerias y servicios para analizar la integridad de los archivos y el kernel en el
cluster. • ganglia: para monitorear al cluster. Un valor individual a ser monitoreado se llama metric
en el sistema Ganglia. Los metrics son medidos en los nodos del cluster y Ganglia los comunica al nodo maestro.
• hpc: proveer con las herramientas configuradas que pueden ser usadas para correr aplicaciones en paralelo en el cluster. Los siguientes paquetes son incluidos: MPI sobre ambientes ethernet (OpenMPI, MPICH, MPICH2); PVM; Benchmarks (stream, iperf, IOzone).
• sge: instala y configura el administrador de colas SUN Grid Engine.• web-server• java• xen• os disk 1• os disk 2
![Page 11: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/11.jpg)
11
Nodo Maestro• Inserte el CD Kernel/Boot Roll y arranque la máquina.• La máquina muestra una pantalla de bienvenida: Tecleé “build”.• Puede ser necesario configurar IPv4 o IPv6.• Seleccione los Rolls insertando y sacando los CD’s correspondientes. (Lo mínimo: kernel, base, web-
server, os-1 y os-2).• Introduzca la info correspondiente a la configuración del Maestro: Host name (requerido), cluster
name, Latitude/Longitud (N19.20/W99.10), etc. • Configure la red, eth0 (local: 10.1.1.1) y eth1 (mundo exterior: (DHCP)).• Introduzca el password de root.• Configure el tiempo.• Establezca la partición del disco.
• ... (6:24 – 6:33 – 6:55 )
• Inserte los CD’s de instalación como se le vayan pidiendo.• Comienza la instalación.• Al final se arranca la máquina de nuevo.• ¡¡¡LISTO el NODO Maestro!!!
![Page 12: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/12.jpg)
12
Nodos de cómputo• Haga login en el nodo maestro como “root”.• Corra el programa que captura las peticiones DHCP de los nodos de cómputo y que pone la información en la
base MySQL de Rocks:# insert-ethers
• Seleccione el tipo, en nuestro caso “Compute”, hago “OK” y ...• Arranque el primer nodo de cómputo. Antes cambie el orden de los dispositivos a: PXE, CD, HD. (Pulse F2 al
momento del arranque).• Cuando el nodo maestro recive la petición de DHCP hace la asignación en la base de datos y actualiza los
archivos de configuración (/etc/hosts, /etc/dhcpd.conf y el DNS).• En este momento se puede monitorear la instalación usando
– rocks-console compute-0-0
• Después de haber instalada todos los nodos de cómputo en el primer cabinete termine el proceso: insert-ethers, tecleando F8.
• Se puede agregar otro cabinete tecleando:– Insert-ehters –cabinet-1
• Eso nombrará los nodos de cómputo como “compute-1-0, compute-1-1, …”
• Y con esto hemos armado nuestro cluster “BOLAS” y ¡¡¡LISTO a trabajar!!!
![Page 13: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/13.jpg)
13
Algunas tareas de administración en Rocks
• La ayuda se obtiene con:# rocks list help
• Alias a un nodo de cómputo:# rocks add host alias compute-0-0 c-0-0
• La lista de nodos:# rocks list host {alias}
• Listado de las acciones de arranque:# rocks list host boot
• Listado de la partición de un nodo:# rocks list host partition compute-0-0
• Listado de la información de la red:# rocks list network
• Listado de los Rolls:# rocks list roll
• Corre un comando para un nodo:# rocks run host compute-0-p “ls /tmp”
o de la siguiente manera:
# ssh compute-0-0 “shutdown –r now”
• Para sincronizar a los usuarios (/etc/passwd, /etc/shadow, ..., restart autofs):# rocks sync users
• Para sincronizar servicios:# rocks sync config
• Apaga un nodo de computo:• # rocks run host compute-0-0 “shutdown –h now”
• Para poner una acción al arranque de un nodo:# rocks set host installaction compute-0-0 install
o
# rocks set host compute-0-0 action=install
• Para remover un nodo:# rocks remove host compute-0-1# rocks sync config
![Page 14: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/14.jpg)
14
Algunas tareas de administración en Rocks
• Un usuario se agrega con:# useradd username# rocks sync users
![Page 15: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/15.jpg)
15
Agregando plplot
• ./configure –prefix=$HOME/local• make• make install
![Page 16: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/16.jpg)
16
Un final casi final de esta parte del curso sobre paralelización
• Tonatiuh dijo que Uds. al final del curso saldrían corriendo ... en paralelo ... je!
![Page 17: Cómputo paralelo usando MPI: Simulaciones de N-cuerpos en la física M.A. Rodríguez-Meza Instituto Nacional de Investigaciones Nucleares M.A. Rodríguez-Meza](https://reader036.vdocuments.mx/reader036/viewer/2022081602/54c3c00b497959244c8b4a5f/html5/thumbnails/17.jpg)
17
Let´s rocks & rolls!!!MiguelRicardo
Francisco Mario
Con el cuarteto del IAC ...