18
Universidad de Murcia 1 Modelos de computadores paralelos Domingo Giménez Departamento de Informática y Sistemas Universidad de Murcia, Spain dis.um.es/~domingo

Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Embed Size (px)

Citation preview

Page 1: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 1

Modelos de computadores paralelos

Domingo GiménezDepartamento de Informática y Sistemas

Universidad de Murcia, Spaindis.um.es/~domingo

Page 2: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 2

Contenido Programación paralela Modelos de computadores paralelos Sistemas de memoria compartida Sistemas de memoria distribuida Evolución de los sistemas paralelos

Page 3: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 3

Programación paralela Uso de varios procesadores trabajando juntos para

resolver una tarea común: Cada procesador trabaja en una porción del

problema Los procesos pueden intercambiar datos, a través

de la memoria o por una red de interconexión

Page 4: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 4

Programación paralela Posibilidades:

Segmentación encauzada. Pipeline Jerarquía de memorias División de memoria en bloques Paralelismo a nivel de instrucción Ejecución fuera de orden Especulación Múltiples unidades funcionales Unidades vectoriales Procesadores de E/S Varios procesadores en un chip LAN de altas prestaciones ...

Page 5: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 5

Programación paralela

Concurrente: varios procesos trabajando en la resolución de un problema

Heterogénea: procesadores con distintas características

Adaptativa: durante la ejecución el programa se adapta al estado del sistema

Distribuida: procesadores geográficamente distribuidos En la web: necesidad de herramientas específicas ¿Cuántica o biológica?

Page 6: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 6

Programación paralela

Límites de sistemas secuenciales: Memoria Velocidad

Sistemas paralelos permiten resolver: Problemas mayores Más problemas Más rápidamente

Page 7: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 7

Modelos de computadores paralelos

Procesador

Memoria

SECUENCIAL (SISD)

Instrucciones:de memoria a procesador

Datos:entre memoriay procesador

Page 8: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 8

Modelos de computadores paralelos

SIMD. Una única Unidad de Control. La misma instrucción se ejecuta síncronamente por todas las

unidades de procesamiento.

Procesador Procesador Procesador

programa

instrucciones

datos

Page 9: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 9

Modelos de computadores paralelos

MIMD. Cada procesador ejecuta un programa diferente 

independientemente de los otros procesadores.

Procesador

programa

instrucciones

datos

Procesador

programa

instrucciones

datos

Procesador

programa

instrucciones

datos

Page 10: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 10

Modelos de computadores paralelos

Memoria compartida – un único espacio de memoria. Todos los procesadores tienen acceso a la memoria a través de una red de conexión:   ­ Bus   ­ Red de barras cruzadas   ­ Red multietapa

Memoria distribuida – cada procesador tiene su propia memoria local. Se utiliza paso de mensajes para intercambiar datos. 

P P P P P P

B U S

M e m o r y

M

P

M

P

M

P

M

P

M

P

M

P

Network

Page 11: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 11

Sistemas de memoria compartida

Uniform memory access (UMA)Cada procesador tiene acceso uniforme a memoria. También se llamansymmetric multiprocessors (SMPs)

P P P PBUS

Memory

Non­uniform memory access (NUMA)El tiempo de acceso depende de dónde están los datos. El acceso local es más rápido. Más fácil y barato de escalarque SMPs

P P P PBUS

Memory

Network

P P P PBUS

Memory

Page 12: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 12

Sistemas de memoria compartida

NUMA: SGI Origin 2000

Page 13: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 13

Sistemas de memoria distribuida

anilloDiámetro: p/2 Malla

Diámetro: √p

Servidorde ficheros

Estaciones de trabajo

red

Hipercubo

Page 14: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 14

Sistemas de memoria distribuida

El HPC 160 (prometeo.sait.upct.es) es un sistema paralelo de memoria distribuida con un total de 16 procesadores (4 nodos tetraprocesadores) a 1 GHz, con 8MB de caché de nivel 2, 16 GBytes de memoria y unos 300 GBytes de almacenamiento en disco. Su rendimiento teórico o pico es de 32 Gflops.

Page 15: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 15

Sistemas de memoria distribuida

El cluster consta de 20 nodos biprocesadores Pentium Xeon a 2 Ghz, interconectados mediante una red SCI con topología de Toro 2D en malla de 4x5. Cada nodo consta de 1 Gigabyte de memoria RAM. 19 los nodos están disponibles para cálculo científico. El front­end es el punto de entrada al cluster y no se utiliza en ejecuciones de trabajos al cluster.

Page 16: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 16

Evolución de los sistemas paralelos

TOP500

Page 17: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 17

En Murcia

– Personal:

• Uso de OpenMP y MPI en monoprocesadores, y ya bipros

– Empresas:

• Redes o multiprocesadores de reducido tamaño (hasta 16 nodos)

• Uso para manejo de volúmenes de datos grandes, sin programación paralela

– Universidad:

• Cartagena: híbrido MC+MD, 4 nodos comunicados con PM y cada nodo 4 procesadores en MC

• Murcia: híbrido MC+MD, 8 nodos comunicados con PM y cada nodo 4 procesadores en MC

• Resolución de problemas científicos, uso mínimo de paralelismo

– Grupos de investigación:

• Redes de ordenadores, hasta 16, para computación científica o paralelismo

• COCI: Red 5 SUN1+1 SUN5, PC bipro, cluster: 3 bipro con duales, 2 bipros; computación paralela y heterogénea

Page 18: Modelos de computadores paralelos - dis.um.esdis.um.es/~domingo/doctorado/0607/modelos.pdf · Universidad de Murcia 2 Contenido Programación paralela Modelos de computadores paralelos

Universidad de Murcia 18

Sistemas actuales y futuros

• Multicore– Actual: Biprocesador Intel,

más SUN– En breve: Tetraprocesador

Intel

• Procesadores específicos– Gráficos GPU– De tratamiento de señal DSP– FPGA y heterogéneos

embebidos– De juegos PSP

• Computadores heterogéneos– CPU+GPU– Futuro: Plataformas

híbridas Itanium2+Xeon con MC

– Futuro: Híbridos con 16000+16000

• Distribuidos

– Redes, Grid, Web

– P2P, móviles