9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

67
Arkitektura Paraleloak IF - EHU Arkitektura Paraleloak 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera). Abiadura handiko konputagailuak (top500 zerrenda).

description

9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera). Abiadura handiko konputagailuak (top500 zerrenda). P. agindu-jarioak. SMP. 1. N. C. busa. SISD. 1. memoria partekatua. M N. datu-jarioak. N. MIMD. SIMD. P. MPP/NUMA Clusters. C. M. Prozesatze-matrizeak - PowerPoint PPT Presentation

Transcript of 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Page 1: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

Arkitektura Paraleloak

9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Abiadura handiko konputagailuak (top500 zerrenda).

Page 2: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

29Sistema paraleloen arkitektura

1

1

N

N

SIMD MIMD

SISD

agindu-jarioak

datu-jarioak

Prozesatze-matrizeakBektore-konputagailuak

MPP/NUMA

Clustersmemoria banatua

P

C

M

sare orokorra

MN

P

C

memoria partekatua

SMP

busa

Page 3: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

39

Prozesadore bakar bat (bektoriala) SMP sistemak / SIMD sistemak

Sistema paralelo masiboak, MPPEzaugarri onenak (kalkulu-abiadura): latentzia txikiko eta banda-zabalera handiko komunikazioak, diseinu bereziko prozesadoreak (batzuetan), kontrol-software oso optimizatua... Baina oso garestiak.

Cluster-ak

Arkitekturen eboluzioa

Page 4: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

49

Munduko 500 konputagailu azkarrenen zerrenda (LINPACK proba-bankua exekutatuz).

Rmax, Nmax, N1/2 parametroak neurtzen dira.Kontsumitzen den potentzia ere hasi da kontuan hartzen.

Ekuazio linealen sistema trinkoak (matrize-kalkulua). Kalkulu-abiadura handiak lor daitezke (maximo birtual bat).

Top500 (www.top500.org)

Page 5: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

59

6 hilean behin, 1993tik (ekainean eta azaroan)

40. zerrenda – 2012ko azaroa

Fabrikatzaile guztiak gutxi-asko onartua

Joeren analisia / merkatuaren eboluzioa

Top500

Page 6: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

69

Kalkulu-abiaduraren eboluzioa Top5+ Fabrikatzaileak Prozesadoreak: arkitektura / familia / kopurua Sistema: arkitektura / sarea / S.E. Erabilera

Top500

Page 7: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

79

×1,9/urte

162,1 PF/s14.885.800 nukleo(29.771 n. - 10,9 GF/s)

1 PF/s → 200810 PF/s → 2011100 PF/s → 2015

Top500

Intel ASCI Red SandiA

IBM ASCI White LLNL

NEC Earth Sim.

BlueGene

RoadRunner Jaguar

K-computerTitan

SequoiaTianhe-1A

Page 8: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

89

Rank Computer Core

sRmax Rpeak

(Pflop/s)

Power(kW)

Installation site Country/year Type

Top5 (12ko abendua)

1mpp

Titan, Cray XK7 Opteron 6274, 16 core 2,2 GHzCray Gemini, NVIDIA K20x

560.640 17,627,1 8.209 Oak Ridge N.L.

USA / 2012 -

2mpp

Sequoia, BlueGene/QPower BQC, 16c – 1,60 GHz

Custom (torus 5D)

1.572.864

(96x1024x16)

16,320,1 7.890 DOE/NNSA/LLNL

USA/ 2012 Research

3cluster

K computer, FujitsuSPARC67 viiifx - 2 GHz

Tofu interc., 6D torus/mesh705.027 10,5

11,3 12.660 RIKEN AICSJaponia/ 2011 Research

6cluster

SuperMUC, IDataPlex DX360M4Xeon E5-2680 - 2,7 MHz

Infiniband FDR147.456 2,9

3,2 3.433 Leibnitz R.Alemania/ 2012 Academic

BlueGene/Q gehiago: (4): Mira, 48x, USA; (5) JUQUEEN, 24x, Juelich; (9) Fermi, 10x, Bologna

