PDF de programación - Computación Híbrida, Heterogénea y Jerárquica - Metodología de la Programación Paralela

Imágen de pdf Computación Híbrida, Heterogénea y Jerárquica - Metodología de la Programación Paralela

Computación Híbrida, Heterogénea y Jerárquica - Metodología de la Programación Paralelagráfica de visualizaciones

Actualizado el 29 de Julio del 2018 (Publicado el 27 de Mayo del 2018)
860 visualizaciones desde el 27 de Mayo del 2018
910,8 KB
50 paginas
Creado hace 8a (04/10/2015)
Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Metodolog´ıa de la Programaci´on Paralela

2015-2016

Facultad Inform´atica, Universidad de Murcia

Computaci´on H´ıbrida,

Heterog´enea y Jer´arquica

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Contenidos

1 Sistemas

2 Paralelismo anidado

3 Programaci´on h´ıbrida

4 Paralelismo multinivel

5 Computaci´on heterog´enea

6 Pr´acticas

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Los sistemas computacionales actuales no son monol´ıticos:

8 cores, 2 niveles cache,

8 cores hyperthreading, 3 niveles cache,

2 nodos, MC

4 nodos, MC

M´as ejemplos en hwloc: http://www.open-mpi.org/projects/hwloc/

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Tenemos sistemas

H´ıbridos:
combinan distintas caracter´ısticas: Memoria Compartida y
Memoria Distribuida, multicore con GPU, varios sistemas en
la red...

Heterog´eneos:
por lo tanto sus componentes son heterog´eneos: memorias de
distinta capacidad y estructura de acceso, nodos a distinta
velocidad y con un n´umero distinto de cores, redes de
conexi´on a distinta velocidad...

Jer´arquicos:
y se estructuran de forma jer´arquica: varios sistemas en la
red, con cada sistema un cluster o un cc-NUMA, cada cluster
con varios nodos, cada nodo varios sockets, cada socket varios
cores...

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Tenemos sistemas

H´ıbridos:
combinan distintas caracter´ısticas: Memoria Compartida y
Memoria Distribuida, multicore con GPU, varios sistemas en
la red...

Heterog´eneos:
por lo tanto sus componentes son heterog´eneos: memorias de
distinta capacidad y estructura de acceso, nodos a distinta
velocidad y con un n´umero distinto de cores, redes de
conexi´on a distinta velocidad...

Jer´arquicos:
y se estructuran de forma jer´arquica: varios sistemas en la
red, con cada sistema un cluster o un cc-NUMA, cada cluster
con varios nodos, cada nodo varios sockets, cada socket varios
cores...

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Tenemos sistemas

H´ıbridos:
combinan distintas caracter´ısticas: Memoria Compartida y
Memoria Distribuida, multicore con GPU, varios sistemas en
la red...

Heterog´eneos:
por lo tanto sus componentes son heterog´eneos: memorias de
distinta capacidad y estructura de acceso, nodos a distinta
velocidad y con un n´umero distinto de cores, redes de
conexi´on a distinta velocidad...

Jer´arquicos:
y se estructuran de forma jer´arquica: varios sistemas en la
red, con cada sistema un cluster o un cc-NUMA, cada cluster
con varios nodos, cada nodo varios sockets, cada socket varios
cores...

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Ben-Arab´ı

H´ıbrido:

Ben: Memoria Compartida (cc-NUMA)
128 cores = 12 sockets * 4 procesadores * 2 cores
Arab´ı: Cluster
816 cores = 102 nodos * 4 procesadores * 2 cores

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Ben-Arab´ı

Heterog´eneo:

Los procesadores de Ben y de Arab´ı van a distinta velocidad
La memoria en Ben y en cada nodo de Arab´ı es distinta
No todos los nodos de Arab´ı tienen la misma memoria
Hay jerarqu´ıa de memorias, con lo que el coste de acceso a los
datos depende del procesador y la zona a la que se accede,
especialmente en Ben

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Ben-Arab´ı

Jer´arquico:

Ben-Arab´ı est´a compuesto de Ben (NUMA) + Arab´ı (cluster)

Ben est´a formado por 12 sockets
Arab´ı por 102 nodos

Cada nodo por 4 procesadores
Cada procesador es dual

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Port´atiles y ordenadores personales

Dual, quad, hexa...

Posible hyperthreading

Tarjeta gr´afica con entre aproximadamente 112 y 2048 cores

H´ıbridos: multicore + GPU

Heterog´eneos:

distinta velocidad y memoria
en multicore jerarqu´ıa de memorias
dentro de GPU distintas memorias
un core del multicore, m´as r´apido que uno de GPU
dependiendo del problema es m´as r´apido el multicore o la GPU

Jer´arquico: ejecuci´on en multicore, que lanza kernels para su
ejecuci´on en GPU

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Port´atiles y ordenadores personales

Dual, quad, hexa...

Posible hyperthreading

Tarjeta gr´afica con entre aproximadamente 112 y 2048 cores

H´ıbridos: multicore + GPU

Heterog´eneos:

distinta velocidad y memoria
en multicore jerarqu´ıa de memorias
dentro de GPU distintas memorias
un core del multicore, m´as r´apido que uno de GPU
dependiendo del problema es m´as r´apido el multicore o la GPU

