SESION 05
High Performance Computing
Cluster Computing
Grid Computing
Ing. Rolando Navarro Jara
HIGH PERFORMANCE COMPUTING- HPC
Denominado “Computación de alto rendimiento”, es la herramienta más importante en “computación distribuida” para
la resolución de problemas complejos empleando recursos computacionales.
Las tecnologías más empleadas son: Supercomputadoras, Clusters, Grid.
En la actualidad, los sistemas HPC se basan en “computación distribuida” y “programación paralela”.
Las áreas que demandan mayor uso de esta tecnología con: Biotecnología, Bioinformática, Ingeniería de
modelamiento, Ingeniería Química, Investigación universitaria, Procesamiento digital, Climatología, Energía, etc.
Muchos de los sistemas HPC se construyen sobre versions personalizadas de Linux.
En las tecnologías Clúster y Grid, las redes de interconexión desempeñan un factor crítico para el éxito en la
maximización de los recursos.
CLÚSTER COMPUTING
El primer clúster fue desarrollado por IBM en 1960.
Esta tecnología require de altas velocidades de interconexión.
Un clúster es un tipo de sistemas de procesamiento paralelo ó
distribuido, el cual consiste en la intreconexión de computadoras que
trabajan como un ú[Link] recurso.
Es una alternativa económica versus los Supercomputores.
Una de sus principales caracterísiticas es la “ALTA DISPONIBILIDAD”.
Muchas de las soluciones estan basadas en herramientas Open Source
como por ejemplo: ROCKs, CONDOR, OpenMP, etc
ARQUITECTURA DE UN CLÚSTER
ELEMENTOS DE UN CLUSTER
ALGORITMOS DE
ESTRUCTURA FISICA Y DE PROGRAMACIÓN PARALELA,
GESTIÓN Y ADMINISTRACIÓN
HARDWARE LIBRERIAS Y HERRAMIENTAS
NECESARIAS
Procesador Gestión de colas Algoritmos: C, C++,
Fortran77, y the Gnu Java
Memoria Gestión de recursos Compiler.
Disco Duro Monitoreo Librerias: ATLAS, GSL, GMP.
Interface de Red Registro de actividades Herramientas: MPI, MPICH.
ESTRUCTURA FÍSICA Y DE HARDWARE
Esta conformada por los nodos que conforman el Sistema, los nodos pueden ser computadores tradicionales o con
configuraciones personalizadas de procesamiento y memoria.
Los nodos no requieren de recursos de audio, alta calidad de video, impresora, o accesorios similares que son
empleados en nuestros domicilios. Si se requieren recursos de gestión y administración.
Los elementos fundamentales son:
Microprocesador
Memoria
Buena capacidad de comunicación entre el hardware y el Sistema Operativo (I/O Capabilities)
Unidades de almacenamiento
Tarjetas de red (NIC)
GESTIÓN Y ADMINISTRACIÓN
Son los mecanismos que el administrador debe de emplear para garantizar la disponibilidad de los recursos. Uno
de los factores importantes de esta tecnología es el de facilitar a los usuarios su uso y por ende se deben de
tener adecuados mecanismos de gestión y administración.
Las principales tareas que se deben de tener en consideración son:
Gestión de las colas (Job Queuing)
Calendarización de actividades (Scheduling)
Control de los recursos (Resource Control)
Monitoreo (Monitoring)
Registro de actividades (Accounting).
ALGORITMOS DE PROGRAMACIÓN PARALELA,
LIBRERIAS Y HERRAMIENTAS NECESARIAS
Un algortimo es un procedimiento para resolver un problema, un algoritmo paralelo son procedimientos
que buscan resolver el problema de manera paralela.
El “core” de los clúster es la resolución de problemas empleando algoritmos paralelos, sin embargo
también pueden ejecutarse algortimos secuenciales.
La mayoría de algoritmos estan basados en C, C++, Fortran77, y the Gnu Java Compiler.
Adicionalmente, otro factor importante son las librerías, quienes ejecutan rutinas específicas. Entre las
principales librerías se tienen: ATLAS, GSL, GMP.
Finalmente, se debe de identificar las herramientas que permitan hacer uso de los algortimos y librerías,
entre ellas tenemos MPI, PV, MPICH, etc.
GRID COMPUTING
DATA S
C
I
E
N
C
E
CONCEPTOS
Es una tecnología que deriva de “Computación distribuida” que esta compuesta por cluster,
computadoras sencillas que trabajan en conjunto para realziar tareas grandes.
Foster and Kesselman, 1999 : Es una tecnología que facilita la ejecución de aplicaciones de gran
escala sobre recursos computacionales distribuidos.
Se basa en “virtual organizations” (comunidades virtuales) para compartir recursos que se
encuentran geograficamente distribuidos con un único propósito – “realizar la tarea asignada”.
BENEFICIOS
Explotar recursos sub-utilizados
Adecuado balanceo de carga
Virtualizar recursos dentro de la empresa (Data Grids, Compute
Grids)
ARQUITECTURA GRID
Incluye aplicaciones en ciencia, ingeniería y más, además de
portales y grupos de herramientas de desarrollo cuya función es
APLICACIONES apoyar a las mismas aplicaciones.
Es la capa con la que interactúan los usuarios
Brinda las herramientas que permiten a los distintos componentes
como servidores, base de datos, redes, entre otros participar en un
MIDDLEWARE Grid.
Se considera “el cerebro” de la computación grid.
Contienen los actuales recursos de Grid, tales como
RECURSOS computadores, sistemas de almacenamiento, catálogos de datos
electrónicos, sensores entre otros que están conectados a la red.
RED Conecta los recursos en el Grid.
GRID MIDDLEWARE
Los Grid son gestionados a través de “grid – ware”, el cual es un tipo de middleware que
habilita la “compartición y gestión de los compomentes de un grid” .
Grid-ware esta basado en los requerimientos del usuarios y los atributos del recursos. Por
ejemplo: capacidad, eficiencia)
El middleware tiene las siguientes funciones:
Ejecutar las aplicaciones en los recursos que se encuenren disponibles.(Brokering, Scheduling)
Facilitar el acceso a los recursos: Servicios Web, Interfaces de interconexión , entre otras.
Organizar las políticas de seguridad y de acceso entre dominios.
Brindar el estado de las aplicaciones: Monitoreo y control
ESTRUCTURA GRID
Grid Information Service system Grid Information Service Details of Grid resources
collects the details of the available
Grid resources and passes the
information to the resource broker. 1
Computational jobs
Grid application
Processed jobs
Computation result
User Resource Broker
A User sends computation or data A Resource Broker distribute the jobs in an Grid Resources
intensive application to Global Grids application to the Grid resources based on user’s
QoS requirements and details of available Grid Grid Resources (Cluster, PC,
in order to speed up the execution of Supercomputer, database, instruments, etc.)
the application. resources for further executions.
in the Global Grid execute the user jobs.
TIPOS DE GRID
Intragrid
• Grid local que se encuentra dentro de una organización
• Basado en la los contratos que se tienen con los trabajadores
Extragrid
• Recursos de un grupo de organizaciones - consorcios.
• Conexiones a través de redes privadas - VPN
• Basado en los contratos establecidos entre las organizaciones
Intergrid
• Recursos que se encuenyran compratidos en Internet
• Basado en certificados digitales
• No necesariamente existen contratos.
PRINCIPALES MÉTODOS DE GRID COMPUTING
Distributed Supercomputing
Combina múltiples recursos de alta capacidad dentro de un Grid formando un único “Virtual Distribuited
Supercomputing”
High-Throughput Computing
Usa el Grid para programar un gran número de tareas estructura flexible o independiente con el objetivo de utilizar los
procesadores en el momento que no esten siendo empleados.
On-Demand Computing
Emplea el Grid para satisfacer necesidades a corto plazo de los recursos que no son accesibles a nivel local.
Data-Intensive Computing
Usualmente empleado en sistemas distribuidos de “Data Mining”.
DATA GRID
Data Grid, es un componente de un entorno Grid que tiene como función el compartir de
manera contralada y gestionada una gran cantidad de datos distribuidos.
En la actualidad las aplicaciones científicas y de ingeniería son las que requiren acceder a
grandes cantidades de datos, que usualmente se encuentra distribuidas. En ese sentido, el
Data Grid es quien se encarga de brindar el acceso a la información sea en los components
locales o remotos para que sean procesados por el Grid y de esta manera se realicen los
cálculos.
Ejemplos:
Biomedical informatics Research Network (BIRN),
the Southern California earthquake Center (SCEC).
BIOMEDICAL INFORMATION RESEARCH NETWORK
GRIDS EN EL MUNDO
Globus – Universidad de Chicago
Condor – Universidad de Wisconsin
Legion – Universidad de Virginia
IBP – Internet back pane – Universidad de Tenesse
Proyecto BOINC - Programa de computación voluntaria
Proyecto Access Grid – Soporta intreacciones grupo a grupo (multiconferencias)