Sistemas de altas prestaciones en entornos distribuidos (v9c)

109
Diseño de Sistemas Distribuidos Máster en Ciencia y Tecnología Informática Curso 2017-2018 Alejandro Calderón Mateos y Félix García Carballeira Grupo de Arquitectura de Computadores [email protected] Sistemas de altas prestaciones en entornos distribuidos

Transcript of Sistemas de altas prestaciones en entornos distribuidos (v9c)

Page 1: Sistemas de altas prestaciones en entornos distribuidos (v9c)

DiseñodeSistemasDistribuidosMásterenCienciayTecnologíaInformática

Curso2017-2018

AlejandroCalderónMateos yFélixGarcíaCarballeiraGrupo deArquitectura [email protected]

•Sistemas de altas prestaciones en entornos distribuidos

Page 2: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

2

Page 3: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

3

Page 4: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

4

Page 5: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

5

Page 6: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

6

Sistemas DistribuidosComputación de altas prestaciones

Ideas

Ideas

Page 7: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Agenda

Introducción alacomputacióndealtasprestaciones– Qué,dóndeycómo– Hardwareysoftware

Evolución delacomputacióndealtasprestaciones– Plataformas– Tendencias

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

7

Page 8: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

8

Agenda

Introducción alacomputacióndealtasprestaciones– Qué,dóndeycómo– Hardwareysoftware

Evolución delacomputacióndealtasprestaciones– Plataformas– Tendencias

Page 9: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

9

Computacióndealtasprestaciones

• LacomputacióndealtasprestacionesoHPC(HighPerformanceComputing) secentraprincipalmenteenlavelocidad.

• Elobjetivoesconseguirlamáximacantidaddecómputo posibleenlamínimacantidaddetiempo.

Page 10: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

10

¿Dóndesenecesita?

[Culler99]

Page 11: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

11

