Envo de Trabajos Paralelos al Tesbed de Crossgrid - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

Envo de Trabajos Paralelos al Tesbed de Crossgrid

Description:

Instituto de F sica de Cantabria, IFCA (Centro Mixto CSIC-Universidad de ... International Testbed Map. V Taller de Altas Energ as, IFCA Santander Julio 2006 ... – PowerPoint PPT presentation

Number of Views:58
Avg rating:3.0/5.0
Slides: 17
Provided by: jm172
Category:

less

Transcript and Presenter's Notes

Title: Envo de Trabajos Paralelos al Tesbed de Crossgrid


1
Envío de Trabajos Paralelos al Tesbed de Crossgrid
  • V Taller de Altas Energías
  • 03 - 14 Julio 2006, Santander
  • Irma Díaz Merino
  • Consejo Superior de Investigaciones Científicas
  • Instituto de Física de Cantabria, IFCA
  • (Centro Mixto CSIC-Universidad de Cantabria)
  • Santander ESPAÑA

2
Contenidos
  • Introducción
  • Testbed de CrossGrid
  • Objetivos principales
  • Distribución
  • Recursos de cada institución
  • Funcionamiento
  • Requisitos para la utilización del Testbed
  • Computación Paralela
  • Por qué es necesaria la computación Paralela?
  • MPI (Message Passing Interface)
  • Introducción
  • Funciones Básicas
  • Implementación de MPICH
  • Ejemplo MPI

3
Testbed de Crossgrid
  • Objetivos principales
  • Proporcionar infraestructura de recursos
    distribuidos
  • Dar soporte a la construcción del testbed en los
    distintos centros a través de Europa
  • Controlar los servicios de red requeridos por el
    testbed
  • Integrar el middleware y el software requerido
    por las distintas aplicaciones
  • Asegurar un nivel de interoperabilidad con otros
    testbed Grid (DataGrid, EGEE)
  • Coordinar las versiones de software facilitando
    la documentación y soportes apropiados

4
Testbed de Crossgrid
  • Distribución
  • Recursos de computación distribuidos a través de
    Europa
  • 16 instituciones repartidas por 9 países
    europeos

International Testbed Map
5
Testbed de Crossgrid
  • Los distintos centros del testbed proporcionaban
  • Servicios Grid, basados en
  • Globus
  • EDG (DataGrid project)
  • LCG (LHC Computing Grid)
  • CrossGrid
  • Miles de Gflops de poder de procesamiento y
    varios Terabytes de almacenamiento distribuido

6
Testbed de Crossgrid
  • Recursos de cada institución

I
7
Testbed de Crossgrid
  • Funcionamiento

8
Requisitos
  • Cuenta en una máquina UI
  • cgui.ifca.org.es
  • Certificado de CrossGrid
  • .globus
  • usercert.pem Permiso de lectura para todos los
    usuarios
  • userkey.pem Permiso de lectura para el usuario
  • Organización Virtual (VO)
  • cg
  • cgtut

9
Computación paralela
  • La que se realiza usando procesos separados.
  • Interactúan intercambiando información.
  • Existen diversos tipos de computación paralela.
    Todas usan distintos datos en cada proceso
  • Paralelismo en los datos (data-parallel)
    Mismas operaciones en datos distintos. También
    llamado SIMD (Single Instruction, Multiple Data).
    Máquinas vectoriales.
  • SPMD (Single Program, Multiple Data) Mismo
    programa, datos distintos.
  • MIMD (Multiple Instruction, Multiple Data)
    Programas y datos diferentes.
  • SPMD y MIMD son esencialmente lo mismo porque
    cualquier programa MIMD puede implementarse como
    SPMD.
  • MPI se utiliza principalmente para SPMD/MIMD.
  • HPF (High Performance Fortran) es un ejemplo de
    una interfaz de programación SIMD.

10
Por qué es necesaria?
  • Límites físicos en la mejora de las máquinas.
  • Los sistemas de alto rendimiento especializados
    resultan muy caros.
  • La computación paralela en clusters de PCs
    resulta más asequible.
  • Y hace más fácil compartir los recursos (como en
    el grid).
  • Muchos problemas pueden ser resueltos mucho más
    rápidamente gracias a la paralelización. Sin
    embargo, esta no es siempre una buena solución,
    depende mucho del tipo de problema a resolver.

11
MPI (Message Passing Interface)
  • Es una interfaz estándar (1993) para la
    programación usando el paradigma de paso de
    mensajes.
  • Sirve tanto para grandes computadores de memoria
    compartida, como para clusters o redes de
    ordenadores heterogéneos (incluido el grid
    computing).
  • Definida para C, C y FORTRAN.
  • Comprende una gran cantidad de funciones (128),
    macros, etc.
  • Pero con 6 funciones básicas se puede empezar a
    programar usando MPI.

12
MPI Funciones Básicas
  • Funciones necesarias para programar en MPI
  • MPI_Init Inicializa la ejecución del entorno
    MPI.
  • MPI_Comm_size Para averiguar el número de
    procesos.
  • MPI_Comm_rank Identifica el proceso.
  • MPI_Send Envía un mensaje.
  • MPI_Recv Recibe el mensaje.
  • MPI_Finalize Finaliza la ejecución del entorno
    MPI.
  • Referencia del estándar en
  • http//www-unix.mcs.anl.gov/mpi/

13
MPI Implementación MPICH
  • MPICH es una implementación gratuita de MPI 1.2
  • Es una implementación muy portable. Valida para
    Supercomputadores de memoria distribuida,
    Sistemas de memoria compartida, Clusters, Grid...
  • El Testbed de CrossGrid soporta
  • MPICH-P4 (Intracluster)
  • Usando JobTypeMPICH en el archivo JDL, y
    especificando NodeNumber (número de nodos
    necesarios para ejecutar el trabajo)
  • MPICH-G2 (Intercluster)
  • Usando JobTypeMPICH-G2 en el archivo JDL y
    NodeNumber.
  • Es una implementación grid de MPICH mediante el
    device globus2
  • Completamente rediseñada desde la anterior
    versión MPICH-G
  • http//www3.niu.edu/mpi/

14
MPICH-P4 y Grid
15
MPICH-G2 y Grid
16
Ejemplo
  • MPI_Gauss.jdl

Executable "gaussPar.exe"
JobType MPICH NodeNumber
5 VirtualOrganisation "cg"StdOutput
"std.out" StdError
"std.err" InputSandbox
"gaussPar.exe" OutputSandbox
"std.out","std.err","histograms.xml" Arguments
10
17
gaussPar.exe
  • Gauss.c programa que genera la distribución
    gaussiana. (MPI, C)
  • Se crea el archivo Makefile
  • Con este fichero se obtiene el ejecutable
    gaussPar.exe

MPI_DIR/opt/mpich-1.2.4/ch_p4 MPICC(MPI_DIR)/bi
n/mpicc all gaussPar.exe default
gaussPar.exe gaussPar.exe Gauss_MPI.o (MPICC)
-o gaussPar.exe Gauss.o -Llib lm Gauss_MPI.o
Gauss_MPI.c (MPI) -c Gauss_MPI.c clean
gaussPar.exe Gauss_MPI.o rm gaussPar.exe
Gauss_MPI.o
18
Más información
  • Proyecto Crossgrid
  • http//www.eu-crossgrid.org
  • Tutorial
  • http//www.eu-crossgrid.org/tutorial/EGC_2005_CGTu
    torial/CG4-Tutorial.pdf
  • JDL
  • http//server11.infn.it/workload-grid/docs/DataGri
    d-01-NOT-0101-0_6-Note.doc
  • MPI
  • http//www-unix.mcs.anl.gov/mpi/
  • http//www.llnl.gov/computing/tutorials/workshops/
    workshop/mpi/MAIN.html
  • http//www.lam-mpi.org/
  • .
Write a Comment
User Comments (0)
About PowerShow.com