Jer´arquico: ejecuci´on en multicore, que lanza kernels para su
ejecuci´on en GPU

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Port´atiles y ordenadores personales

Dual, quad, hexa...

Posible hyperthreading

Tarjeta gr´afica con entre aproximadamente 112 y 2048 cores

H´ıbridos: multicore + GPU

Heterog´eneos:

distinta velocidad y memoria
en multicore jerarqu´ıa de memorias
dentro de GPU distintas memorias
un core del multicore, m´as r´apido que uno de GPU
dependiendo del problema es m´as r´apido el multicore o la GPU

Jer´arquico: ejecuci´on en multicore, que lanza kernels para su
ejecuci´on en GPU

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Port´atiles y ordenadores personales

Dual, quad, hexa...

Posible hyperthreading

Tarjeta gr´afica con entre aproximadamente 112 y 2048 cores

H´ıbridos: multicore + GPU

Heterog´eneos:

distinta velocidad y memoria
en multicore jerarqu´ıa de memorias
dentro de GPU distintas memorias
un core del multicore, m´as r´apido que uno de GPU
dependiendo del problema es m´as r´apido el multicore o la GPU

Jer´arquico: ejecuci´on en multicore, que lanza kernels para su
ejecuci´on en GPU

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Clusters de empresas, grupos de investigaci´on...

Cluster de multicores
El sistema se hace m´as h´ıbrido, jer´arquico y heterog´eneo
pero es m´as complicado explotar esta estructura:

Muchas veces uso de nodos de forma individual
Muchas veces ejecuciones secuenciales
Uso de paralelismo por llamada a rutinas paralelas
Ocasionalmente se utilizan las tarjetas gr´aficas para
computaci´on o se realiza programaci´on paralela

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Centros de supercomputaci´on

Sistemas de distintos tipos:

Marenostrum (BSC):
“With the last upgrade (2012-2013), MareNostrum has a peak
performance of 1,1 Petaflops, with 48,896 Intel Sandy Bridge
processors in 3,056 nodes, and 84 Xeon Phi 5110P in 42
nodes, with more than 104.6 TB of main memory and 2 PB of
GPFS disk storage.”
Pirineus (CESCA): 1344 cores de memoria compartida en
nodos hexacore
Ben-Arab´ı (CS-FPCM): 944 cores en NUMA+cluster

La tendencia parece ser

combinar MC + MD + coprocesadores (GPU, Xeon Phi,
FPGA...)
pero normalmente las ejecuciones en sistemas diferenciados

Consultar la evoluci´on en el TOP500
(http://www.top500.org/)

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Centros de supercomputaci´on

Sistemas de distintos tipos:

Marenostrum (BSC):
“With the last upgrade (2012-2013), MareNostrum has a peak
performance of 1,1 Petaflops, with 48,896 Intel Sandy Bridge
processors in 3,056 nodes, and 84 Xeon Phi 5110P in 42
nodes, with more than 104.6 TB of main memory and 2 PB of
GPFS disk storage.”
Pirineus (CESCA): 1344 cores de memoria compartida en
nodos hexacore
Ben-Arab´ı (CS-FPCM): 944 cores en NUMA+cluster

La tendencia parece ser

combinar MC + MD + coprocesadores (GPU, Xeon Phi,
FPGA...)
pero normalmente las ejecuciones en sistemas diferenciados

Consultar la evoluci´on en el TOP500
(http://www.top500.org/)

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Centros de supercomputaci´on

Sistemas de distintos tipos:

Marenostrum (BSC):
“With the last upgrade (2012-2013), MareNostrum has a peak
performance of 1,1 Petaflops, with 48,896 Intel Sandy Bridge
processors in 3,056 nodes, and 84 Xeon Phi 5110P in 42
nodes, with more than 104.6 TB of main memory and 2 PB of
GPFS disk storage.”
Pirineus (CESCA): 1344 cores de memoria compartida en
nodos hexacore
Ben-Arab´ı (CS-FPCM): 944 cores en NUMA+cluster

La tendencia parece ser

combinar MC + MD + coprocesadores (GPU, Xeon Phi,
FPGA...)
pero normalmente las ejecuciones en sistemas diferenciados

Consultar la evoluci´on en el TOP500
(http://www.top500.org/)

Sistemas

Paralelismo anidado

Programaci´on h´ıbrida

Paralelismo multinivel

Computaci´on heterog´enea

Pr´acticas

Programaci´on

Para poder explotar plenamente estos sistemas computacionales es
necesario otro tipo de programaci´on. Posibilidades:

Paralelismo anidado en OpenMP.

Paralelismo multinivel: threads OpenMP y dentro llamadas a
rutinas paralelas (MKL multithreading)

Programaci´on h´ıbrida: MPI+OpenMP, se crean procesos MPI
y cada proceso crea varios threads OpenMP

Combinar los tres: MPI+OpenMP+MKL

Computaci´on heterog´enea

Adaptativa

Grid computing, Cloud computing, Web computing, P2P
computing...

Sistemas

Paralelismo anidado

Pro
  • Links de descarga
http://lwp-l.com/pdf11351

Comentarios de: Computación Híbrida, Heterogénea y Jerárquica - Metodología de la Programación Paralela (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad