tema 1: introducción motivación del procesamiento paralelo, su “inevitabilidad”...

32
Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva histórica y enfoque actual Avance sobre Arquitecturas de Paso de Mensajes (introducción a las prácticas de la asignatura) Evaluación de las prestaciones de un sistema paralelo y sus límites (Ley de Amdahl)

Upload: maria-soledad-rojo-soler

Post on 31-Jan-2016

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Tema 1: Introducción

Motivación del procesamiento paralelo, su

“inevitabilidad”

Supercomputadores: Los Top 500

Paralelismo en Multiprocesadores: Perspectiva

histórica y enfoque actual

Avance sobre Arquitecturas de Paso de Mensajes

(introducción a las prácticas de la asignatura)

Evaluación de las prestaciones de un sistema

paralelo y sus límites (Ley de Amdahl)

Page 2: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Arquitecturas Paralelas

Un computador paralelo es una colección de elementos deprocesamiento que cooperan para resolver rápidamente grandes problemas computacionales.

Cuestiones abiertas:

• ¿Cuántos elementos de procesamiento?

• ¿De qué potencia son esos elementos?

• ¿Cuánta memoria hay disponible?

• ¿Cómo se comunican los procesadores?

• ¿Cuáles son las abstracciones para expresar la

cooperación?

•¿Cómo se traduce todo esto en rendimiento?

•¿Cómo se escala la arquitectura?

Page 3: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

¿ Porqué estudiar las Arquitecturas Paralelas ?

•A nivel de prestaciones, la computación paralela nos

coloca varios años por delante respecto a sistemas

monoprocesadores. Su uso es, pues, inevitable en

muchas aplicaciones reales en la actualidad.

•Proporcionan una alternativa a basar las prestaciones

únicamente en la frecuencia de reloj del procesador.

Su uso es, pues, inevitable desde el punto de vista

tecnológico.

•Este estudio se aplica a todas las etapas de diseño,

abriendo posibilidades de paralelismo en muchos

niveles.

Page 4: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Abstracción del Pase de Mensajes

•La combinación send-recv establece una copia memoria a memoria y una sincronización entre los procesos involu- crados

•Enviar un mensaje consume mucho tiempo: - Construir la cabecera del mensaje; copiar los datos en el buffer de la red; enviar el mensaje; copiar los datos en el buffer receptor; copiar los datos del espacio S.O. al es- pacio usuario

Page 5: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Inevitabilidad Tecnológica (I): General

•En cuanto a tecnología del chip, los factores principales de diseño que afectan a las prestaciones son: - Disminución del “feature size” (d) - Aumento del tamaño del chip en si mismo (waffer scale integration)

•La disminución del “feature size (d)” se traduce en:

- Aumento de la velocidad de reloj proporcional a - Aumento del número de transistores proporcional a

(efecto total proporcional a

•¿ Cuánto cabe esperar que continúe disminuyendo - Ley de Moore (Dr. Gordon Moore, Chairman, Intel) - “La densidad de circuitos en un chip se dobla cada 18 meses”.

Nota: Ley totalmente empírica)

Page 6: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Inevitabilidad Tecnológica (II): Paralelismo y Ley de Moore

* Ley de Moore

Prestaciones pico de varios computadores a lo largo de los años

La experiencia demuestra que la ley empírica de Moore seCumple en la práctica.(Nota: La Ley de Moore se aplica solo a “prestaciones pico”.Las prestaciones finales se ven muy afectadas por otras con-sideraciones de diseño, muchas de ellas relacionadas conel software).

Page 7: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

* Barreras - Hipótesis: No es posible crecer más que lo indicado por la Ley de Moore (que aún siendo mucho, es un límite)

Extrapolación de tasas de crecimiento de prestaciones (análisis de los top 500)

Page 8: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

* Consideraciones

Adicionalmente es concebible que finalmente se llegue

a los límites de las actuales tecnologías de semiconduc-

tores, necesitándose un cambio cualitativo imprevisible.

Conclusión:

Paralelismo en la ejecución de operaciones como única

forma de sobrepasar la Ley de Moore.

Page 9: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Inevitabilidad Tecnológica (III): Memoria (I)

• Descomposición de un problema

* Computación

* Datos

* Visualización

• Consideraciones sobre la memoria

* Es un hecho que el volumen de datos asociados

a las necesidades computacionales actuales cre-

ce de una forma exponencial.

* Es un hecho que la velocidad de acceso a memo-

ria crece mucho más lentamente que la velocidad

a la que se puede operar con los datos

Page 10: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Inevitabilidad Tecnológica (III): Memoria (II)

Gráfica de aumento de la velocidad y capacidad de la memoria

Conclusión:

1) Paralelismo en la ejecución como forma de enmascarar latencias de acceso a memoria.

2) Paralelismo en el acceso a los datos en diferentes bancos de memoria.

Page 11: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Inevitabilidad en las aplicaciones

Nuevas áreas de computación científica emergen, y otras seconsolidan, con necesidades generales de computación quecrecen experimentalmente.-