8mpp

Tianhe-1A NUDT-MPPIntel EM64T Xeon X5670 - 2,93

GHzPropietary

186.368 2,64,7 4.040 Tianjin NSC

Txina / 2010 Research

Page 9: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

99

Kop. % Rmax (PF/s) Nukl. kop.

IBM 193 38,6 66,2 6.769.140HP 146 29,2 18,1 2.300.904Cray Inc. 31 6,2 28,2 1.908.880Appro 24 4,8 5,1 373.200SGI 19 3,8 5,1 434.406Fujitsu 10 2 13,8 921.048

Guztira (+) 500 100 162,1 14.885.800

Sistemaren fabrikatzailea

Top500

Page 10: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

109Top500

Page 11: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

119

Kop. % Rmax (PF/s)

Nukl. kop.

Eskalarra 497 99,4 162 14.884.520

Bektoriala 1 0,2 0,12 1.280

Guztira(+) 500 100 162,1 14.885.800

Prozesadoreen arkitektura

Top500

217: Earth Simulator 2, NEC - 0,12 PF/s - 1.280 nukleo

Page 12: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

129Top500

Page 13: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

139

Kop. % Rmax(PF/s) Nukl. kop.

Xeon 381 76,2 70,7 6.786.414Opteron 61 12,2 32 2.620.330Power 53 10,6 46,9 4.606.112NEC 1 0,2 122 1.280

Guztira(+) 500 100 162,1 14.885.800

Prozesadore-familia

Top500

Page 14: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

149

Nukleo kopurua (mpp / cluster)

Top500

Page 15: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

159

VP500

Y-MP C90

CM5

Paragon

T3D

SP2

T3E

ASCI Red

Sun HPC

CM2

Earth Sim.

Blue Gene

RoadRunnerJaguar

Tianhe-1AK computer

Top500

Sequoia

Titan

Page 16: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

169

Kop. % Rmax (PF/s)

Nukl. kop.

Clusters 411 82,2 83,4 8.060.460

MPP 89 17,8 78,7 6.825.340

Guztira 500 100 162,1 14.885.800

urte bat → x 2,2 x 1,6

Sistemaren arkitektura

Top500

Page 17: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

179Top500

Page 18: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

189

Kop. % Rmax (PF/s) Nukl. kop.

Infiniband 224 44,8 52,7 4.284.249Gigabit Eth. 189 37,8 20.4 3.161.618Custom 53 10.6 59,6 5.228.512Proprietary 15 3 6,4 954.256Cray 15 3 22,6 1.206.240Myrinet 3 0,6 0,3 49.645Fat tree 1 0,2 0,12 1.280

Guztira (+) 500 100 162,1 14.885.800

Komunikazio-sarea

Top500

Page 19: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

199Top500

Page 20: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

209Top500

Page 21: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

219

Kop. % Rmax (TF/s)

Nukl. kop.

Industry 247 49,4 28,5 3.933.385Research 121 24,2 96,2 7.837.116Academic 97 19,4 29,5 2.507.471Government 18 3,6 3,4 299.860Vendor 13 2,6 3,7 229.632Classified 4 0,8 0,9 78.366

Guztira 500 100 162,1 14.885.800

Erabilera

Top500

Page 22: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

229Top500

Page 23: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

239Top500

Page 24: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

249

36 Mare Nostrum IBM iDataPlex, Xeon E5 (8c), Infiniband FDR

33.664 nukl. – 637 TF/s290 BSC Bull, cluster (Infin.) – 5.544 nukl. – 103 TF/s

>> 39.208 nukl. – 0,7 PF/s (% 0,3) 11 Curie thin nodes, CEA

Bullx B510 Xeon E5 (8c), Infniband, 77.184 nukl. – 1.359 TF/s20 Tera-100, CEA

Bullx super-node S6010/S6030, Infniband, 138.368 nukl. – 1.050 TF/s

31/32 BlueGene/Q Power BQC, 65.536 nukl. - 690 TF/s…Guztira: 21 sistema (EDF, Airbus, CINES, Total,…)