Ejemplo1/2:Predicciónmeteorológica…(http://www.businessinsider.com/97-million-supercomputer-in-the-uk-2014-10)

• Laoficina encargada deprevisiones meteorológicas invertiráen unsupercomputador que lepermitirá mejores previsiones.– Conprecisión de300metrossepodrá indicar incidencias

relacionadas conniebla,rachas deviento,etc.– Predicciones conunmargen de1hora(en lugar de3como

ahora)

• Impacto:– Supondrá 97millones delibras (156,9millones dedólares)– Estará operacional en el2017.– Elsupercomputador pesa loque 11autobusesdedoble planta

http://observer.com/2012/09/red-bus-turns-heads-at-christies-london-themed-sale/ http://futurememes.blogspot.com.es/2012/08/supercomputing-16-petaflops-schmetaflops.html

• Capacidad computacional:– Será 13veces más potente que elque seusa ahora.– Tiene una capacidad aproximada de16petaFLOPS.

Page 12: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Ejemplo2/2:BigHero6(2014)…(http://www.engadget.com/2014/10/18/disney-big-hero-6/)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

12

http://technologybehindmagic.tumblr.com/post/100635699626/the-number-of-rendering-hours-that-went-into-big

Page 13: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Ejemplo2/2:BigHero6(2014)…(http://www.engadget.com/2014/10/18/disney-big-hero-6/)

• Tomanagethatclusterandthe400,000-pluscomputationsitprocessesperday(roughlyabout1.1millioncomputationalhoursperday),histeamcreatedsoftwarecalledCoda,whichtreatsthefourrenderfarmslikeasinglesupercomputer.Ifoneormoreofthosethousandsofjobsfails,CodaalertstheappropriatestaffersviaaniPhoneapp.

• Thefilmtakes199millioncore-hours(181days)ofrendering.Toputtheenormityofthiscomputationaleffortintoperspective,HendricksonsaysthatHyperion"couldrenderTangled(2010) fromscratchevery10days."

• Ifthatdoesn'tdrivethepowerofDisney'sproprietaryrendererhome,thenconsiderthis:SanFransokyo containsaround83,000buildings,260,000trees,215,000streetlightsand100,000vehicles(plusthousandsofcrowdextrasgeneratedbyatoolcalledDenizen).What'smore,allofthedetailyouseeinthecityisactuallybasedoffassessordataforlotsandstreetlayoutsfromtherealSanFrancisco.

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

13

Page 14: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

14

¿Cómoseconsiguemásvelocidad?

Page 15: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

15

¿Cómoseconsiguemásvelocidad?

– Mejoresalgoritmos• O(n2),viajante,…

Page 16: Sistemas de altas prestaciones en entornos distribuidos (v9c)

¿Cómoseconsiguemásvelocidad?

– Mejoresalgoritmos• O(n2),viajante,…

– Mejoresprocesadores(mejorasenlatecnología)• CPUa10GHz,510TBdeRAM,…

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

16

Page 17: Sistemas de altas prestaciones en entornos distribuidos (v9c)

¿Cómoseconsiguemásvelocidad?

– Mejoresalgoritmos• O(n2),viajante,…

– Mejoresprocesadores(mejorasenlatecnología)• CPUa10GHz,510TBdeRAM,…

– Paralelismo(mejorasenelusodelatecnologíaactual)• Speedup,LeydeAmdahl,…

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

17

Page 18: Sistemas de altas prestaciones en entornos distribuidos (v9c)

¿Esodelparalelismoquéimplica?

– Mejoresalgoritmos• O(n2),viajante,…

– Mejoresprocesadores(mejorasenlatecnología)• CPUa10GHz,510TBdeRAM,…

– Paralelismo(mejorasenelusodelatecnologíaactual)• Speedup,LeydeAmdahl,…

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

18

escalabilidad

https://cdn.turbonomic.com/wp-content/uploads/ScaleUpScaleOut.png

Page 19: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Tiposdeparalelismo

• Tareasindependientes:

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

19

Page 20: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Tiposdeparalelismo

• Tareasindependientes:

• Tareascooperativas:– Pipeline– Coordinación(mutex yconditions)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

20

Page 21: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Tiposdeparalelismo

• Tareasindependientes:

• Tareascooperativas:– Pipeline– Coordinación(mutex yconditions)

• Tareascompetitivas:– Códigosecuencial:-S

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

21

Page 22: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Speedup• Lamejora(ospeedup)enlaejecuciónparalelaconnelementosdecómputoserá:

speedup =tiempo_de_ejecución (1)/tiempo_de_ejecución (n)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

22

Page 23: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Speedup• Lamejora(ospeedup)enlaejecuciónparalelaconnelementosdecómputoserá:

speedup =tiempo_de_ejecución (1)/tiempo_de_ejecución (n)

• Nosiempreseobtieneunspeedup ideal:

http://www.nathankerr.com/projects/parallel-gis-processing/alternative_approaches_to_parallel_gis_processing.html

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

23

Page 24: Sistemas de altas prestaciones en entornos distribuidos (v9c)

LeydeAmdahl

• LeydeAmdahl:

“elspeedup teórico estálimitadoporlafracciónsecuencials delprograma”

speedup <=1

(1-s)n

s+

SIn↑ ENTONCESspeedup ~1/s

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

24

Page 25: Sistemas de altas prestaciones en entornos distribuidos (v9c)

LeydeAmdahl

0,00

2,00

4,00

6,00

8,00

10,00

0,10 0,20 0,30 0,40 0,50 0,60 0,70 0,80 0,90 1,00

10,00

5,00

3,332,50

2,001,67 1,43 1,25 1,11 1,00

speedup ~ 1/s

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

25

Page 26: Sistemas de altas prestaciones en entornos distribuidos (v9c)

¿Esodelparalelismoayuda?casodeestudio:genomahumano

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

26

§ http://genomebiology.com/2011/12/8/125http://pressroom.nvidia.com/easyir/customrel.do?easyirid=A0D622CE9F579F09&prid=878712&releasejsp=release_157

Page 27: Sistemas de altas prestaciones en entornos distribuidos (v9c)

¿Esodelparalelismoayuda?casodeestudio:genomahumano

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

27

§ http://genomebiology.com/2011/12/8/125http://pressroom.nvidia.com/easyir/customrel.do?easyirid=A0D622CE9F579F09&prid=878712&releasejsp=release_157

Yes!

Page 28: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Computacióndealtasprestaciones

• Paralelismo– LeydeAmdahl,…

• Mejoresalgoritmos– O(n2),viajante,…

• Mejoresprocesadores– 10GHz,510TB,…

+hardware

software

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

28

Page 29: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Agenda

Introducción alacomputacióndealtasprestaciones– Qué,dóndeycómo– Hardwareysoftware

Evolución delacomputacióndealtasprestaciones– Plataformas– Tendencias

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

29

Page 30: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Plataformahardwareysoftware

Computador de altas prestaciones

S.O. + servicios

AlmacenamientoRedProceso

Middleware (Single System Image)

Entorno paralelo MPI/PVMAplicaciones secuenciales

Aplicaciones paralelas

HW

SW

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

30

Page 31: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Plataformahardware

HW

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

31

§ procesamiento(vectorial vs multiprocesador)

§ memoria(compartida vs distribuida)

Page 32: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Plataformahardware

HW

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

32

§ procesamiento(vectorial vs multiprocesador)

§ memoria(compartida vs distribuida)

Page 33: Sistemas de altas prestaciones en entornos distribuidos (v9c)

TaxonomíadeFlynn

Single Instruction Multiple Instruction

Single Data

Multiple Data

Instruction Pool

Dat

a Po

ol

PU

MIMD

PU

PU

Instruction Pool

Dat

a Po

ol

SISD

PU

Instruction Pool

Dat

a Po

ol

SIMD

PU

PU

PU

Instruction Pool

Dat

a Po

ol

MISD

PU PU

http://www.buyya.com/microkernel/chap1.pdfDis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

33

Page 34: Sistemas de altas prestaciones en entornos distribuidos (v9c)

TaxonomíadeFlynn

Single Instruction Multiple Instruction

Single Data

Multiple Data

Instruction Pool

Dat

a Po

ol

PU

MIMD

PU

PU

Instruction Pool

Dat

a Po

ol

SISD

PU

Instruction Pool

Dat

a Po

ol

SIMD

PU

PU

PU

Instruction Pool

Dat

a Po

ol

MISD

PU PU

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

34

Page 35: Sistemas de altas prestaciones en entornos distribuidos (v9c)

TaxonomíadeFlynn

Single Instruction Multiple Instruction

Single Data

Multiple Data

Instruction Pool

Dat

a Po

ol

SISD

PU

MISD

multiprocesadorvectorial

MIMDSIMD

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

35

automata processor

Page 36: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Plataformahardware

HW

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

36

§ procesamiento(vectorial vs multiprocesador)

§ memoria(compartida vs distribuida)

Page 37: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Accesoamemoria

• Memoriacompartida(UMA)

• Memoriadistribuida(MD)

• Memorialógicamentecompartida(NUMA)

Memoria

P1 P2 …

M1

P1 P2 …

M2 M3

M1

P1 P2 …

M2 M3

Memoria

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

37

Page 38: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Accesoamemoria

Visión lógica de la memoria(comunicación/sincronización)

Mem

oria

físic

a

“Programación cómoda”

compartida

compartida

distribuida

distribuida

UMA

NUMA MD “escalabilidad”

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

38

Page 39: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Plataformasoftware

SW

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

39

• Vectoriales – Uso de instrucciones especiales

• Multiprocesador– UMA, NUMA

• OpenMP, …

– M. Distribuida• MPI, …

Page 40: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Plataformasoftware

SW

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

40

• Vectoriales – Uso de instrucciones especiales

• Multiprocesador– UMA, NUMA

• OpenMP, …

– M. Distribuida• MPI, …

Page 41: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Qué es MPI

• MPI es una interfaz de paso de mensaje que representa un esfuerzo prometedor de mejorar la disponibilidad de un software altamenteeficiente y portable para satisfacer las necesidades actuales en la computación de alto rendimiento a través de la definición de un estándar de paso de mensajes universal.

William D. Gropp et al.

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

41

Page 42: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Principales pilares de MPI

• Portabilidad:– Definido independiente de plataforma paralela.– Útil en arquitecturas paralelas heterogéneas.

• Eficiencia:– Definido para aplicaciones multihilo (multithread)– Sobre una comunicación fiable y eficiente.– Busca el máximo de cada plataforma.

• Funcionalidad:– Fácil de usar por cualquier programador que ya haya

usado cualquier biblioteca de paso de mensajes.

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

42

Page 43: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Implementaciones de MPI

Open MPI 3.0.0 (13/09/2017)– http://www.open-mpi.org/– FT-MPI + LA-MPI + LAM/MPI + PACX-MPI

MPICH 3.2.0 (12/11/2015)– http://www.mpich.org/– Argonne National Laboratory & University of Chicago

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

43

Page 44: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Cómo es MPI

#include <stdio.h>#include "mpi.h"

main(int argc, char **argv){

int node,size;int tam = 255;char name[255];

MPI_Init(&argc,&argv);

MPI_Comm_size(MPI_COMM_WORLD, &size );MPI_Comm_rank(MPI_COMM_WORLD, &node);MPI_Get_processor_name(name, &tam);printf("Hola Mundo2 del proceso %d de %d procesos (%s)\n",node,size,name);

MPI_Finalize();}

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

44

Page 45: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Cómo es MPI: uso interactivo

bsc41729@login2:~/tmp>mpicc-g-ohellohello.c

bsc41729@login2:~/tmp>cat>machineslogin1login2login3login4

bsc41729@login2:~/tmp>mpirun-np4-machinefilemachineshelloHolaMundo2delproceso2de4procesos(s41c3b03-gigabit1)HolaMundo2delproceso1de4procesos(s41c3b02-gigabit1)HolaMundo2delproceso3de4procesos(s41c3b04-gigabit1)HolaMundo2delproceso0de4procesos(s41c3b01-gigabit1)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

45

Page 46: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Cómo es MPI: uso de PBS (1)

bsc41729@login2:~/tmp>cathello.cmd#!/bin/bash#@job_type=parallel#@class=q10#@group=bsc41#@initialdir=/home/bsc41/bsc41729/tmp/#@output=hello.out#@error=hello.err#@restart=no#@blocking=unlimited#@total_tasks=2#@queue#ProgramExecution.

mpirun-np2\-machinefile$LL_MACHINE_LIST/home/bsc41/bsc41729/tmp/hello

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

46

Page 47: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Cómo es MPI: uso de PBS (2)

bsc41729@login2:~/tmp>llsubmit hello.cmdllsubmit:Processed command filethrough Submit Filter:"/etc/perf/loadl/scripts/llsubmit".llsubmit:The job "s42-gigabit1.mn.406842"hasbeen submitted.

bsc41729@login2:~/tmp>llqIdOwner Submitted STPRIClass Running On------------------------ ---------- ----------- -- --- ------------ -----------s42-gigabit1.404704.0bsc4172911/2712:19R50q09s06c4b11-gigabit1s42-gigabit1.404731.0bsc4172911/2712:32R50q09s07c1b10-gigabit1s42-gigabit1.404732.0bsc4172911/2712:32R50q09s06c4b03-gigabit1s42-gigabit1.404736.0bsc4172911/2712:34I50q09s42-gigabit1.406842.0bsc4172911/2717:18I50q10

4job step(s)inquery,1waiting,0pending,3running,0held,0preempted

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

47

Page 48: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Cómo es MPI: uso de PBS (3)

bsc41729@login2:~/tmp>cathello.outProgrambinaryis:/home/bsc41/bsc41729/tmp/helloMachinesfileis/gpfs/projects/bsc99/perf/restricted/spool/049/mlist/s42-gigabit1.mn.406849.0.machine_listSharedmemoryforintra-nodescomsisenabled.GMreceivemodeused:polling.2processeswillbespawned:Process0(/home/bsc41/bsc41729/tmp/hello)ons06c1b03-gigabit1.mnProcess1(/home/bsc41/bsc41729/tmp/hello)ons06c1b03-gigabit1.mnOpenasocketons06c1b03...Gotafirstsocketopenedonport33735.Sharedmemoryfile:/tmp/gmpi_shmem-811134:[0-9]*.tmpHolaMundo2delproceso1de2procesos(s06c1b03-gigabit1)HolaMundo2delproceso0de2procesos(s06c1b03-gigabit1)MPIId1isusingGMport2,board0(MAC0060dd4846f0).MPIId0isusingGMport4,board0(MAC0060dd4846f0).Receiveddatafromall2MPIprocesses.SendingmappingtoMPIId0.SendingmappingtoMPIId1.Datasenttoallprocesses.Reapremoteprocesses:AllremoteMPIprocesseshaveexited.

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

48

Page 49: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Cómo es MPI: uso de PBS (4)

bsc41729@login2:~/tmp>llclass -limitsclass group job job max max max wall clockname name nodes tasks jobs idletasks time------------ ------- ----- ----- ----- ---- ----- ----------------debug bsc41326480825600:10:00interactive bsc41111481402:00:00papibsc4132051280864012:00:00q09bsc4125651280864048:00:00q10bsc4125651280864048:00:00

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

49

Page 50: Sistemas de altas prestaciones en entornos distribuidos (v9c)

MPI2.2– 3.1(http://mpi-forum.org/docs/)

• Estructurasdedatos– Tiposdedatos(básicos,vectores,compuestos,…)– Grupodeprocesos(grupos,comunicadores,…)

• Pasodemensajes– Llamadaspuntoapunto(bloqueantes,…)– Llamadascolectivas(bcast,scatter,gather,…)

• Entradaysalida– Gestióndeficheros(apertura,cierre,…)– Gestióndecontenidos(vistas,punteros,…)

• Procesos– Gestióndeprocesos(creación,…)– Profiling

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

50

Page 51: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Plataformahardwareysoftware

Supercomputador

Linux (NTP, DNS, DHCP, TFTP, LDAP/NIS, etc.)

NFS, LUSTRE, GPFS, GFS, SAN

Gigabit, Infiniband,

Myrinet

SSH, C3Tools, IPMI, SNMP, Ganglia, Nagios, etc.

PBS/Torque (batch) + MAUI (planificador)

Compiladores de GNU, Intel, PGIBLAS, LAPACK, ACML, etc.

MPICH2/OpenMPICódigo C,

C++, FortranCódigo C/C++, Fortran

HW

SW

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

51

Nativo, virtualizado

Page 52: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Plataformahardwareysoftware

Supercomputador

S.O. + servicios

Almacenamiento(S.F. paralelo y compartido)

Red(ultrarápida)

Software de gestión de sistema (instalación, administración, monitorización)

Software de gestión de recursos

Software de desarrollo (compiladores y bibliotecas)

Entorno paralelo MPI/PVMAplicaciones secuenciales

Aplicaciones paralelas

HW

SW

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

52

Proceso(cpu,gpu,…)

Page 53: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Top500Junio2017(http://www.top500.org)

Rank Site System Cores Rmax(TFLOP/s)

Rpeak(TFLOP/s)

Power(kW)

1 National Supercomputing CenterinWuxiChina

Sunway TaihuLight - Sunway MPP,Sunway SW26010260C1.45GHz,SunwayNRCPC

10,649,600 93,014.6 125,435.9 15,371

2NationalSuperComputerCenterinGuangzhouChina

Tianhe-2(MilkyWay-2) - TH-IVB-FEPCluster,IntelXeonE5-269212C2.200GHz,THExpress-2,IntelXeonPhi31S1PNUDT

3,120,000 33,862.7 54,902.4 17,808

3SwissNationalSupercomputingCentre(CSCS)Switzerland

PizDaint - CrayXC50,XeonE5-2690v312C2.6GHz,Ariesinterconnect,NVIDIATeslaP100CrayInc.

361,760 19,590.0 25,326.3 2,272

4 DOE/SC/OakRidgeNationalLaboratoryUnitedStates

Titan - CrayXK7,Opteron 627416C2.200GHz,CrayGeminiinterconnect,NVIDIAK20xCrayInc.

560,640 17,590.0 27,112.5 8,209

5 DOE/NNSA/LLNLUnitedStates

Sequoia - BlueGene/Q,PowerBQC16C1.60GHz,CustomIBM 1,572,864 17,173.2 20,132.7 7,890

6 DOE/SC/LBNL/NERSCUnitedStates

Cori - CrayXC40,IntelXeonPhi725068C1.4GHz,AriesinterconnectCrayInc. 622,336 14,014.7 27,880.7 3,939

7JointCenterforAdvancedHighPerformanceComputingJapan

Oakforest-PACS - PRIMERGYCX1640M1,IntelXeonPhi725068C1.4GHz,IntelOmni-PathFujitsu

556,104 13,554.6 24,913.5 2,719

8RIKENAdvancedInstituteforComputationalScience(AICS)Japan

Kcomputer,SPARC64VIIIfx2.0GHz,TofuinterconnectFujitsu 705,024 10,510.0 11,280.4 12,660

9 DOE/SC/ArgonneNationalLaboratoryUnitedStates

Mira - BlueGene/Q,PowerBQC16C1.60GHz,CustomIBM 786,432 8,586.6 10,066.3 3,945

10 DOE/NNSA/LANL/SNLUnitedStates

Trinity - CrayXC40,XeonE5-2698v316C2.3GHz,AriesinterconnectCrayInc. 301,056 8,100.9 11,078.9 4,233

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

53

https://www.top500.org/list/2017/06/

Page 54: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Top500(country=es)

Rank Site System CoresRmax

(TFlop/s)Rpeak

(TFlop/s)Power(kW)

41 BarcelonaSupercomputing CenterSpain

MareNostrum - iDataPlex DX360M4,XeonE5-26708C2.600GHz,Infiniband FDR,IBM 48,896 925.1 1,017.0 1,015.6

168InstitutoTecnológicoydeEnergíasRenovablesS.A.Spain

TEIDE-HPC - FujitsuPRIMERGYCX250S1,Xeon E5-26708C2.600GHz,Infiniband QDR,Fujitsu 16,384 274.0 340.8 312

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

54

77 BarcelonaSupercomputing CenterSpain

MareNostrum - iDataPlex DX360M4,XeonE5-26708C2.600GHz,Infiniband FDR,IBM 48,896 925.1 1,017.0 1,015.6

259InstitutoTecnológicoydeEnergíasRenovablesS.A.Spain

TEIDE-HPC - FujitsuPRIMERGYCX250S1,XeonE5-26708C2.600GHz,Infiniband QDR,Fujitsu 16,384 274.0 340.8 312

106 BarcelonaSupercomputing CenterSpain

MareNostrum - iDataPlex DX360M4,XeonE5-26708C2.600GHz,Infiniband FDRIBM

48,896 925.1 1,017.0 1,015.6

13 BarcelonaSupercomputing CenterSpain

MareNostrum - LenovoSD530,XeonPlatinum816024C2.1GHz,IntelOmni-Path ,Lenovo 148,176 6,227.2 9,957.4 1,380

• Junio2014

• Junio2015

• Junio2016

• Junio2017

Page 55: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Top500Junio2017(http://top500.org/statistics/perfdevel/)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

55

Page 56: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Top500Junio2017(http://top500.org/statistics/perfdevel/)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

56

Ipad Pro (~400GF)

GTX 1080 (~9TF)

https://www.xataka.com/basics/que-son-los-teraflops-y-que-miden-exactamente

Page 57: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Nvidia Tegra X1(http://www.dailytech.com/NVIDIAs+64Bit+ARM+Tegra+X1+SoC+Doubles+the+Power

+of+K1+Guns+for+Qualcomm/article37049.htm)Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

57

http://www.dailytech.com/NVIDIAs+64Bit+ARM+Tegra+X1+SoC+Doubles+the+Power+of+K1+Guns+for+Qualcomm/article37049.htm

Page 58: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Nvidia Tegra X1(http://www.dailytech.com/NVIDIAs+64Bit+ARM+Tegra+X1+SoC+Doubles+the+Power

+of+K1+Guns+for+Qualcomm/article37049.htm)Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

58

http://www.dailytech.com/NVIDIAs+64Bit+ARM+Tegra+X1+SoC+Doubles+the+Power+of+K1+Guns+for+Qualcomm/article37049.htm

Page 59: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Agenda

Introducción alacomputacióndealtasprestaciones– Qué,dóndeycómo– Hardwareysoftware

Evolución delacomputacióndealtasprestaciones– Plataforma– Tendencias

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

59

Page 60: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Evoluciónenlasplataformasdecomputacióndealtasprestaciones

1950-1990

Supercomputadoras (SMP, MPP, Sistólico, Array, …)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

60

o Problemas con gran cantidad de cómputo

o Más usado en ciencia y ejércitoo Uso de paralelismo masivo

Page 61: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Evoluciónenlasplataformasdecomputacióndealtasprestaciones

1950-1990

Supercomputadoras & Mainframes(SMP, MPP, Sistólico, Array, …)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

61

o Problemas con gran cantidad de datos tratados

o Más usado en administracióno Uso de paralelismo y alta frecuencia

Page 62: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Evoluciónenlasplataformasdecomputacióndealtasprestaciones

• ConstruidoporDonaldBeckeryThomasSterling en1994(NASA)

• Formadopor16computadorespersonalesconprocesadorintel DX4a200MHzinterconectadosporunswitch Ethernet.

• Rendimientoteóricoerade3,2Gflops• Posibilidaddesupercomputadoras”baratas”

1950-1990

Supercomputadoras (SMP, MPP, Sistólico, Array, …)

~1994

Cluster

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

62

Page 63: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Evoluciónenlasplataformasdecomputacióndealtasprestaciones

• ConstruidoporDonaldBeckeryThomasSterling en1994(NASA)

• Formadopor16computadorespersonalesconprocesadorintel DX4a200MHzinterconectadosporunswitch Ethernet.

• Rendimientoteóricoerade3,2Gflops• Posibilidaddesupercomputadoras”baratas”

1950-1990

Supercomputadoras (SMP, MPP, Sistólico, Array, …)

~1994

Cluster

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

63

Page 64: Sistemas de altas prestaciones en entornos distribuidos (v9c)

1950-1990

Supercomputadoras (SMP, MPP, Sistólico, Array, …)

~1994

Cluster

Page 65: Sistemas de altas prestaciones en entornos distribuidos (v9c)

1950-1990

Supercomputadoras (SMP, MPP, Sistólico, Array, …)

~1994

Cluster

•http://es.wikipedia.org/wiki/Intel_MIC

Page 66: Sistemas de altas prestaciones en entornos distribuidos (v9c)

1950-1990

Supercomputadoras (SMP, MPP, Sistólico, Array, …)

~1994

Cluster

•http://es.wikipedia.org/wiki/Intel_MIC

Page 67: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Evoluciónenlasplataformasdecomputacióndealtasprestaciones

• Antecesor:metacomputing porLarrySmarr (NCSA)aliniciodelos80– Centrosdesupercomputación

interconectados:másrecursosdisponibles– I-WAYdemostradoen1995

• Grid apareceenunseminariodadoen1997enANLporIan FosteryCarlKesselman

1995-1997

Grid

~1994

Cluster

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

67

Page 68: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Evoluciónenlasplataformasdecomputacióndealtasprestaciones

• TérminoacuñadoporLuisF.G.Sarmenta (Bayanihan)

• En1999selanzalosproyectosSETI@home yFolding@home

• Adía6/11/2016todoslosproyectosBOINCsuponen~170,4TeraFLOPS

~1998

Volunteercomputing

1995-1997

Grid

~1994

Cluster

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

68

http://boincstats.com/es/stats/-1/project/detail

Page 69: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Evoluciónenlasplataformasdecomputacióndealtasprestaciones

• Googlepresenta:– MapReduce comoframework paratrabajarcongrandesconjuntos

dedatos:lamismafunciónseaplicaadiferentesparticionesdedatos(map)ydespuésestosresultadossecombinan(reduce)

– GFScomoformadealmacenarpetabytes dedatos(ordenadoresnormales,distribuciónescalableytoleranciaafallos)

• GFS+MRpermitealosusuariosconstruirmainframesbaratos(GFS+MRvsmainframesimilaracluster vssupercomputador)

~1998

Volunteercomputing

1995-1997

Grid

~1994

Cluster

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

69

2003

Cluster + GFS+MR

Doug Cuttingy Hadoop

Page 70: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Evoluciónenlasplataformasdecomputacióndealtasprestaciones

• AmazoninspiraelCloudcomputing actual:– datacenterspensandoenlascomprasdeNavidad,

elrestodeltiemposeusaban~10%– Dospilaresfundamentales:

utility computing yvirtualización

• Principalesmejoras:agilidad,coste,escalabilidad,mantenimiento,…

• Openstack:construiruncloud conuncluster

2006

Cloud

Servicio

InfraestructuraPlataforma

~1998

Volunteercomputing

1995-1997

Grid

~1994

Cluster

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

70

2003

Cluster + GFS+MR

Page 71: Sistemas de altas prestaciones en entornos distribuidos (v9c)

AmazonCluster ComputeInstance

2006

Cloud

~1998

Volunteercomputing

1995-1997

Grid

~1994

Cluster

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

71

2003

Cluster + GFS+MR

now

Cloud++

Page 72: Sistemas de altas prestaciones en entornos distribuidos (v9c)

AmazonElastic MapReduce

2006

Cloud

~1998

Volunteercomputing

1995-1997

Grid

~1994

Cluster

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

72

2003

Cluster + GFS+MR

now

Cloud++

Page 73: Sistemas de altas prestaciones en entornos distribuidos (v9c)

2006

Cloud

~1998

Volunteercomputing

1995-1997

Grid

~1994

Cluster

Distancia entre nodosUn chip

Un rack

Una sala

Un edificio

El MundoGrid computing

Cluster computing

SM Parallelcomputing

2003

Cluster + GFS+MR

now

Cloud++

Page 74: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Agenda

Introducción alacomputacióndealtasprestaciones– Qué,dóndeycómo– Hardwareysoftware

Evolución delacomputacióndealtasprestaciones– Plataformas– Tendencias

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

74

Page 75: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Principalestendencias

Computador de altas prestaciones

S.O. + servicios

Middleware (Single System Image)

Entorno paralelo

Aplicaciones secuenciales

Aplicaciones paralelas

Hardware

Software

CloudVolunteercomputing

GridSupercomputadoras (SMP, MPP, …)

ClusterPlataforma

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

75

Page 76: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Principalestendencias

Computador de altas prestaciones

S.O. + servicios

Middleware (Single System Image)

Entorno paralelo

Aplicaciones secuenciales

Aplicaciones paralelas

Hardware

Software

CloudVolunteercomputing

GridSupercomputadoras (SMP, MPP, …)

ClusterPlataforma

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

76

Page 77: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Plataforma:uso derecursos distribuidos

• Clouds:empleo derecursosdistribuidos alquilados bajodemanda

• Fog/Edge:acercar elcloudalos dispositivos quelousan

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

77

https://iot.do/ngd-openfog-fog-computing-2016-10

Page 78: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Plataforma:uso eficiente derecursos

• Cloudsprivados ypúblicos:ajuste deinfraestructura paraminimizar gasto

• Greencomputing:uso derecursosdistribuidos dedistintas organizaciones

• Internetcomputing:uso deordenadorespersonales aescala global(SETI@home)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

78

Page 79: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Principalestendencias

Computador de altas prestaciones

S.O. + servicios

Middleware (Single System Image)

Entorno paralelo

Aplicaciones secuenciales

Aplicaciones paralelas

Hardware

Software

CloudVolunteercomputing

GridSupercomputadoras (SMP, MPP, …)

ClusterPlataforma

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

79

Page 80: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:

A nivel de bit

A nivel de instrucción

A nivel de procesador

A nivel de multicomputador

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

80

Page 81: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:

A nivel de bit

A nivel de instrucción

A nivel de procesador

A nivel de multicomputador

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

81

Page 82: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:másprocesadoresycores heterogéneos

A nivel de procesador

A nivel de multicomputador

Hardware multicore

GPU

CPU

FPGA

Hardware específico

SoC

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

82

Page 83: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:másprocesadoresycores heterogéneos

• Tarjetasgráficas:usodelacapacidaddeprocesamientodelaspotentestarjetasgráficasactuales

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

83

Page 84: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:másprocesadoresycores heterogéneos

• Tarjetasgráficas:usodelacapacidaddeprocesamientodelaspotentestarjetasgráficasactuales

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

84

§ http://www.zdnet.com/blog/security/vendor-claims-acrobat-9-passwords-easier-to-crack-than-ever/2253

Page 85: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:másprocesadoresycores heterogéneos

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

85

§ http://www.many-core.group.cam.ac.uk/platforms/gpu.shtml

Page 86: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:másprocesadoresycores heterogéneos

• Tarjetasgráficas:usodelacapacidaddeprocesamientodelaspotentestarjetasgráficasactuales– CUDA:

EntornodeprogramaciónparapoderusarlapotenciadelastarjetasgráficasdeNVidia

– OpenCL:lenguajebasadoenC99extendidoparaoperacionesvectorialesyeliminandociertasfuncionalidades

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

86

Page 87: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:másprocesadoresycores heterogéneos

• Procesadoresmany-core:grancantidaddeprocesadoresenunmismochip

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

87

§ http://gizmodo.com/5846060/this-crazy-64+core-processor-wants-to-be-in-your-smartphone§ http://www.tgdaily.com/hardware-features/33451-tilera-announces-64-core-processor

Page 88: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:másprocesadoresycores heterogéneos

• Procesadoresmany-core:grancantidaddeprocesadoresenunmismochip

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

88

§ http://www.electroiq.com/articles/sst/2012/01/40nm-manycore-processors-roll-out-at-tilera.html

Page 89: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:másprocesadoresycores heterogéneos

• Procesadoresmany-core:grancantidaddeprocesadoresenunmismochip– <memoriacompartida>:

SMPLinux2.6

– <pasodemensaje>:Hypervisor (VMs)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

89

§ http://www.tilera.com/development_tools

Page 90: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:másprocesadoresycores heterogéneos

• Procesadoresheterogéneos:grancantidaddeprocesadoresconcoprocesadoresespecializados(many integrated cores)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

90

§ http://es.wikipedia.org/wiki/Intel_MIC§ http://hothardware.com/News/Intel-Demos-Knights-Ferry-Development-Platform-Tesla-Scores-With-Amazon/

Page 91: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:másprocesadoresycores heterogéneos

• Procesadoresheterogéneos:grancantidaddeprocesadoresconcoprocesadoresespecializados

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

91

§ http://es.wikipedia.org/wiki/Intel_MIC§ http://hothardware.com/News/Intel-Demos-Knights-Ferry-Development-Platform-Tesla-Scores-With-Amazon/

Page 92: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:másprocesadoresycores heterogéneos

• Procesadoresheterogéneos:grancantidaddeprocesadoresconcoprocesadoresespecializados– <memoriacompartida>:

IntelCilk (plus),IntelThreading Building Blocks,OpenMP,¿OpenACC?,OpenCL

– <pasodemensaje>:IntelMPI

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

92

§ http://goparallel.sourceforge.net/parallel-programming-intel-mic-early-experiences-tacc/§ http://www.drdobbs.com/parallel/intels-50-core-mic-architecture-hpc-on-a/232800139

Page 93: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:másprocesadoresycores heterogéneos

A nivel de procesador

A nivel de multicomputador

Hardware multicore

GPU

CPU

FPGA

Hardware específico

SoC

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

93

Page 94: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:memoriapersistente,degrancapacidadybajalatencia

• Memoria3D-XPoint:

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

94

§ http://www.golem.de/news/3d-xpoint-neuer-speicher-wird-als-ddr-modul-oder-pcie-karte-eingesetzt-1508-115728.html

Page 95: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:”memoria”concapacidaddecómputo

• Memoria“activa”:computosimpleenlapropiamemoria

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

95

§ http://www.hpcwire.com/2013/11/22/micron-exposes-memorys-double-life-automata-processor/

Page 96: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:aceleradoresespecíficosporUSB

• ConectorUSBType A.• VPU(Vision Processing Unit)

Myriad 2.• 4GBdememoriaLPDDR3.• Soportedelframework “Caffe”.• CompatibleconFP16(precisión

media).• Consumode1vatio.• Precio:79dólares(2017)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

96

§ https://www.muycomputer.com/2017/07/20/movidius-neural-compute-stick/§ https://www.movidius.com/MyriadX

Page 97: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Hardware:qubit-chip

• “…While quantumcomputerspromise greater efficiency andperformancetohandle certainproblems,they won’t replace theneed for conventional computingor other emerging technologieslike neuromorphiccomputing.We’ll need the technicaladvances that Moore’s lawdelivers inorder toinvent andscale these emergingtechnologies…”

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

97

§ https://newsroom.intel.com/news/intel-delivers-17-qubit-superconducting-chip-advanced-packaging-qutech/

Page 98: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Principalestendencias

Computador de altas prestaciones

S.O. + servicios

Middleware (Single System Image)

Entorno paralelo

Aplicaciones secuenciales

Aplicaciones paralelas

Hardware

Software

CloudVolunteercomputing

GridSupercomputadoras (SMP, MPP, …)

ClusterPlataforma

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

98

Page 99: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Software

• Integrarsolucionesvectorialesymultiprocesador(dentrodelasherramientasdedesarrollo)

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

99

• Vectoriales– SSE,AVX,AVX2,…

• Multiprocesador– UMA, NUMA

• OpenMP,• iTBB,…

– M. Distribuida• MPI,…• Map-reduce

Page 100: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Ejemplo:CUDA/LLVMadaptadoanuevosentornos

• CUDACompilerSDK• VersióndeClang/LLVMcon:

– GeneracióndecódigoparaGPU– CompilaciónconCUDA

• Soportepara:– MacOS– Windows– Linux(algunos)

§ http://developer.nvidia.com/cuda/cuda-llvm-compiler

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

100

Page 101: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Software

• Integrarsolucionesvectorialesymultiprocesador(dentrodelasherramientasdedesarrollo)

• Integrarsolucionesdememoriacompartidaypasodemensajeconayudadelsistemaoperativo.

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

101

• Vectoriales– SSE,AVX,AVX2,…

• Multiprocesador– UMA, NUMA

• OpenMP,• iTBB,…

– M. Distribuida• MPI,…• Map-reduce

Page 102: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Ejemplo:MPI3.x:adaptaciónarequisitosactuales

• Programaciónhíbrida• Toleranciaafallos• Accesoremotoamemoria• Comunicacióncolectivaytopología• Soportedeherramientas• Persistencia• Compatibilidadhaciaatrás

§ http://meetings.mpi-forum.org/MPI_3.0_main_page.php

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

102

Page 103: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Software

• Integrarsolucionesvectorialesymultiprocesador(dentrodelasherramientasdedesarrollo)

• Integrarsolucionesdememoriacompartidaypasodemensajeconayudadelsistemaoperativo.

• Buscarperfilessimplificadosquepermitanlamayorescalabilidadposible.

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

103

• Vectoriales– SSE,AVX,AVX2,…

• Multiprocesador– UMA, NUMA

• OpenMP,• iTBB,…

– M. Distribuida• MPI,…• Map-reduce

Page 104: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Sistemasdistribuidos:Computacióndealtasprestaciones

• Google:– ModeloMapReduce

– SistemasdeficherosdeGoogle– Algoritmosdeclasificación(K-Means +Canopy)

§ http://code.google.com/edu/parallel/mapreduce-tutorial.html§ http://code.google.com/edu/submissions/mapreduce-minilecture/listing.html§ http://en.wikipedia.org/wiki/MapReduce

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

104

Page 105: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Aplicaciones:Adaptaciónacomputacióndealtasprestaciones

• Ejemplos:– Primalanddual-based algorithms for

sensing range adjustment inWSNs

– The unified accelerator architecture forRNAsecondary structure prediction on FPGA

– Protein simulation datainthe relational model

– Dynamic learning model update ofhybrid-classifiers for intrusion detection

§ http://www.springer.com/computer/swe/journal/11227

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

105

Page 106: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Agenda

Introducción alacomputacióndealtasprestaciones– Qué,dóndeycómo– Hardwareysoftware

Evolución delacomputacióndealtasprestaciones– Plataformas– Tendencias

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

106

Page 107: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Bibliografía

• ParallelComputerArchitectures:aHardware/SoftwareApproach.D.E.Culler,J.P.Singh,withA.Gupta

• Capítulo 1

• Organización yArquitectura deComputadores (5ta.ed.)WilliamStallings

• Capítulo 16:Procesamiento Paralelo.

• Organización deComputadoras (4ta.ed.)AndrewS.Tanenbaum

• Capítulo 8:Arquitecturas decomputadoras paralelas.

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

107

Page 108: Sistemas de altas prestaciones en entornos distribuidos (v9c)

Bibliografía

• GPU+CPU– http://www.hardwarezone.com.ph/articles/view.php?cid=3&id=2786

• Cluster– http://www.democritos.it/~baro/slides/LAT-HPC-GRID-2009/Part1.pdf

• TOP500Supercomputer Sites– http://www.top500.org/

• Beowulf– http://www.beowulf.org/overview/index.html

Dis

eño

de S

iste

mas

Dis

tribu

idos

Alej

andr

o C

alde

rón

Mat

eos

108

Page 109: Sistemas de altas prestaciones en entornos distribuidos (v9c)

DiseñodeSistemasDistribuidosMásterenCienciayTecnologíaInformática

Curso2017-2018

AlejandroCalderónMateos yFélixGarcíaCarballeiraGrupodeArquitectura [email protected]

•Sistemas de altas prestaciones en entornos distribuidos