Feb. 2002 NOW Handout Page 1 Arquitecturas Distribuidas 1 Demanda de Potencia Computacional Continua demanda por mayor velocidad de computación Problemas Grand-Challenge Problema fundamental en ciencia e ingenierfa, de gran impacto econ6mico o cientffico, cuya soluci6n es diffcilmente alcanzable en un tiempo razonable con los computadores actuales. Caracteristicas: Generaci6n de datos complejos, simulaciones realistas, visualizaciones complejas de los resultados, ... Necesidades: Computadores mas rapidos, con mas memoria y mas espacio de disco Ejemplos » Modelado del clima global » Algoritmos de optimizaci6n global » Turbulencias en dinamica de fluidos (geoffsica, astroffsica) » Modelado macromolecular (protefnas) y estructuras ADN Otros problemas Aplicaciones militares, CAD/CAM, biologfa computacional, e-comercio, ... Arquitecturas Distribuidas 2 Oscar Plata, AC, UMA, Febrero 2002 Modelos y Arquitecturas Escalables Arquitecturas Distribuidas Ingeniería Informática, Optativa 2do. ciclo Oscar Plata Dept. Arquitectura de Computadores Universid ad de Malaga Febrero – Junio, 2002
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Feb. 2002
NOW Handout Page 1Arquitecturas Distribuidas 1
Demanda de Potencia Computacional
Continua demanda por mayor velocidad de computación
Problemas Grand-Challenge Problema fundamental en ciencia e ingenierfa, de gran
impacto econ6mico o cientffico, cuya soluci6n es diffcilmente alcanzable en un tiempo razonable con los computadores actuales.
Caracteristicas: Generaci6n de datos complejos, simulaciones realistas, visualizaciones complejas de los resultados, ...
Necesidades: Computadores mas rapidos, con mas memoria y mas espacio de disco
Ejemplos» Modelado del clima global» Algoritmos de optimizaci6n global» Turbulencias en dinamica de fluidos (geoffsica, astroffsica)» Modelado macromolecular (protefnas) y estructuras ADN
Otros problemas Aplicaciones militares, CAD/CAM, biologfa computacional,
e-comercio, ...
Arquitecturas Distribuidas 2 Oscar Plata, AC, UMA, Febrero 2002
Modelos y Arquitecturas Escalables
Arquitecturas Distribuidas
Ingeniería Informática, Optativa 2do. ciclo
Oscar Plata Dept.
Arquitectura de Computadores Universid
ad de Malaga
Febrero – Junio, 2002
Feb. 2002
NOW Handout Page 2Arquitecturas Distribuidas 2
Dos Eras en la ComputaciónArquitectur
a
Software de Sistema
EraSecuencial Aplicaciones
Entornos de Sol. Problemas
Arquitectura
Software de Sistema
EraParalela Aplicaciones
Entornos de Sol. Problemas
1940 ‘50 ‘60 ‘70 ‘80 ‘90 2000 ‘10 ‘20 2030
Comercializaci6n
Investigaci6n y Desarrollo Madurez
Arquitecturas Distribuidas 4 Oscar Plata, AC, UMA, Febrero 2002
Mejora del Rendimiento
Modos de mejorar el rendimiento Trabajar mas duro: Usar hardware mas rapido, o reducir CPI Trabajar mejor: Optimizar el c6digo y los algoritmos Pedir ayuda: Usar multiples procesadores (procesamiento paralelo)
Limitaciones de los computadores secuenciales Limitaciones ffsicas Vectorizaci6n es s6lo adecuada para cierta clase de problemas
Mejoras estructurales, tales como segmentaci6n, ILP (superescalaridad,
ejecuci6n fuera de orden, …), no son suficientes para aplicaciones lfmite,
y no son escalables
Arquitecturas Distribuidas 3 Oscar Plata, AC, UMA, Febrero 2002
Feb. 2002
Instrucciones Datos MISD Instrucciones
InstruccionesInstrucciones
Instrucc.
Datos
Instrucc.
Instrucc.
Datos
Datos
Datos Dato
sDatos
Flujo Flu
joFlujo
Flujo Flu
joFlujo
NOW Handout Page 3Arquitecturas Distribuidas 3
ProcProc
Taxonomía de FlynnFlujo Flujo
Flujo Flujo Flujo
SISDProcesador Flujo Unidad Unidad
Unidad FlujoDatos Vectorial Vectorial Vectorial Datos
Arquitecturas Distribuidas 6 Oscar Plata, AC, UMA, Febrero 2002
Arquitecturas Paralelas
Arquitectura
Arquitectura clásica, convencional,
de von Newmann
� Programa y datos en la misma memoria� Instrucciones con operandos escalares� Ejecuci6n inherentemente secuencial del
programa
Arquitectura alternativa, no clásica,
paralela
� Colecci6n de elementos de procesamiento que cooperan para resolver, de forma rapida, un gran problema computacional
Arquitecturas Distribuidas 5 Oscar Plata, AC, UMA, Febrero 2002
Feb. 2002
Arquitecturas
Vectoriales� Estaciones
de Compartida
Matriciales
superescalaridad, instrucciones no propósito muy
Privada� COMAmulti-hebra,…) o matrices)
NOW Handout Page 4Arquitecturas Distribuidas 4
Evolución de las Arquitecturas Paralelas
Arquitecturas Distribuidas 8 Oscar Plata, AC, UMA, Febrero 2002
Clasificación Más ActualSISD SIMD MISD MIMD
� PCs � Computadores � Matrices Sist6licas
trabajo � Computadores de Memoria
(Segmentación, (Operandos de las (Aplicaciones de � UMA (SMP) Arquitecturasprebúsqueda, escalares: vectores específico) � NUMA de Memoria
(Aplicaciones de � MPPpropósito específico) � LAN
� Cluster� Grid
Arquitecturas Distribuidas 7 Oscar Plata, AC, UMA, Febrero 2002
Feb. 2002
Programación Menos Sencilla NUMASMP
NUMASMP Poco EscalableSMPSencilla
NOW Handout Page 5Arquitecturas Distribuidas 5
Arquitecturas Escalables
Definición Un computador, incluyendo hardware y software, se dice
escalable si podemos aumentar sus recursos para soportar una mayor demanda de rendimiento y funcionalidad, y/o disminuir sus recursos para reducir costes.
Implicaciones Funcionalidad y Rendimiento
» La potencia computacional del sistema debe incrementarse de forma proporcional al aumento en recursos. De forma ideal, debiera observarse un aumento de capacidad computacional pr6ximo a un factor N cuando se mejoran los recursos en ese mismo factor.
Escalado en Coste» El coste de escalado debe ser razonable. Tfpicamente, si el escalado se
produce en un factor N, se espera que su coste sea un factor entre N y N log N.
Compatibilidad» Los componentes ya existentes, hardware y software, deben poderse reusar
cuando se proceda al escalado del sistema (escalabilidad incremental).
Arquitecturas Distribuidas 10 Oscar Plata, AC, UMA, Febrero 2002
Evolución de las Arquitecturas MIMD
Servidor Multiprocesador Supercomputador Paralelo Red Multicomputador
Medianamente Escalable
Programación
LAN LAN
Programación Compleja Cluster Cluster
MPP MPP MPP Muy
Escalable
1980 1990 2000 2010
Arquitecturas Distribuidas 9 Oscar Plata, AC, UMA, Febrero 2002
Feb. 2002
NOW Handout Page 6Arquitecturas Distribuidas 6
Tipos de Escalabilidad: Aplicaciones
Escalabilidad en las AplicacionesLas aplicaciones deben ser escalables, esto es,
ejecutarse con un rendimiento proporcionalmente mejor en un computador escalado
Escalabilidad en Tamaño del Computador» Indica la mejora en rendimiento de la aplicaci6n cuando se añaden
procesadores al computador.
» Lo que se espera es que el factor de proporcionalidad sea similar (factor de aumento de procesadores similar al factor de mejora del rendimiento de la aplicaci6n).
» Muchas veces las aplicaciones dependen de otros recursos, como capacidad de memoria, capacidad de E/S, ancho de banda con memoria o E/S, etc.
Escalabilidad en Tamaño del Problema» Indica el comportamiento de la aplicaci6n cuando aumenta el tamaño
del problema(tamaño de los datos y tamaño de la carga computacional).
Arquitecturas Distribuidas 12 Oscar Plata, AC, UMA, Febrero 2002
Tipos de Escalabilidad: Recursos
Escalabilidad en los Recursos Escalabilidad en Tamaño
» Aumento del numero de procesadores.
» Debe mejorarse el susbsistema de comunicaciones, incluyendo la red de interconexi6n.
» Limitaci6n debida a la programación y la comunicación.
Escalabilidad en Otros Recursos» Aumento en la capacidad de memoria, de cache, de disco, …
Escalabilidad en Software de Sistema» Versi6n mejorada del S.O.
» Compiladores con optimizaciones mas eficientes.
» Librerfas cientfficas/ingenierfa mas eficientes.
» Entornos de programaci6n mas avanzados.
Arquitecturas Distribuidas 11 Oscar Plata, AC, UMA, Febrero 2002
Feb. 2002
NOW Handout Page 7Arquitecturas Distribuidas 7
Modelo de Arquitectura Paralela (1)
Modelo abstracto de arquitectura paralela desde el punto de vista del programador (como el de von
Newmann)
Atributos Semánticos Homogeneidad
» Caracteriza c6mo se comportan los procesadores del computador cuando ejecutan un programa paralelo.
» Indica el nivel de sincronizaci6n de los procesadores.» Posibilidades: Fuertemente o débilmente acoplados.
Mecanismo de Interaccion» Indica c6mo interaccionan (cooperan) los procesos paralelos.» Posibilidades: Variables compartidas, pase de mensajes.
Espacio de Direcciones» Indica c6mo es observado el espacio de direcciones (memoria) por los
procesadores.» Posibilidades: Espacio unico o comun (UMA, NUMA), espacios multiples
(locales).
Modelo de Memoria» Especifica c6mo se resuelven los conflictos de acceso a la memoria.» Posibilidades: S6lo cuando la memoria es compartida (consistencia de
memoria).
Arquitecturas Distribuidas 14 Oscar Plata, AC, UMA, Febrero 2002
Tipos de Escalabilidad: Tecnología
Escalabilidad en la Tecnología
Es la capacidad de adaptaci6n a cambios en la tecnologfa
Escalabilidad Temporal (Generacion)
» El sistema debe acomodar con el menor cambio posible, asf como mejorar su rendimiento correspondientemente, cuando se sustituyen componentes por otros de una generaci6n posterior (tanto hardware como software).
» Es habitual que una parte crftica sea el software. Un cambio de generaci6n del sistema suele conllevar nuevas inversiones en software de sistema y rediseño de las aplicaciones de usuario.
Escalabilidad Espacial» Indica el comportamiento del sistema frente a cambios de orden
espacial, esto es, de ocupar un espacio limitado a ocupar una habitaci6n, un edificio, multiples edificios, …
Escalabilidad en la Heterogeneidad» Capacidad del sistema a integrar componentes hardware y software de
diferentes fabricantes.» Esta escalabilidad se favorece usando arquitecturas abiertas.
» En el caso de software, se denomina portabilidad.
Arquitecturas Distribuidas 13 Oscar Plata, AC, UMA, Febrero 2002
Feb. 2002
(l proceso en cada procesador)
NOW Handout Page 8Arquitecturas Distribuidas 8
P P … P
Modelos Abstractos: PRAM
PRAM (Parallel Random-Access Machine) n procesos en un computador de n procesadores
En cada paso temporal basico (clclo), todos los procesadores ejecutan una unica instrucci6n
(sincronizaci6n a nivel de ciclo) Memoria Compartida
La interacci6n entre procesos se hace mediante variables compartidas
El espacio de direcciones es unico Varios modelos de memoria: EREW, CREW,
CRCW Costes de sincronizaci6n,
comunicaci6n y desbalanceo se consideran nulos
EjemploProducto escalar de dos vector de N elementos en
un computador de n procesadores» Cada procesador realiza 2N/n sumas y productos
para obtener l resultado en 2N/n ciclos.» Los n resultados locales se suman en el resultado final usando un método de
reducci6n en arbol binario (log n ciclos).» Tiempo paralelo: 2N/n + log n» Tiempo secuencial: 2N» Aceleraci6n: n/[l + (n/2N) log n] � n, cuando N » n
Arquitecturas Distribuidas 16 Oscar Plata, AC, UMA, Febrero 2002
Modelo de Arquitectura Paralela (2)
Atributos de Rendimiento Necesarios para el desarrollo de programas paralelos eficientes
Termlnologia Notaclon Unldad
Tamaño n sin dimensión
Frecuencia Reloj f MHz
Carga Computacional W MFlop
Tiempo Ejecución Secuencial T 1 s
Tiempo Ejecución Paralela Tn
s
Velocidad Vn W / Tn MFlop/s
Aceleración Sn T 1 / Tn sin dimensión Eficiencia
En Sn / n sin dimensión Utilización Un Vn /(nVpico) sin dimensión
Latencia de Comunicación t 0 sAncho de Banda Asintótico r MB/s
Arquitecturas Distribuidas 15 Oscar Plata, AC, UMA, Febrero 2002
Feb. 2002
…procesador/memoria (l proceso por procesador)
NOW Handout Page 9Arquitecturas Distribuidas 9
pase de mensajes
Atributos Semánticos de los Modelos
Atrlbutos Semántlcos PRAM BSP
Homogeneidad SISD, SIMD, MIMD SISD, MIMD
Sincronía Nivel de instrucción Nivel de superciclo
Mecanismo de Interacción Variables compartidas Variables compartidas,
Espacio de Direcciones Unico Unico, Múltiple
Modelo de Memoria EREW, CREW, CRCW Consistencia, nulo
Arquitecturas Distribuidas 18 Oscar Plata, AC, UMA, Febrero 2002
P/M P/M P/M
Modelos Abstractos: BSP
BSP (Bulk Synchronous Parallel) n procesos en un computador de n pares
Las computaciones se organizan en superclclos(sincronizaci6n a nivel de superciclo)
En cada superciclo, el proceso ejecuta instrucciones Red de Interconexi6n
(max. de w ciclos), una comunicaci6n (gh ciclos, hpalabras) y una sincronizaci6n de barrera (l ciclos)
El espacio de direcciones es unico/multiple Las comunicaciones son punto-a-punto
EjemploProducto escalar de dos vector de N elementos en un computador de n procesadores» Superciclo l: Cada procesador realiza 2N/n sumas locales: w = 2N/n ciclos; Procesadores 0, 2,
4, … envfan su suma local a l, 3, 5, …; Barrera.
» Superciclo 2: Procesadores l, 3, 5, … hacen una suma: w = l; Procesadores l, 5, 9, … envfan su suma local a 3, 7, ll, …; Barrera.
» Superciclo 3: Procesadores 3, 7, ll, … hacen una suma: w = l; Procesadores 3, ll, l9, …envfan su suma local a 7, l5, 23, …; Barrera.
» …» Tiempo paralelo: 2N/n + log n (g + l + l)» Coste de comunicaci6n: g log n; Coste de sincronizaci6n: l log n
Arquitecturas Distribuidas 17 Oscar Plata, AC, UMA, Febrero 2002
Feb. 2002
… » LAN (+ NFS, …)
» Constellatlon
Red de Interconexi6n
NOW Handout Page 10Arquitecturas Distribuidas 10
Ejemplos de No Comp.: LAN
LAN(Local Area Network)
SCSI
Arquitecturas Distribuidas 20 Oscar Plata, AC, UMA, Febrero 2002
Proc.
Memoria
Modelos Físicos: No Compartición
Modelo de No Compartición No hay compartici6n fislca de recursos Los procesadores s61o tienen acceso directo (ffsico) a sus recursos
1oca1es (internos a1 nodo)
Cache Ejemplos» LAN (Local Area Network)
» WAN (Wide Area Network)Disco NIC » COW (Cluster of Workstations)
Nodo 1 Nodo N » Grld
» MPP (Massively Parallel Processor)
Arquitecturas Distribuidas 19 Oscar Plata, AC, UMA, Febrero 2002
Scheduler
Mon itor
SI
cheduler
Masteremon
it ClGraphContr
calol Execu
tDaemo
on n
Clie
ntsSc
MaD
SuGrCo
i
Feb. 2002
NOW Handout Page 11Arquitecturas Distribuidas 11
i
Ejemplos de No Comp.: ConstelaciónConstelación
Cluster 1Schedule
r
MasterDaemon
LAN/WAN
Subm
uster 3heduler
ster aemon
Cluster 2S
bmit aphical
ntrol ExecutionDa
Daemon
Clients
SubmitGraphicalControl ExecutionDaemon
Clients
Arquitecturas Distribuidas 22 Oscar Plata, AC, UMA, Febrero 2002
Ejemplos de No Comp.: Cluster (COW)COW (Cluster)
S
SSI: Single System Image
Arquitecturas Distribuidas 21 Oscar Plata, AC, UMA, Febrero 2002
Feb. 2002
… » Cluster
NOW Handout Page 12Arquitecturas Distribuidas 12
Proc.
Memoria
Modelos Físicos: Compartición Secundaria
Modelo de Compartición de Memoria Secundaria (Disco) Hay compartici6n fislca del nivel secundario de la
jerarqufa de memoria (disco)
Cache Ejemplos» SAN (Storage Area Network)
NIC
Nodo 1 Nodo N
Red de Interconexi6n
Disco Compartido
Arquitecturas Distribuidas 24 Oscar Plata, AC, UMA, Febrero 2002
Ejemplos de No Comp.: GridGrid(Metacomputing) Dispositivos Especiales
Gente
ComputadoresSoftware (ASPs, DBs, ...) Datos Catalogados
Arquitecturas Distribuidas 23 Oscar Plata, AC, UMA, Febrero 2002
Feb. 2002
NOW Handout Page 13Arquitecturas Distribuidas 13
Ejemplos de Comp. Sec.: SAN (2)
E-CommerceGestión
Directorio de Usuarios
Arquitecturas Distribuidas 26 Oscar Plata, AC, UMA, Febrero 2002
Ejemplos de Comp. Sec.: SAN (1)
SAN(Storage Area
Network)
Fibre Channel
Arquitecturas Distribuidas 25 Oscar Plata, AC, UMA, Febrero 2002
Feb. 2002
NOW Handout Page 14Arquitecturas Distribuidas 14
Ejemplos de Comp. Sec.: IBM SP2 (2)IBM SP2
Red multietapa de conmutadores crossbar
Arquitecturas Distribuidas 28 Oscar Plata, AC, UMA, Febrero 2002
Ejemplos de Comp. Sec.: IBM SP2 (1)IBM SP2
2-128 procesadores POWER2 RSj6000
Arquitecturas Distribuidas 27 Oscar Plata, AC, UMA, Febrero 2002
Feb. 2002
cow (cluster) 12.3 TFlops
NOW Handout Page 15Arquitecturas Distribuidas 15
Ejemplos de Comp. Sec.: Blue Gene/LIBM Blue Gene/L (año
2002) 65536 nodos (2 procesadores: CPU + Comunicaciones) 16 TB memoria principal 180j360 TFlops MPP
Arquitecturas Distribuidas 30 Oscar Plata, AC, UMA, Febrero 2002
Ejemplos de Comp. Sec.: ASCI White
AScI white, (IBM SP Power3 375 MHz, año 2000)
8192 procesadores de cobre 6 TB memoria principal 160 TB disco
Arquitecturas Distribuidas 29 Oscar Plata, AC, UMA, Febrero 2002
Feb. 2002
Compartida
1-64 procesadores
NOW Handout Page 16Arquitecturas Distribuidas 16
Ejemplos de Comp. Prim.: SMP (UMA)
SUN Enterprise SMP
UltraSPARC-II (64 bits) Red UPA (Ultra Port
Architecture): Permite multiples conexiones
Arquitecturas Distribuidas 32 Oscar Plata, AC, UMA, Febrero 2002
Compartida NIC
Modelos Físicos: Compartición Primaria
Modelo de compartición de Memoria Primaria
Hay compartici6n fislca del nivel primario de la jerarqufa de memoria