Vous êtes sur la page 1sur 39

Computación científica

Perspectivas de la Computación Científica.


Clusters, Grids y Clouds. Desarrollos y retos
Raúl Ramos Pollán
Universidad Nacional de Colombia

Universidad Nacional, Bogotá, Enero 2013 1


Computación científica

Computación Científica

“La Ciencia e Ingeniería Basada en la Simulación ha


alcanzado hoy día un nivel de capacidad predictiva
que complementa sólidamente los pilares
tradicionales de teoría, experimentación y
observación … Muchas tecnologías críticas … están
en un horizonte que no pueden ser entendidas,
desarrolladas o usadas sin simulación por
computador”.

http://www.wtec.org/sbes/

Universidad Nacional, Bogotá, Enero 2013 2


Computación científica

Computación Científica
Algoritmos/Aplicaciones

Datos

Infraestructura de cómputo

Recurso humano/ Comunidades científicas

Universidad Nacional, Bogotá, Enero 2013 3


Computación científica

Aplicaciones – Fine grained parallelism

Descomposición en elementos finitos

Predicción climática
Docking de proteínas

Universidad Nacional, Bogotá, Enero 2013 4


Computación científica

Aplicaciones – Coarse grained parallelism


Particiones de datos
Data scans / aggregations / summaries
Summatory query form over data

Logs processing, index generation 


Map/reduce, Hadoop

Simulación Montecarlo

Universidad Nacional, Bogotá, Enero 2013 5


Computación científica

Aplicaciones
Coarse computation for fine grained parallelism Generate
configurations
Barridos de parámetros
(ejemplo Stellerator TJ-II en la Grid)

Simulate Simulate Simulate Simulate


device device device device
conf 1 conf 2 …. conf n

Evaluate
configurations

Universidad Nacional, Bogotá, Enero 2013 6


Computación científica

Paralelización de algoritmos
• Naturaleza de los algoritmos

Universidad Nacional, Bogotá, Enero 2013 7


Computación científica

Paralelización de algoritmos

• Recurso computacional disponible (GPUs, Cluster, Grids,


Clouds, …)
• Topología interconexión unidades de cómputo
• Estrategias para explotar recursos computacionales
Por paralelización intrínseca del algoritmo
Por barrido de parámetros
Por partición de datos

Universidad Nacional, Bogotá, Enero 2013 8


Computación científica

Ejemplos de algoritmos
Procesamiento de imágenes  operaciones en regiones (i.e. contraste)


and perform n iterations

Universidad Nacional, Bogotá, Enero 2013 9


Computación científica

Ejemplos de algoritmos
Particionamiento no trivial  por algoritmo
(otra estrategia  por datos para muchas imágenes, pero cada una
tiene que caber en memoria)

Universidad Nacional, Bogotá, Enero 2013 10


Computación científica

Ejemplos de algoritmos
Particionamiento no trivial

Universidad Nacional, Bogotá, Enero 2013 11


Computación científica

Paralelización de KMeans

 Paralelizar asignación y el cálculo


de la media para cada centroide


Universidad Nacional, Bogotá, Enero 2013 12
Computación científica

Map-reduce, Hadoop

Universidad Nacional, Bogotá, Enero 2013 13


Computación científica

Map-reduce, Hadoop

Universidad Nacional, Bogotá, Enero 2013 14


Computación científica

Escalabilidad
• Ley de Amdahl
N: Núm. nodos paralelos P: Proporción paralelizable del código S(N): speedup máximo

Universidad Nacional, Bogotá, Enero 2013 15


Computación científica

Infraestructuras de computación

• Clusters
• Supercomputadores
• Clouds
• Grids
• GPUs
• Computación oportunista

Universidad Nacional, Bogotá, Enero 2013 16


Computación científica

Top500, distribución histórica (www.top500.org)

Universidad Nacional, Bogotá, Enero 2013 17


Computación científica

Top500, distribución histórica (www.top500.org)

Universidad Nacional, Bogotá, Enero 2013 18


Computación científica

Clusters
• Planificación de tareas  Batch jobs
• Sistema compartido de archivos
• Fast inter-networking for inter-process communication
Shared storage

Universidad Nacional, Bogotá, Enero 2013 19


Computación científica

Supercomputadores
• Planificación de tareas  Batch jobs
• Memoria compartida
• Procesos multi-nodo

Universidad Nacional, Bogotá, Enero 2013 20


Computación científica

Grids
• Redes de datacenters
• Particiones de procesos independientes
• Heterogéneos
• Federación vs distribución
• Middleware propio

Universidad Nacional, Bogotá, Enero 2013 21


Computación científica

Clouds
• Desacoplamiento infraestructura física
• Modelo de cómputo no fijo: IaaS, PaaS, SaaS

Universidad Nacional, Bogotá, Enero 2013 22


Computación científica

Computación oportunista
• Sobre recursos no propios
• Computación voluntaria, labs de escuelas, etc.

Universidad Nacional, Bogotá, Enero 2013 23


Computación científica

GPUs
• Computación matricial
• Procesadores simples y masivos