>> 620.248 nukl.- 6,5 PF/s (% 4)

Top500: Espainia/Frantzia (12ko abendua)

>> Europa: Alemania (19 - 10,2 PF/s), B.H. (24 – 7,3 PF/s), Italia (7 - 2,4 PF/s)

Guztira: 31,2 PF/s (%20)

Page 25: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

259

Arina, Arinaz (260 nukleo, Itanium2)Guinness (440 nukelo, Xeon)Maiz (40 nukleo, Opteron)

Fitxategi paraleloko sistema (SFS)4 zerbitzari4,7 TB / 7,1 TB

Infiniband, 1 GB/s

EHUko ARINA cluster-a

Page 26: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

269EHUko ARINA cluster-a

Page 27: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

279

AplikazioakOro har, kimika, fisika eta biologia arlokoak.Erosi den softwarea: CFX, fluidoen dinamikaMOLCAS, molekulen egituraADF, molekulen egitura elektronikoaWIEN2K, solidoen egitura elektronikoaQsite, proteinakNBO5-NBOView, molekula-loturak

EHUko ARINA cluster-a

Page 28: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

289

Laborategiko cluster-a32 + 3×4 prozesadore (Pentium IV)Gigabit EthernetOpenMP, MPI, UPC

Paralelismoko Laborategia

Page 29: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

299Titan

Page 30: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

309Cray Jaguar

Page 31: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

319Cray Jaguar

Page 32: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

329K computer

Page 33: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

339Tianhe-1A

Page 34: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

349Tianhe-1A

Page 35: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

359Nebulae

Page 36: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

369Hopper

Page 37: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

379Tera-100

Page 38: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

389RoadRunner

Cell

Page 39: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

399RoadRunner

Page 40: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

409RoadRunner

Page 41: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

419RoadRunner

Page 42: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

429RoadRunner

Page 43: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

439RoadRunner

Page 44: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

449RoadRunner

Page 45: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

459JuGene - BlueGene/P

Page 46: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

469JuGene - BlueGene/P

Page 47: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

479

5,5 GB/s

11 GB/s

15 way fully assoc. pref. caches

5,5 GB/s

27 GB/s

22 GB/s

BlueGene/L

Page 48: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

489BlueGene/L

Page 49: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

499

32 x 32 x 641,4 Gb/s (x2)5,6 Tb/s erdibiketatr (max) = 69 ns

cut-throughmoldakorra deadlock-free

active messages

BlueGene/L

Page 50: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

509BlueGene/L

Page 51: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

519JuGene - BlueGene/P

Page 52: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

529JuGene - BlueGene/P

Page 53: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

539JuGene - BlueGene/P

Page 54: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

549JuGene - BlueGene/Q

Page 55: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

559Earth Simulator 2

Page 56: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

569Earth Simulator 2

Peak performance: 102,4 GF/s × 8 × 160 CPU = 131 TF/sShared memory: 128 GB × 160 = 20 TB

ES → ES2: proz: 1/4; mem: x2; perform: ×3,2; sarea: cross → fat tree

Page 57: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

579Earth Simulator 2

1 Chip LSI : 102,4 Gflops65 nm CMOS 11 Layers copper interconnection 21,04 mm x 19,84 mm 350 million transistors 8.960 pins Clock Cycle: 3,2 GHz Power Consumption: 240 W (Typ.)

Page 58: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

589Earth Simulator 2

Page 59: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

599Earth Simulator 2Internode Crossbar Switch (IXS)

Page 60: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

609Earth Simulator 2

Page 61: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

619Earth Simulator 2

Page 62: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

629Mare Nostrum (www.bsc.org.es)

Page 63: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

639Mare Nostrum

Page 64: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

649Mare Nostrum

Page 65: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

659Mare Nostrum

Page 66: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

669Mare Nostrum

Page 67: 9. OpenMP eta MPI: programa paraleloak sortzeko “tresnak” (sarrera).

Arkitektura ParaleloakIF - EHU

679Mare Nostrum