tema 1: introducción motivación del procesamiento paralelo, su “inevitabilidad”...
Post on 31-Jan-2016
219 Views
Preview:
TRANSCRIPT
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)
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?
¿ 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.
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
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)
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).
* 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)
* 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.
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
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.
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.
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.
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”.
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
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.
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:
Evolución de las Arquitecturas
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
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.
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
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
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
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
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
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?
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, ...
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.
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)
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
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
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
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.
top related