Computación Científica en Paralelo Luis Miguel de la Cruz luiggix@gmail.com www.dci.dgsca.unam.mx/luiggi Unidad de Investigación en Cómputo Aplicado DGSCA-UNAM. Posgrado en Ciencia e Ingeniería de la Computación LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 1 / 36
Contenido 1 Introducción Naturaleza del Cómputo científico Grand Challenge Problems Modelación matemática y computacional The need for speed LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 2 / 36
1 Introducción Naturaleza del Cómputo científico Grand Challenge Problems Modelación matemática y computacional The need for speed LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 3 / 36
Computer Science or Scientific Computing? Ciencias de la computación (Computer Science) Estudio de los fundamentos teóricos del cómputo, las computadoras y el procesamiento de la información. Cómputo científico (Scientific Computing) Construcción de modelos matemáticos y de técnicas numéricas para resolver problemas de la ciencia y de la ingeniería. También conocido como Modelación Matemática y Computacional. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 4 / 36
Qué es el Cómputo Científico? El cómputo científico es resolver (aproximar) problemas de ciencia e ingeniería usando computadoras. el tercer pilar de la ciencia. una actividad multidisciplinaria. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 5 / 36
Cómputo y Ciencia El cómputo científico tuvo un desarrollo muy significante en las últimas dos décadas. Desarrollo de nuevas arquitecturas. Desarrollo de algoritmos eficientes. Se ha convertido en una herramienta indispensable en casi todas las disciplinas científicas. Es particularmente útil en la solución de problemas que son insolubles analíticamente o cuyo experimento es imposible difíciles, lentos, caros y peligrosos. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 6 / 36
1 Introducción Naturaleza del Cómputo científico Grand Challenge Problems Modelación matemática y computacional The need for speed LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 7 / 36
Grand Challenge Problems Federal High Performance Computing and Communications Program (HPCC) establecido en 1991 [1]. El HPCC definió una clase de problemas conocidos como Grand Challenge Problems(GCP). Un GCP es un problema fundamental de ciencia y/o ingeniería, NO resuelto en la actualidad, con muchas aplicaciones y cuya solución requiere del uso de grandes recursos de cómputo, los cuales estarán disponibles en un futuro cercano. La solución de un GCP tendría un gran impacto económico y social significante. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 8 / 36
GCPs Dinámica de Fluidos Computacional (CFD) aerodinámica (aviones, autos, submarinos), predicción del clima, estudio del cambio climático global, recuperación eficiente de hidrocarburos. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 9 / 36
GCPs Cálculos de la estructura electrónica mejores medicamentos agentes inmunológicos En 1998 John Pople obtuvo el premio nobel de química gracias al desarrollo de métodos computacionales en química cuántica. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 10 / 36
GCPs Más ejemplos Formación de galáxias Naturaleza fundamental de la materia cromodinámica cuántica teoría de la materia condensada. Dinámica de plasmas fusión de energía tecnologías militares seguras y eficientes. Cálculos simbólicos reconocimiento de voz visión por computadora entendimiento del lenguaje natural razonamiento diseño, manufactura y simulacion de sistemas complejos. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 11 / 36
1 Introducción Naturaleza del Cómputo científico Grand Challenge Problems Modelación matemática y computacional The need for speed LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 12 / 36
Cómo se hace la MMC? LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 13 / 36
Modelo Físico La construcción del modelo físico de un problema debe tomar en cuenta todos los procesos que se desean estudiar durante una simulación. Simulación de yacimientos petroleros (SYP) Rasgos geológicos y estructurales del yacimiento. Fallas, delimitación de unidades geológicas, tipos de rocas y su distribución, etc. Distribución de las propiedades petrofísicas de roca y fluidos. Porosidad, permeabilidad, saturación, etc. Tipo de modelo Una, dos o tres fases (petróleo, agua, aceite). Composicional Modelos térmicos. Reacciones químicas LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 14 / 36
Modelo Matemático Es un conjunto de ecuaciones matemáticas las cuales gobiernan el comportamiento del fenómemo bajo estudio. SYP: Petróleo negro Conservación de masa (φρ w S w ) t = (ρ w u w )+q W (φρ Oo S o ) t = (ρ Oo u o )+q O t (φ(ρ G o S o + ρ g S g )) = (ρ Go u o + ρ g u g ) + q G Ecuaciones constitutivas u α = 1 µ α k α ( p α ρ α z), α = w, o, g. S w + S o + S g = 1; p cow = p o p w ; p cgo = p g p o ; LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 15 / 36
Modelo discreto En general no existe solución analítica del modelo matemático. Se usan métodos numéricos para aproximar las soluciones bajo diferentes circunstancias. El problema se transforma en un modelo discreto: Discretización del espacio Discretización de las ecuaciones matemáticas continuas. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 16 / 36
Modelo discreto: espacio La discretización del espacio es una tarea muy compleja que depende de: que tan irregular es el dominio físico de estudio que precisión se desea en la aproximación de la solución. SYP: generación de la malla Irregulares y con fallas. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 17 / 36
Modelo discreto: espacio En los métodos numéricos tradicionales se requiere de la construcción de una malla sobre el dominio físico de estudio. Métodos libres de malla (Mesh-free o Grid-less). LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 18 / 36
Modelo discreto: ecuaciones La discretización de las ecuaciones matemáticas continuas depende del tipo de discretización del espacio. Algunos métodos de discretización Diferencias finitas. Volumen finito. Elemento finito. Métodos espectrales. Métodos libres de malla. La discretización produce sistemas algebraicos de ecuaciones. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 19 / 36
Solución El modelo discreto genera un conjunto de ecuaciones. Algebraicas (lineales o no lineales). El número de ecuaciones puede ser muy grande El método de solución depende de la forma de las ecuaciones discretas y de sus propiedades matemáticas. SYP: Número de ecuaciones Modelo petróleo negro: 9 ecs. por nodo de la malla y el mismo número de incógnitas. Modelo composicional: 2 N c + 9 ecuaciones en cada nodo, con el mismo número de incógnitas. N c es el número de componentes. Para 80,000 nodos: Petróleo negro: 7,2 10 5 Composicional: N c = 5; 1,5 20 6. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 20 / 36
Visualización y análisis Que hacer con miles y miles de números? Visualización científica: mapear números en dimensiones perceptuales para hacer la información entendible. Visual, auditiva y táctil. Algoritmos actuales de extracción de información. Nuevas tecnologías estereoscopía despliegues amplios e interfaces. cluster s gráficos con GPUs de última generación (ATI, nvidia, etc.) programación de la GPU. Existen muchos GCP en visualización científica y graficación por computadora. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 21 / 36
1 Introducción Naturaleza del Cómputo científico Grand Challenge Problems Modelación matemática y computacional The need for speed LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 22 / 36
Ley de Moore En 1965 Gordon Moore se dió cuenta que el número de transistores en un circuito integrado se podía duplicar cada 18 meses (Ley de Moore[2].) Sin embargo esta ley no puede ser válida por siempre. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 23 / 36
Velocidad de una computadora Proporcional al número de transistores por unidad de área. FLOPS FLoating point Operations Per Second, es una medida del desempeño de una computadura, usada especialmente en el área de cómputo científico donde se requieren de muchos cálculos de punto flotante. Similar a instrucciones por segundo (MIPS). La S significa segundo, a veces se considera FLOPS como plural y/o singular. FLOP Algunas veces se usa FLOP como una abreviación de Floating-point OPeration y es una cuenta de las operaciones de punto flotante requeridas por un algoritmo. En este contexto FLOPS es el plural y no una medida de velocidad. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 24 / 36
FLOPS Nombre Símbolo FLOPS Mega FLOPS MFLOPS 10 6 Giga FLOPS GFLOPS 10 6 Tera FLOPS TFLOPS 10 12 Peta FLOPS PFLOPS 10 15 Exa FLOPS EFLOPS 10 18 Zetta FLOPS ZFLOPS 10 21 Yotta FLOPS YFLOPS 10 24 Xera FLOPS XFLOPS 10 27 LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 25 / 36
Limitaciones sobre la velocidad La velocidad de la luz es una limitación intrínseca sobre la velocidad de una computadora. Computadora: 1TB memoria, 1 TFLOPS velocidad Los datos tienen que recorrer una distancia r para ir de la memoria al CPU, 10 12 veces / seg a la vel. de la luz c. Si c = 3 10 8 m/s entonces r c/10 12 = 0,3mm. El tamaño debe ser de 0,3mm por lado. La memoria es construida como una rejilla plana de bits, en este caso 10 6 10 6 palabras. Si la rejilla es de 0,3mm 0,3mm entonces una palabra ocupa 3A 3A (escala atómica). Por donde metemos los cables? LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 26 / 36
Requerimientos en un GCP La ley de Moore limita la solución de GCP. SYN: Modelo composicional Se consideran N c componentes de hidrocarburos. Fases: agua, aceite y gas. 2 N c + 9 ecuaciones e incógnitas por nodo. En una simulación típica se requieren 5 10 6 nodos. Total de incógnitas para Nc = 5 es 1 10 8, por paso de tiempo. Simulación de 1 hr, resultados cada min. : 5,7 10 9 Generalmente se requieren miles de simulaciones : 5,7 10 12 Escalamiento (Upscaling) : reducción del número de nodos. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 27 / 36
Alternativa para resolver GCP High-performance computing (HPC) Provee de recursos computacionales con más de un orden de mágnitud de poder computacional que una PC de escritorio. Estos recursos agrupados en un mainframe se suele llamar supercomputadora, aunque también es posible tener el mismo poder mediante el arreglo de computadoras o clusters. Las supercomputadoras y/o clusters son usados para resolver problemas complejos de gran escala (GCP). HPC y supercómputo son usados como sinónimos. Dentro de HPC se utilizan diferentes técnicas: Vectorización, Pipelining, Paralelismo, etc. El uso efectivo de HPC requiere de aprender a desarrollar estas técnicas dentro de un código. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 28 / 36
Top 500 Lista de supercomputadoras más poderosas en el mundo [3]. 1.- Roadrunner, LANL, USA, 122,440 cores, 1026.00 TFLOPS (1 PFLOP). 126 1.- Kanbalam, UNAM, MX, 1,368 cores, 7.1 TFLOPS. 1 Noviembre, 2006 LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 29 / 36
Ley de Moore vs HPC LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 30 / 36
Top 10 LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 31 / 36
Desempeño hasta 2009 LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 32 / 36
Desempeño proyectado hast 2019 LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 33 / 36
Ley de Moore en la práctica LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 34 / 36
Beneficios de HPC Aprender HPC requiere de mucho esfuerzo. Con HPC se puede mejorar un código para que en vez de 1 día se ejecute en 1 hr. Por qué no esperar 1 día? Respuestas: HPC nos da lo que no se obtiene en ningún otro lugar: hacer ciencia más grande, más rápido y más emocionante. Si un código corre más rápido significa que puede resolver problemas más grandes que los comunes en la misma cantidad de tiempo. Lo que pasa hoy en HPC será lo que se tenga en una PC de escritorio mañana en 10 o 15 años. Cualquier experiencia en HPC nos da una visión del futuro. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 35 / 36
Apéndice Bibliografía I High-Performance Computing and Communications Program. http://www.hpcc-usa.org/ G. Moore. Cramming more components onto integrated circuits. Electronics, 38(8), 1965. Top 500 Supecomputing sites. http://www.top500.org. LMCS (UNAM) Comp. Científica en Paralelo IIMAS Semestre 2009 II 36 / 36