BioInformática:

- Distintos proyectos Genoma

(por ejemplo “Proyecto Genoma Humano”)

- Proyectos en Genoma Estructural

- Farmacogenómica: nuevas revoluciones en

medicina.

Medicina:- Paso de scanners en 2D a scanners en 3D y 4D.

Física:

- Física atómica

- Nuevos retos en la computación cuántica.

Page 12: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Aparecen nuevas áreas en computación de propósitogeneral.-

- Todo lo relacionado con vida- Data warehousing y Data Mining- Gráficos

Conclusión:

Las nuevas áreas de aplicación de la computación nos

fuerzan a ir más allá de los límites de la Ley de Moore,

tanto en velocidad de cálculo como en acceso a memoria.

El único camino es la computación paralela.

Page 13: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Hacia el paralelismo: Gestión del ‘budget” de transistores por chip

Dos alternativas octogonales que deben balancearse:

- Aumentar la complejidad de las unidades

funcionales (UF’s), o incluso replicarlas

- Colocar diversas etapas de memoria “on

chip”

Conclusión:

“Alternativas condenadas a entenderse”.

Page 14: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Hacia el paralelismo: Aumento de la complejidad de los UF’s

De esta forma conseguimos:

- Paralelismo a nivel de bit- Paralelismo a nivel de instrucción (ILP)- Paralelismo a nivel de hebra

Page 15: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Hacia el paralelismo: Ejemplo de cambio cualitativo

Ejemplo de : - Introducción del paralelismo a nivel de bit.

- Introducción de economía de escala en diseño y producción.

Page 16: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Hacia el paralelismo: Contra ejemplo (límites en cambios)

- Límites al paralelismo a nivel de bit

- Límites al paralelismo a nivel de ILP

Hay que introducir el paralelismo a todos los niveles, adoptando una perspectiva jerárquica y agotando cadanivel intermedio.El nivel último son los multiprocesadores.

Conclusión:

Page 17: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Evolución de las Arquitecturas

Page 18: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Application Specific PCs

Notebookcomputers

Desktopcomputers

Desktopsupercomputers

Home servers

Web and local-areanetwork servers

Enterprise servers(legacy, midrange)

Special servers(supercomputers,massively parallelcomputers, and others)

Special servers:transactionsdata miningsimulation videovirtual reality

Servercomputers

Clientcomputers

Computingpower

$$ hundreds $$ millions

2002 Computer product segments

Application Specific PCs

Personalcomputers

Workstationcomputers

Desktopsupercomputers

PC servers

Workstation servers

Mini-computers

Computingpower

$$ hundreds $$ millions

1997 Computer product segments

Mainframecomputers

Super-computers

Massivelyparallel computers

Page 19: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Supercomputación: Generales

-Concepto de “Supercomputación” como motor estratégico de arquitecturas de altas prestaciones.

- ¿Qué es un Supercomputador? * Definiciones “conceptuales”

- “Un computador excepcionalmente rápido”- “Un sistema para resolver grandes problemas muy rápidamente”

* Definición “tecnológica”-” Un computador cuyo cuello de botella está en la I/O” (Convex Inc.)

* Definición “operativa”- “Es uno de los 500 sistemas más rápidos del mun- do en cada momento según el conocido test Linpak”- Establecimiento de la iniciativa “Top 500” como mecanismo para analizar la evolución de los super- computadores.

Page 20: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Arquitectura Paralela: AYER

Históricamente, la computación paralela ha consistido enuna serie de modelos rivales y arquitecturas divergentes,sin una línea de desarrollo predecible.

La incertidumbre arquitectural ha paralizado

el desarrollo del software paralelo

Page 21: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Arquitectura Paralela: HOY

Extensión de la noción clásica de la arquitectura de compu-tadores (ISA), para soportar comunicación y cooperación.

Arquitectura de Comunicaciones =Abstracción de la Comunicación + Implementación

Abstracción:

•Primitivas de comunicación HW/SW visibles al programa- dor (ISA)•Ej.: memoria compartida, pase de mensajes, …•Se asume que las primitivas se implementen eficientemente.

Implementación:

•Integración del controlador de comunicaciones

•Estructura de la red de interconexión

Page 22: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Arquitectura de Comunicaciones

Aplicaciones Paralelas

Multiprogramación Memoriacompartida

Paso demensajes

Paralelismo de datos Modelo de

Programación

Comunicación Hardware

Sistema Operativo

Compilación oLibrería

Abstracción de lascomunicaciones

InterfazUsuario/sistema

FronteraHardware/Software

Una frontera plana significaconvergencia en la estructuraorganizativa

Mapeo Simple/Complejo de laabstracción de las comunicacionesen las primitivas de hardware

Arquitecturas Paralelas Básicas:

• Arquitectura de Memoria Compartida• Arquitectura de Memoria Privada

Page 23: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Arquitecturas de Pase de Mensajes

Concepto:Comunicación tipo “correo postal”

