germán larrazábal departamento de computación, facyt, universidad de carabobo glarraza@ u c.ve
DESCRIPTION
Introducción a la Computación de Alto Rendimiento: Computación Paralela, Computación Distribuida, Computación Grid y Más. Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.edu.ve. Contenido. Prefacio Qué es la Computación de Alto Rendimiento? - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/1.jpg)
Introducción a laComputación de Alto Rendimiento:
Computación Paralela, Computación Distribuida, Computación Grid y Más
Germán Larrazábal
Departamento de Computación, FACYT, Universidad de Carabobo
![Page 2: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/2.jpg)
Contenido
• Prefacio
• Qué es la Computación de Alto Rendimiento?
• Computación Paralela
• Computación Distribuida, Computación Grid, y más
• Futura tendencia en HPC
![Page 3: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/3.jpg)
Propósito
• Propósito del curso:– Educar a los investigadores acerca del valor e
impacto de las técnicas de computación de alto rendimiento (HPC) y tecnologías en ciencias computacionales e Ingeniería
– Educar a los investigadores acerca de las técnicas y herramientas de computación paralela, y mostrar las posiblidades que presentan éstas mediante computación distribuida y Computación Grid
![Page 4: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/4.jpg)
Metas
• Las metas de esta presentación son ayudar a:1. Entender en que se basa la computación de alto
rendimiento 2. Desarrollar un comprensivo entendimeinto sobre
la computación paralela 3. Comenzar a entender cómo la computación Grid
y Distribuida realzarán en el futuro las capacidades de las ciencias computacionales
![Page 5: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/5.jpg)
Contenido
• Prefacio
• Qué es la Computación de Alto Rendimiento?
• Computación Paralela
• Computación Distribuida, Computación Grid, y más
• Futura tendencia en HPC
![Page 6: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/6.jpg)
‘Supercomputación’• Primero, los sistemas HPC fueron sistemas
basados en vectores (e.g. Cray)– llamados ‘supercomputadores’ porque ellos eran
un orden de magnitud más poderosos que los sistemas comerciales
• Ahora, un ‘supercomputador’ está formado por computadores pequeños– Los sistemas grandes son versiones escaladas
de sistemas pequeños
• Sin embargo, la ‘Computación de Alto Rendimiento tiene varios significados
![Page 7: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/7.jpg)
Definiendo HPC
• Computación de Alto Rendimiento:– Puede significar muchas Flop
• Por procesador• En total sobre varios procesadores trabajando sobre un
mismo problema• En total sobre varios procesadores trabajando sobre
problemas relacionados
– Puede significar rápidez de ejecución• Sistemas más poderosos• Usando multiples sistemas simultáneamente
![Page 8: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/8.jpg)
Mi Definición
• HPC: Cualquier técnica computacional que soluciona un problema grande de forma más rápida que usando posiblemente sistemas simples
– Procesadores de alto redimiento (e.g. Cray, NEC)– Computación Paralela– Computación Distribuida– Computación Grid
![Page 9: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/9.jpg)
Mi Definición• Computación Paralela: sistemas simples con
varios procesadores trabajando sobre el mismo problema
• Computación Distribuida: varios sistemas acoplados por un secuenciador de trabajo sobre problemas relacionados
• Computación Grid: varios sistemas acoplados por software y redes para trabajar en conjunto en poblemas simples o en problemas relacionados
![Page 10: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/10.jpg)
Importancia de HPC
• HPC ha tenido tremendo impacto sobre todas las areas de ciencias computacionales e ingenieria en la academia, gobierno e industria.
• Muchos problemas han sido solucionados con técnicas de HPC que eran imposibles de solucionar con estaciones de trabajo individuales o computadores personales.
![Page 11: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/11.jpg)
Contenido
• Prefacio
• Qué es la Computación de Alto Rendimiento?
• Computación Paralela
• Computación Distribuida, Computación Grid, y más
• Futura tendencia en HPC
![Page 12: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/12.jpg)
Qué es un Computador Paralelo?
• Computación Paralela: el uso de multiples computadores o procesadores trabajando en conjunto sobre una tarea común
• Computador Paralelo: un computador que contiene multiples procesadores:– Cada procesador trabaja sobre su sección del
problema– Los procesadores permiten intercambio de
información con otros procesadores
![Page 13: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/13.jpg)
Computadores Paralelos vs. Seriales
• Dos grandes ventajas de los computadores paralelos:1. Rendimiento2. Memoria
• Los computadores Paralelos son capaces de resolver problemas que:– Requerien una rápida solución– Requieren gran cantidad de memoria– Ejemplo que requiere ambas: predicción de clima
![Page 14: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/14.jpg)
Computadores Paralelos vs. Seriales• Algunos beneficios de los computadores
paralelos:– muchos datos
• dominios muy grandes• búsqueda de soluciones en regiones muy grandes• muchas particulas
– muchos pasos de tiempo • largas ejecuciones• mejor resolución temporal
– ejecución más rápida• tiempo más rápidos para obtener solución• muchas soluciones al mismo tiempo• largas simulaciones en tiempo real
![Page 15: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/15.jpg)
Rendimento de un Computador Serial
0
20
40
60
1 6Time (years)
perf
orm
ance
Moore'sLawFuture(?)
Aunque la Ley de Moore’s ‘predice’ que el rendimiento de un simple procesador se dobla cada 18 meses, los limites físicos de la tecnología serán alcanzados
![Page 16: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/16.jpg)
Tipos de Computadores Paralelos
• La manera más simple y útil para clasificar los computadores paralelos modernos es por su modelo de memoria:– memoria compartida– memoria distribuida
![Page 17: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/17.jpg)
P P P P P P
BUS
Memory
M
P
M
P
M
P
M
P
M
P
M
P
Network
Memoria Compartida – Un espacio simple de direccionamiento. Todos los procesadores tienen acceso a un pool de memoria compartida. (Eje.: SGI Origin, Sun E10000)
Memoria Distribuida – cada procesador tiene su propia memoria local. Se debe hacer paso de mensaje para intercambiar datos entre procesadores. (Eje.: CRAY T3E, IBM SP, clusters)
Compartida vs. Distribuida
![Page 18: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/18.jpg)
P P P P P P
BUS
Memory
Acceso Uniforme a Memoria (UMA): Cada procesador tiene un acceso uniforme a memoria. También conocido como multiprocesadores simétricos, o SMPs (Sun E10000)
P P P P
BUS
Memory
P P P P
BUS
Memory
Network
Acceso No-Uniforme a Memoria (NUMA): El tiempo de acceso depende de la ubicación de los datos. Los accesos locales son más rápidos. Son más fácilmente escalables que SMPs (SGI Origin)
Memoria Compartida: UMA vs. NUMA
![Page 19: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/19.jpg)
Memoria Distribuida: MPPs vs. Clusters
• Nodos Procesador-memoria son conectados por algún tipo de red de interconexión– Procesador Masivamente Paralelo (MPP):
completamente integrado, imágen de un sistema simple.
– Cluster: computadores individuales conectados por un s/w
CPU
MEM CPU
MEM
CPU
MEM CPU
MEM CPU
MEM
CPU
MEM
CPU
MEM CPU
MEM CPU
MEM
InterconnectNetwork
![Page 20: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/20.jpg)
Procesadores, Memoria y Redes
• Los sistemas de memoria compartida y distribuida tienen:1. procesadores: RISC procesadores2. memoria: DRAM3. red/interconexión: entre los procesadores y
memoria (bus, crossbar, fat tree, torus, hypercube, etc.)
• Estas piezas se tienen que describir en detalles, comenzando con definiciones de terminos.
![Page 21: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/21.jpg)
Procesador-Términos Relacionados
Período de Reloj (cp): el mínimo intervalo de tiempo entre sucesivas acciones en el procesador. Fijo: depende del diseño del procesador. Medidas en nanosegundos (~1-5 para procesadores muy rápidos). Inverso de la frequencia (MHz).
Instrucción: una acción ejecutada por un procesador, tal como una operación matemática o una operación de memoria.
Registro: una pequeña y extremadamente rápida ubicación para almacenar datos o instrucciones en el procesador.
![Page 22: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/22.jpg)
Procesador-Términos Relacionados
Unidad Funcional (FU): un elemento de hardware que ejecuta una operación sobre un operando o parejas de operaciones. Comúmente las FUs son ADD, MULT, INV, SQRT, etc.
Pipeline : técnica de solapar multiples instrucciones en ejecución.
Superscalar: multiples instrucciones son posibles por período de reloj.
Flops: operaciones de punto flotante por segundo.
![Page 23: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/23.jpg)
Procesador-Términos Relacionados
Cache: memoria rápida (SRAM) cercana del procesador. Ayuda a mantener instrucciones y datos cercanos a las unidades funcionales, entonces el procesador puede ejecutar más instrucciones más rápidamente.
Translation-Lookaside Buffer (TLB): mantiene direcciones de páginas (bloques de memoria) en memoria principal que recientemente han sido accesados (una cache para direcciones de memoria)
![Page 24: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/24.jpg)
Memoria-Términos Relacionados
SRAM: Static Random Access Memory (RAM). Muy rápida (~10 nanosegundos), hecha usando el mismo tipo de tecnología del procesador, entonces la velocidad es comparable.
DRAM: Dynamic RAM. El tiempo de acceso es más lento (~100 nanosegundos), pero mantiene más bits y es menos costosa (10x más barata).
Jerarquía de Memoria: la jerarquía de memoria en un sistema paralelo, desde registros a cache a memoria local a memoria remota. Luego….
![Page 25: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/25.jpg)
Interconexión-Términos Relacionados
• Latencia: – Redes: Cuanto tiempo se lleva incializar el envio
de un "mensaje"? Medido en microsegundos.– Procesador: Cuanto tiempo se lleva la salida de
resultados de algunas operaciones, tales como suma punto flotante, dividir etc., las cuales son hechas en pipelined?)
• Ancho de Banda: Qué porcentaje de data puede ser sostenida una vez que el mensaje es inicializado? Medido en Mbytes/sec o Gbytes/sec
![Page 26: Germán Larrazábal Departamento de Computación, FACYT, Universidad de Carabobo glarraza@ u c.ve](https://reader035.vdocuments.co/reader035/viewer/2022062810/56815e38550346895dcc9cee/html5/thumbnails/26.jpg)
Interconexión-Términos Relacionados
Topología: la forma en la cual los nodos son conectados. – La mejor elección es conexión completa (cualquier
procesador con cualquier otro). Infactible debido a razones de costo y escalamiento.
– Por ejemplo, los procesadores son conectados en alguna variación de mallas, torus, o hypercube.
3-d hypercube 2-d mesh 2-d torus