Universidad Nacional, Bogotá, Enero 2013 24


Computación científica

Datos científicos
• Colecciones de datos

• Adquisición de datos

• Colisiones LHC, secuenciaciones, digitalizaciones, bancos


de imágenes, mapas

Universidad Nacional, Bogotá, Enero 2013 25


Computación científica

Datos científicos

• Orígenes
• Distribución
• Estándares y formatos
• Propiedad y responsabilidades

Universidad Nacional, Bogotá, Enero 2013 26


Computación científica

Datos científicos
• Orígenes
• Distribución
• Estándares y formatos
• Propiedad y responsabilidades

Universidad Nacional, Bogotá, Enero 2013 27


Computación científica

Big Data
• manejo de datasets de tamaño >> capacidad de las
herramientas tradicionales de bases de datos
• según la tecnología avanza con el tiempo, el tamaño de
los conjuntos de datos a los que denomina el término
también crecerán, si cabe, a un aún ritmo mayo

• Requiere nuevo modelo (no sirven BBDD tradicionales,


paquetes estadísticos/visualización desktop)

• Objetivo  Escalabilidad «trivial»

Universidad Nacional, Bogotá, Enero 2013 28


Computación científica

Bases de datos NoSQL


• Expresividad SQL vs. Escalabilidad

• Tablas: filas de keys + lista no fija de columnas/valores


• Operaciones simples:
Scan por key
Acceso directo por key
Transacciones mínimas (check&put)
No joins, no SQL language
• Big table, Hbase, DynamoDB, Azure, Cassandra, etc.

Universidad Nacional, Bogotá, Enero 2013 29


Computación científica

Arquitectura HBase

Universidad Nacional, Bogotá, Enero 2013 30


Computación científica

La Gente
Científicos
Ingenieros
Programadores
Gestores de proyecto
Administrativos

Universidad Nacional, Bogotá, Enero 2013 31


Computación científica

Formación multidisciplinar

Conclusión 1: El mundo de la computación es plano, cualquiera puede acceder. Lo


que nos distinguirá del resto del mundo es nuestra habilidad para hacerlo mejor y
explotar las nuevas arquitecturas que desarrollamos antes de que dichas
arquitecturas sean universalmente usadas.

Conclusión 2: La educación y formación inadecuadas de la siguiente generación de


científicos computacionales amenaza el crecimiento global de la Ciencia e Ingeniería
Basadas en Simulación. Esto es particularmente urgente [...]; a no ser que
preparemos a los investigadores para desarrollar y usar la próxima generación de
algoritmos y arquitecturas de computadores, no seremos capaces de explotar sus
capacidades para cambiar las reglas del juego.

http://www.wtec.org/sbes/

Universidad Nacional, Bogotá, Enero 2013 32


Computación científica

Escenarios y Retos
Código sucio o poco
estructurado
Falta de
documentación
Arquitecturas de
software y datos
espontáneas Código mezclado
(paralelo, seq, …) Procesos de desarrollo
informal

Comunidades científicas
tradicionales

Procesos de desarrollo
informal

Universidad Nacional, Bogotá, Enero 2013 33


Computación científica

Decisiones
Cloud? Grid?

Modificar
algoritmos? Adaptarse al
hardware
Me dedico a
disponible?
otra cosa?
Contribuir al
software? Duplico
datasets?

Comprar Comunidad
hardware? científica? GPU?
Universidad Nacional, Bogotá, Enero 2013 34
Computación científica

SOLOS NO SOMOS NADA


Mantener hardware es caro

Portar aplicaciones es caro

Criterios científicos, técnicos y


organizacionales

Cambios generacionales

Universidad Nacional, Bogotá, Enero 2013 35


Computación científica

A corto plazo
Medir el alcance del sw/hw
disponible

Medir recurso humano


disponible

Afinar objetivos y esfuerzo

Adaptar objetivos científicos


a posibilidades

Universidad Nacional, Bogotá, Enero 2013 36


Computación científica

A medio/largo plazo
Construir equipos Actualizar programas de
multidisciplinares capacitación (BSc Msc PhD)

Cultura HPC en la ciencia y Generar frameworks y


Cultura científica en ingeniería modelos de computación

Iniciar procesos de Generar frameworks y


planificación de software modelos de computación

Regeneración generacional Estrategias transnacionales

Universidad Nacional, Bogotá, Enero 2013 37


Computación científica

Conclusiones
EL USO DEL CÓMPUTO CIENTÍFICO ES INEVITABLE

• La computación científica es un reto tecnológico,


científico y organizacional
• Científicos e ingenieros computacionales se necesitan
mutuamente  equipos multidisciplinares
• Tecnología vs. Modelos de computación vs.
Disponibilidad de recursos (humanos + técnicos)
• Conciliar estrategias a corto, medio y largo plazo

CAMBIO DE PARADIGMA  EVITAR OBSOLESCENCIA


Universidad Nacional, Bogotá, Enero 2013 38
Computación científica

Universidad Nacional, Bogotá, Enero 2013 39

Vous aimerez peut-être aussi