Propiedad Clave:La comunicación (cooperación) entre procesadores estáintegrada al nivel de I/O, y no en el sistema de memoria(ahora los bloques de diseño son computadores completos)

Abstracción de la Comunicación:Espacio en el Direccionamiento Local

Los procesadores solo pueden acceder a su memoria local,estableciéndose la comunicación/sincronización mediantellamadas explícitas al S.O. (mensajes send/receive)

DatoProceso 0

Proceso 1

Puedo enviar?

Si

DataDataDataDataDataDataDataDato

Tiempo

Page 24: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Abstracción del Pase de Mensajes

•La combinación send-recv establece una copia memoria a memoria y una sincronización entre los procesos involu- crados

•Enviar un mensaje consume mucho tiempo: - Construir la cabecera del mensaje; copiar los datos en el buffer de la red; enviar el mensaje; copiar los datos en el buffer receptor; copiar los datos del espacio S.O. al es- pacio usuario

Page 25: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Aspectos de Diseño

Denominación: ¿Cómo se designan a los datos lógicamente compartidosy/o a los nodos?

Latencia:¿Cuál es la latencia de comunicación?

Ancho de Banda: ¿Cuántos datos pueden comunicarse por segundo?

Sincronización: ¿Cómo pueden sincronizarse los productores y consu-midores de datos?

Granularidad de los Nodos: ¿Cómo se divide el Si entre procesadores y memoria?

Aplicabilidad: ¿Propósito general o propósito especial?

Page 26: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Latencia y Ancho de Banda

Latencia y ancho de banda son factores clave en el

rendimiento de una arquitectura paralela y se utilizan

en la evaluación de alternativas de diseño.

Opciones para Controlar la Latencia

• Reducir la frecuencia de las operaciones de latencia alta

• Reducir la latencia: caches, controlador de comunicaciones

• Enmascarar la latencia: superposición entre comunicaciones

y computaciones, anticipación, ...

Page 27: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Coste de la Comunicación

Coste Comunicación =

Frecc x (Coste c + Latencia + Tamaño Transf.Ancho de Banda

- Superpos.

Frecc : Número de operaciones de comunicación por unidadde computación en el programa (software y hardware)

Costec : Tiempo consumido en iniciar y gestionar la comuni-cación.

Latencia: Tiempo para transferir datos desde la fuente al des-tino a través de la red de interconexión.

Tamaño Transf.: Determinado por la línea cache (memoriacompartida) o variable según el programa (pase de mensajes)

Ancho de Banda: Velocidad de transferencia de datos a travésde la red.

Superpos.: Porción de la operación de comunicación realiza-Da simultáneamente con computación útil.

Page 28: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Compromisos de Diseño

Latencia y Ancho de Banda interaccionan en los sis-temas paralelos reales de una forma más o menos compleja.

Multiprocesador de Bus Compartido

El ancho de banda del bus es fijo, y debe compartirse porlos accesos a memoria (fallos cache) de todos los procesa-dores: peligro de contención (saturación).

El factor de escala del bus depende de su ancho de banda,la velocidad del procesador, la mezcla de instrucciones y el índice de fallos cache.

El ancho de banda puede incrementarse sustituyendo el buspor una red escalable. Pero estas redes suelen tener mayorlatencia que un bus único en el caso de no saturación (nosobrecarga)

Page 29: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Conceptos básicos de evaluación

Ts: Tiempo requerido para resolver el problema en un

procesador individual (“Tiempo en secuencial”)

TP: Tiempo requerido para resolver el problema en un

sistema de p procesadores (“Tiempo en paralelo”)

+ Aceleración: Ts/TP

+ Eficiencia: TS/(pTp)

+ Balanceo: Tultimo procesador - Tprimer procesador

Page 30: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Ley de Amdahl aplicada al paralelismo

Definición: Si un sistema consiste de p procesadores idénticosY la parte serie de un programa es una fracción f, entonces la máxima aceleración que podemos alcanzar, S, es:

S —< (f + ( 1 - f)/p)-1

El límite para p -> es S = f-1

Ejemplos para distintos f, P y s :

f p S S/p

0,5 64 1,969 0,0311024 1,998 0,002

0,2 64 4,706 0,0741024 4,981 0,005

0,1 64 8,767 0,1371024 9,913 0,010

0,05 64 15,422 0,2411024 19,636 0,019

0,01 64 39,264 0,6141024 91,184 0,08916384 99,399 0,006

Page 31: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Gráfica de la Ley de Amdahl aplicada a MPP’s

Aceleración

1_f

f = 0Overhead = 0

f = 0Overhead = 0

Número de Procesadores

f = 0Overhead = 0

Page 32: Tema 1: Introducción Motivación del procesamiento paralelo, su “inevitabilidad” Supercomputadores: Los Top 500 Paralelismo en Multiprocesadores: Perspectiva

Conclusión fundamental:

La fracción serie, f, de un programa limita la aceleración

a 1

f , aún en el caso de contar con infinitos proce-

sadores.

La overhead asociada con la paralelización, que siempre

ocurre en un sistema real, reduce este límite aún mas.