Archive

Archive for November, 2014

Curso de introducción a la programación con CUDA

November 12th, 2014

El curso PATC de programación en CUDA que se dará en Barcelona y pretende proporcionar conocimientos sobre programación en arquitecturas masivamente paralelas como GPUs (Nvidia y AMD) o  coprocesadores (Intel Phi).

 

Nvidia CUDADónde y cuándo

El curso lo ofrece el CUDA Center of Excellence (CCOE) concedido por Nvidia del Barcelona Supercomputing Center y la Universitat Politecnica de Catalunya en sesiones de mañana y tarde los entre los días 1 y 5 de Junio de 2015 en el Barcelona Supercomputing Center.

Objetivos

Proporcionar conocimiento y práctica sobre programación en arquitecturas masivamente paralelas como GPUs (Nvidia y AMD) o  coprocesadores (Phi). La programación de estos dispositivos requiere de conocimiento sobre principios de paralelización, modelos de paralelismo y comunicación, así como sobre los límites de las propias arquitecturas. El curso está orientado a principiantes que deseen desarrollar aplicaciones para estos procesadores.

 Agenda

Day 1 – 2nd June, 2015
09:00h The GPU hardware: Many-core Nvidia developments
11:15h CUDA Programming: Threads, blocks, kernels, grids
14:00h CUDA Tools: Compiling, debugging, profiling, occupancy calculator
16:15h CUDA Examples: VectorAdd, ReverseArray, Matrix Multiply
18.00h Adjourn

Day 2 – 3th June, 2015
09:00h Inside Kepler
11:15h Optimizing GPU codes on Kepler using CUDA 5.0
14:00h Lab: Getting Started Guide (PATC)
14:30h Lab: Vector Addition
16:15h Lab: Simple Matrix-Matrix Multiplication
18.00h Adjourn

Day 3 – 4th June, 2015
09:00h Future Nvidia designs: Maxwell, Pascal, Stacked DRAM
11:15h Programming with CUDA 6.0 and unified memory
14:00h Lab: Tiled 7-point 3D Stencil
16:15h Lab: Tiled Matrix-Matrix Multiplication
18.00h Adjourn

Day 4 – 5th June, 2015
09:00h Atomics and Histograming14:30h Lab: Vector Addition
11:15h Reductions
14:00h Lab: Histogramming
16:15h Lab: Vector Reduction
18.00h Adjourn

Day 5 – 6th June, 2015
09:00h Prefix Scan
11:15h CUDA Streams
14:00h Lab: Prefix scan
18.00h Adjourn

Más información

La información completa del curso y registro en la página web del curso:

http://www.bsc.es/marenostrum-support-services/hpc-education-and-training/patc-training/2015-1-5-jun-introduction-cuda

 

 

Anuncios, General, HPC

Eraginkortasun energetikoa, superkonputazioan eman beharreko pausua

November 5th, 2014

Mahai gaineko PC bat, smartphone eta superordenagailu baten artean antzekotasun batzuk badaude, guztiak programatu daitezken gailuak dira, sistema eragile batek kontrolatzen dituelarik, orokorrean hiruak kontsidera dezakegu ordenagailu bat bezala ulertzen duguna. Hala ere, bakoitzak arkitektura berezi bat dauka, eta ordenagailuak badira ere, helburu zehatz bat du arkitektura desberdin bakoitzak. PC batean, malgutasuna litzateke, hau da,  hainbat erabilera desberdinetarako prest egotea. Superkonputagailu batean kalkulu potentzia da helburu,  eta azkenik sakelekoaren kasuan, eraginkortasun energetikoa da helburua, normalean ez baitaude energia iturri bati lotuta.

Dispositiboen arteko diferentziak adibidez prozesadoreetan ikusten dira. GHz bateko ARM Cortex-A8 prozesadorea, Nokia N9000 smartphonean topatu dezakeguna alegia, core bakarra dauka eta Watio bat kontsumitzen du. Bestalde, Intel Xeon E5-2620v2 2.1 GHz-etako 6 kore dituen prozesadorea 80 W kontsumitzen ditu eta adibidez TSBAME-KFC superkonputagailuan topatzen dugu. Munduko superkonputagailu ahaltsuenen TOP500.org zerrendan 331 postuan dago, baina GREEN500 ordenagailu energetikoki eraginkorren zerrendan lehenengoan.

Eficiencia energética

Supekonputazioaren hurrengo erronka, Exaeskalara iristea da, hau da, trilloi bat kalkulu segundoko egin ditzaken superkonputagailua eraikitzea. Halako konputagailu bat eraikitzeko ordea, kontsumo elektrikoa izugarri gutxitu behar da proiektua bideragarria izateko. Har dezagun Tianhe-2, TOP500-eko ordenagailu ahaltsuenak, adibide modura. Superkonputagailu honek 33 mila bilioi eragiketa egiten ditu segundoko, 17 aldiz ahaltsuagoa izan beharko luke ordea aipatutako helburura irixteko. Tianhe-2, superkonputagailuaren kontsumo elektrikoa 17.8 MWetakoa da, edo 3.060 €-tako gastua orduko, (gaur egungo tarifaren araberam 0,18€/kWh inguru). Bitxia da ere, Tianhe-2-ren kokalekua, Yichang presatik 400 Km-tara, Hiru Arroiletako presa,  munduko handienetakoa eta 22.500 MW sortzen dituena.

Goiko datuen arabera eta estrapolazio lineal bat eginda, exaeskala ordenagailu bat bideragaitza dela ondorioztatuko dugu:

  •  Tianhe2-k 280 milloi € balio izan zituen.
  • 27 milloi € gastatzen ditu elektrizitatean urtero-
  • 17 antzeko ordenagailu behar dira exaeskalara iristeko

Beraz, 5.000 milloi € kostatuko litztaeke exaeskala ordenagailu bat eta urtero 500 milioi gastatuko lituzke elektrizitatean, erabat bideraezina noski!

Zenbaki hauek ikusita, ARM prozesagailuak HPC-erako erabiltzeko ideia sortu da, eta badirudi korapilo horretatik askatzeko irtenbide bat izan daitekela, prozesagailu hauek, gaur egun HPC-an erabiltzen direnen %1-a inguru kontsumitzen baitute. Prozesagailuarekin batera, konputagailuen beste osagaiek ere energi kontsumoa gutxitu beharko dute noski. Prozesagailu arkitektura aldaketa ez da horren erraza ordea, prozesagailu horietan exaeskala maila iristeko programazio lengoaia egokirik ez dagoelako. Are gehiago, programazio lengoaia eraginkor bat beharrezkoa da etorkizuneko prozesagailuen erabilera optimizatzeko.

Bartzelonako BSC-CNS Montblanc proiektuaren buru da eta proiektu honek ARM-rako optimizatutako komunikazio liburutegi batzuk atera bezain pronto, hasiko garela ikusten ARM motako prozesagailuak HPC munduan barra barra zabaltzen.

Erasmo Seebold.
IEFPS Elorrieta-Erreka Mari institutoko ikaslea IZO-SGI-n praktiketan.

 

 

HPC