Calculateurs parallèles et styles de programmation

Dimension: px
Commencer à balayer dès la page:

Download "Calculateurs parallèles et styles de programmation"

Transcription

1 Calculateurs parallèles et styles de programmation Polyvalence des architectures ccnuma (resp. NUMAflex) des Origin 2000 (resp. 3000) Thomas Leduc CERMA - UMR CNRS/MCC 1563 École d Architecture de Nantes le 16 février 2005

2 Plan de la présentation ˆ Introduction : généralités et classifications, ˆ top500.org et centres nationaux, ˆ le SGI Origin 2000 du PPIdFS, ˆ NUMAflex et les Origin/Altix 3000, ˆ les outils, ˆ comparaisons en exemples, ˆ fonctions booléennes 1-résilientes.

3 Tentatives de classifications Généralités sur l algorithmique parallèle Première partie I Introduction : généralités et classifications

4 Tentatives de classifications Généralités sur l algorithmique parallèle Points abordés... Tentatives de classifications Petit rappel... Taxinomie de Flynn Adressages mémoire Traitement parallèle sur le processeur Quelques AOC... Généralités sur l algorithmique parallèle Granularité Modèles de programmation Évaluation du parallèlisme

5 Tentatives de classifications Généralités sur l algorithmique parallèle Caractéristiques fondamentales Une machine parallèle, c est : ˆ une collection d unités de calculs, ˆ capables de communiquer ˆ et coopérer ˆ dans le but de résoudre rapidement ˆ des problèmes de grande taille.

6 Tentatives de classifications Généralités sur l algorithmique parallèle Taxinomie de Flynn revisitée... Préparation du petit-déjeuner dans la famille D. : ˆ SISD (von Neumann) : Mme D. (le programme) se charge de tout et traite les tartines (découpe, application du beurre et de la confiture : les données) en séquence ; ˆ MISD (pipeline) : à la chaîne, le 1er coupe le pain, le 2e le beurre, le 3e applique la confiture et le 4e dispose le résultat dans un plat... Si le temps passé à chaque étape est identique, l accélération est proche de 4 ; ˆ SIMD : Mme D. prend les commandes, les autres obéïssent en traitant, de manière synchrone, leurs propres données (réplication du pain, de la plaquette de beurre et du pot de confiture en autant de convives que possible) ; ˆ MIMD : chacun est autonome et prépare ses tartines de manière asynchrone (attention aux accès concurrents à une même donnée partagée) ;

7 Tentatives de classifications Généralités sur l algorithmique parallèle Types d adressage mémoire ˆ mémoire distribuée : ˆ architectures de types DADM Disjoint Address space Distributed Memory, ˆ accès mémoire de type NORMA (NO Remote Memory Access), ˆ + : scalabilité des accès mémoires, cohérence de cache ; ˆ : échange de message explicite, cohérence difficile entre distribution des données et travail des processeurs, surcoûts dûs aux communications/synchronisations ;

8 Tentatives de classifications Généralités sur l algorithmique parallèle Types d adressage mémoire (2) ˆ mémoire partagée : ˆ architectures de types Single Address space Shared/Distributed Memory, Architecture Accès mémoire Commentaire SASM UMA Uniform Memory Access, coût d accès constant SADM NUMA Non-UMA, temps d accès fonction de la localisation des données ccnuma cache-coherent NUMA, variante des NUMA avec un mécanisme de caches OSMA COMA Operating System Memory Access Cache Only Memory Access, les mémoires locales sont assimilées à des caches ˆ + : programmation simplifiée, adressage global, rapide partage des données ; ˆ : passage à l échelle, cohérence de cache coûteuse et parfois explicite ;

9 Tentatives de classifications Généralités sur l algorithmique parallèle Traitement parallèle au niveau du processeur ˆ architecture super-scalaire : plusieurs opérations arithmétiques simultanées en pipeline, The R10000 is a 4-way superscalar RISC CPU. Four-way means that it can fetch and decode 4 instructions per clock cycle. Superscalar means that it has enough independent, pipelined execution units that it can complete more than 1 instruction per clock cycle, réf , ; ˆ architecture vectorielle : ˆ 16 pipelines sur NEC SX-5 4 sur MIPSpro R , ˆ bande passante registres : 32 accès à des références de 64 bits par cycle sur NEC SX-5 1 sur MIPSpro R10K, ˆ 2 opérations 16 pipelines par cycle sur NEC SX-5 2 opérations sur MIPSpro R , ˆ trouver des séquences de codes où un même opérateur est appliqué à un grand nombre d opérandes!

10 Tentatives de classifications Généralités sur l algorithmique parallèle Bref glossaire... ˆ NOW : Network Of Workstation, ˆ cluster : notion logique plus que réalisation physique (load balancing et high availability, 1994 : original Beowulf cluster), ˆ MPP : Massively Parallel Processor, a loosely coupled or shared nothing system, ˆ SMP : Symmetric Multi-Processor, a shared everything system (image système unique), ˆ constellation : cluster constitué d un nombre restreint de noeuds hyper puissants, à grosse mémoire partagée.

11 Tentatives de classifications Généralités sur l algorithmique parallèle Points abordés... Tentatives de classifications Petit rappel... Taxinomie de Flynn Adressages mémoire Traitement parallèle sur le processeur Quelques AOC... Généralités sur l algorithmique parallèle Granularité Modèles de programmation Évaluation du parallèlisme

12 Tentatives de classifications Généralités sur l algorithmique parallèle Granularité de parallélisme ˆ fine : la recherche sur les séquences d instructions susceptibles d être indépendantes (et donc parallélisables) se fait au niveau de groupes d une dizaine d instructions au plus ; ˆ moyenne : ce degré correspond au niveau appelé tâche qui regroupe les notions de procédures, routines, primitives... ˆ grosse : ce degré correspond au niveau de l application elle-même. Le nombre d instructions n est ici plus limité et le parallélisme est recherché dans le déroulement même des travaux ou dans la mise en concurrence des différentes applications ou des différents utilisateurs. Exception faite des ressources, il n y a souvent pas de dépendance entre les programmes.

13 Tentatives de classifications Généralités sur l algorithmique parallèle Modèles de programmation ˆ parallélisme de données (décomposition de domaines), granularité fine à moyenne, modèle d exécution SIMD ou MIMD + synchronisations globales régulières, ˆ paralléliseurs automatiques (APO), ˆ outils data-parallel (HPF), ˆ directives de parallélisation à mémoire partagée (OpenMP), ˆ parallélisme de contrôle (ou de tâches), granularité moyenne à grosse, modèle d exécution MIMD (SPMD ou MPMD), ˆ PVM ou MPI, ˆ parallélisme de flux : vectorisation dans le cas d une fine granularité ; les données traversent les tâches élémentaires en mode pipeline.

14 Tentatives de classifications Généralités sur l algorithmique parallèle Évaluation des performances Soit un algorithme, de taille n, sur p processeurs, ˆ accélération (speedup) : S p (n) = Ts(n) T p(n), ˆ parallélisabilité : S p (n) = T 1(n) T p(n), ˆ généralement p S p (n) S p (n) 1. Les gains sur-linéaires sont souvent dû à des défauts de cache ; ˆ efficacité : E p (n) = Sp(n) p, ˆ loi d Amdahl : soit f(n) la fraction d algorithme devant être 1 exécutée séquentiellement, S p (n) = 1 f (n) f (n)+ p p 1 f (n). Si 10% du code est purement séquentiel, l accélération ne pourra pas dépasser le facteur 10. ˆ passage à l échelle ou scalabilité,

15 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau Deuxième partie II Le top500.org et le cas français

16 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau Points abordés... État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationaux

17 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau top500.org ˆ 24 e édition visible sur : ˆ publication bi-annuelle (juin & novembre), depuis juin 1993, des «500 most powerful commercially available computer systems known to us», ˆ ordonnancement selon l indicateur de meilleure performance au Linpack Benchmark - implémentation High-Performance Linpack (HPL) nécessitant MPI et les BLAS (ou VSIPL), sur : ˆ jusqu en 2004 : liste plus spécifique :

18 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau top500.org - type d architecture ˆ classement par type d architecture : Nbre % Linpack Théorie #proc Tflops Tflops Cluster Constellation MPP All en 10 ans : SIMD (7% en 93), Single Processor (20% en 93) et SMP (53% en 98) et Cluster et Constellation, ˆ... et par architecture de processeur : Nbre % Linpack Théorie #proc Tflops Tflops Scalaire Vectorielle

19 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau top500.org - point de vue géographique

20 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau top500.org - autre point de vue géographique

21 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau top500.org - constructeurs

22 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau top500.org - famille de processeurs

23 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau Points abordés... État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationaux

24 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau top500.org - évolution des types d architecture

25 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau top500.org - évolution des types de processeurs

26 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau top500.org - cas particulier des clusters

27 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau top500.org - planification...

28 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau Points abordés... État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationaux

29 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau Aperçu du TOP5 et de quelques entrées... ˆ extraits du top500.org au 11/2004 : Rang Site Constr. Tflops soutenus 1 US/DOE IBM 71 2 US/NASA SGI 52 3 JP/Earth Simulator Center NEC 36 4 SP/Barcelona SC IBM 21 5 US/LLNL Cal. Dig. Corp UK/ECMWF IBM 9 17 CN/Shangai SC Dawning 8 30 DE/FZJ IBM FR/CEA HP CH/Crédit Suisse IBM US/SBC Service Inc. HP 0.85 ˆ il y a 128 entrées européennes dont 15 françaises,

30 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau Points abordés... État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationaux

31 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau Centres de Calcul nationaux (11/2004) Rang Constr Type Site An #proc 41 HP αserver SC45, 1 GHz CEA/DAM IBM xseries Cluster Xeon 2.4 GHz - GEth Total IBM xseries Cluster Xeon 2.4 GHz - GEth SG IBM pseries 690 (Power 4+, 1.7 GHz) CNRS/Idris IBM pseries 655 (Power 4+, 1.7 GHz) CNRS/Idris SGI Altix 1.5 GHz CEG Gramat HP Cluster Xeon 3.2 Gz - Myrinet Soc. Gale SGI Altix 1.3 GHz Total SGI Altix 1.3 GHz Total Bull NovaScale, Itanium2 1.3 GHz, quadrics Bull HP SuperDome 875 MHz/HyperPlex Cegetel HP αserver SC45, 1.25 GHz CEA IBM eserver Opteron 2 GHz, GEth Gouv HP Cluster Xeon 3 Gz Crédit Lyon HP Cluster Xeon 3 Gz Crédit Lyon

32 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau Centres de calcul académiques (1) ˆ IDRIS : ˆ Zahir : 116 noeuds IBM/SP4, 1024 cpu, 3.1 To RAM, 6.55 Tflops, ˆ Uqbar : 3 noeuds vectoriels NEC SX-5, 40 cpu, 224 Go RAM, 320 Gflops, ˆ vedia : cluster de 6 noeuds quadripro COMPAQ ES40, 24 cpu, 36 Go RAM, 38 Gflops, ˆ Iris : frontale graphique, SGI Origin 3800, 8 R 14K (500 MHz), 4 Go RAM, 2 pipes graph., ˆ Rhodes : frontale, SGI Origin 2100, 8 R 12K (350 MHz), 16 Go RAM, ˆ Gaya : stockage, SGI Origin 3900, 12 R 16K, 32 Go, 31 To HD + 1 Po sur 3 robots de stockage,

33 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau Centres de calcul académiques (2) ˆ CINES : ˆ IBM/SP4, 9 noeuds, 1.85 Tflops, 4 To HD, ˆ IBM/SP3, 29 noeuds, 464 cpu, 0.7 Tflops, 4.6 To HD, ˆ SGI Origin 3800, 768 R 14K (500 MHz), 384 Go RAM, 768 Gflops, ˆ SGI Origin 2100, 8 cpu, 22 To HD, ˆ Sun Enterprise 4500, 6 Ultra SparcII (336 Mhz), 2 Go RAM, 6 To HD, ˆ IBM H50, 2 cpu, ˆ SAN + Robothèque STORAGETEK STK 9310 (5 500 cartouches, 9 lecteurs),

34 État des lieux en 11/2004 Évolution sur la dernière décennie La France face au top5 et dans la CE Centres de calcul nationau Centres de calcul académiques (3) ˆ méso-centres (http://www.irisa.fr/orap/) : ˆ CRI Orsay : ˆ CCH : ˆ CRIHAN : ˆ ICPS : ˆ CALMIP : ˆ CDCSP : https://cdcsp.univ-lyon1.fr/, ˆ...

35 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Troisième partie III SGI Origin 2000 du PPIdFS

36 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Points abordés... Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement

37 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement SGI Origin 2000 du PPIdFS ˆ 64 cpu MIPSpro R (195 et 250 MHz) avec 2 caches L1 de 32 Ko et un cache L2 de 4 Mo, ˆ 24 Go de RAM, ˆ 288 Go de disques, ˆ architecture ccnuma, ˆ topologie hypercube, ˆ CrayLink Interconnect de 1600 Mo/s, ˆ IRIX m (< m).

38 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Rack et module 340 kg, cm 3, 5750 watts.

39 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Dissection d un module

40 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Contenu d une carte nodale IP27 ou IP31 Distributed Shared-Memory, directory-based cache coherence.

41 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Interconnexion des modules

42 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Le MultiModule System Controller

43 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Interconnexion des MMSC

44 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement MMSC display et MSC Front Panel

45 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Points abordés... Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement

46 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Rappels : Question de latences ˆ 1 cycle d horloge pour une CPU cadencée à 195 MHz (resp. 250 MHz) dure plus de 5.1 ns (resp. exactement 4 ns), ˆ la mémoire est organisée en pages. Chaque accès mémoire nécessite de traduire une adresse virtuelle en une adresse physique. Le Translation Lookaside Buffer stocke les 64 dernières pages accédées pour réduire la latence. L accès à une autre page constitue un défaut de page ; Type d accès mémoire Latence (en cycles) Registre 1 Cache L1 2 ou 3 Cache L2 (après L1) 8 à 12 Mémoire principale (+ cache dans le TLB) 75 à 250 Mémoire principale (+ recharge du TLB) 2000 Swap > 10 8

47 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Latences pour les accès distants Configuration à 64 cpus : ˆ 5 sauts de routage au maximum (2.97 en moyenne), ˆ latence en lecture 1110 ns au maximum (796 ns en moyenne).

48 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Points abordés... Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement

49 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Bandes passantes comparées ˆ sur SGI Origin 2000 du PPIdFS (entre 500 et 900 mbps), avec l implémentation propriétaire IRIX/MPT-1.6 : % cc -fullwarn -Ofast=ip27 -ansi -pedantic -o sendrecv sendrecv.c -lmpi % mpirun -np 2./sendRecv Bande passante : Mo/s ( mbps) % mpirun -np 2./sendRecv Bande passante : Mo/s ( mbps) ˆ sur un NOW : entre deux xeon sur un réseau local Fast-Ether-Switché (85 mbps), avec l implémentation LAM : % hcc -Wall -ansi -pedantic -O3 -o sendrecv sendrecv.c % mpirun -np 2./sendRecv Bande passante : Mo/s (85.05 mbps)

50 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Listing du MPI Send / MPI Recv 20 M P I I n i t (& argc, & a r g v ) ; MPI Comm rank (MPI COMM WORLD, & rang ) ; n = a t o i ( a r g v [ 1 ] ) ; tab = ( unsigned char * ) c a l l o c ( n, s i z e o f ( unsigned char ) ) ; i f ( rang == 0) { 25 f o r ( i = 0 ; i < n ; i ++) tab [ i ] = ( unsigned char ) ( * ( double ) rand ( ) / ( ( double ) RAND MAX + 1) ) ; t t d = MPI Wtime ( ) ; MPI Send ( tab, n, MPI CHAR, 1, TAG VECTEUR, MPI COMM WORLD) ; MPI Recv(& t t f, 1, MPI DOUBLE, 1, TAG TEMPS, MPI COMM WORLD, & s t a t u t ) ; 30 p r i n t f ( Bande p a s s a n t e : %. 2 f Mo/ s (%.2 f mbps )\n, n / (MO * ( t t f t t d ) ), 8 * n / (MO * ( t t f t t d ) ) ) ; } e l s e i f ( rang == 1) { MPI Recv ( tab, n, MPI CHAR, 0, TAG VECTEUR, MPI COMM WORLD, & s t a t u t ) ; t t f = MPI Wtime ( ) ; 35 MPI Send(& t t f, 1, MPI DOUBLE, 0, TAG TEMPS, MPI COMM WORLD) ; } M P I F i n a l i z e ( ) ;

51 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Points abordés... Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement

52 Présentation du matériel Questions de latences Bandes passantes comparées Assistance au développement Assistance au développement ˆ ˆ debugger TotalView, ˆ analyseur Vampir / Vampirtrace, ˆ parallèliser à bon escient : % cc -g -pg -o seqgcc produitmatricescarrees.c produitmatricescarrees_tc.c %./seqgcc 1000 > /dev/null 2>&1 % gprof --brief./seqgcc [...] % cumulative self self total time seconds seconds calls ms/call ms/call name produitmatricescarrees initialisation calcultrace [...]

53 Quatrième partie IV SGI : famille des Origin et Altix 3000

54 SGI : du ccnuma au NUMAflex ˆ design NUMAflex : cpu, mémoire, I/O, réseau d interconnexion, pipe graphique et stockage de masse sont autants de composants (bricks) indépendants ; Tronc commun Origin/Altix : ˆ D-brick (stockage, 16 FC, 2To), ˆ IX-brick (base I/O, 11 slots PCI-X) et PX-brick (PCI extension, 12 slots hotplugs PCI/PCI-X), ˆ R-brick ([meta-]routeur, 512cpus),

55 SGI : gammes Origin et Altix ˆ Commodity Off the Shelf Technology (COST) : tous les éléments matériels des supercalculateurs scalaires d aujourd hui, sont des éléments conçus pour un usage générique dans des systèmes diversifiés ; gamme Altix (01/2003) : ˆ OS : linux, ˆ C-brick : 4 Itanium2 (Madison), caches : 32 Ko L1, 256 Ko L2, 9 Mo Mo L3, 32Go ram ; ˆ seul (?) cluster linux NUMA. Image système unique jusqu à 64 cpus (< 1To de RAM en 64 bits) ; gamme Origin (07/2000) : ˆ OS : Irix, ˆ C-brick : 4 MIPSpro R14000 (jusqu à 16 R16000 pour la Cx-brick), caches : 32 Ko L1, 8 Mo L2 ;

56 Dissection d un rack

57 Configuration à 512 cpus (1) en configuration calcul, il y a dans l Origin 3800 de la NASA : ˆ 128 C-Bricks dans 16 C-racks, ˆ 44 R-Bricks, ˆ 2 I-bricks, ˆ 1 P-Brick, ˆ 0 D-Brick ˆ 17 Power Bay (une par rack),

58 Configuration à 512 cpus (2)

59 Question de latences et bandes passantes Latences : ˆ gamme Altix : ˆ accès mémoire locale (noeud bipro) : 145 ns ; ˆ accès mémoire autre noeud même C-brick : 290 ns ; ˆ chaque saut de routage ajoute 45 à 50 ns (en NUMAlink v3), chaque mètre de cable NUMAlink ajoute 10 ns, ˆ nombre de sauts de routage au pire : 3 (16 cpus), 4 (32 cpus), 5 (64 et 128 cpus), 7 (256 cpus)... ˆ gamme Origin : ˆ accès mémoire locale : 175 ns ; ˆ accès mémoire distante : 585 ns (au pire), ns (en moyenne) ;

60 NASA : 20 noeuds SGI Altix 3700 à 512 cpus

61 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI Cinquième partie V Énumération des principaux outils

62 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI Points abordés... APO en Fortran 90 OpenMP SHMEM HPF PVM MPI

63 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI L Auto-Parallelizing Option (APO) ˆ The MIPSpro Auto-Parallelizing Option (APO) enables the MIPSpro compilers to optimize parallel codes and to enhances performance on multiprocessor systems. APO is a replacement for POWER C and POWER Fortran ; ˆ l APO est adaptée au cas particulier d applications possédant des données uniformes et en grand nombre et dont les traitements à effectuer sont identiques sur chaque donnée (data-parallelism, fine granularité).

64 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI Bibliographie concernant l APO Pour plus d information, consulter les documents suivants disponibles en ligne à l adresse : ˆ chapitre 8 du MIPSpro Fortran 90 Commands and Directives Reference Manual (document n ), ˆ chapitre 5 du C++ Programmer s Guide (document n ), ˆ annexe C du MIPSpro Fortran 77 Programmer s Guide (document n ),

65 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI Produit de matrices en Fortran 90 PROGRAM p r o d u i t M a t r i c e s i m p l i c i t none i n t e g e r : : i, j, k, n r e a l : : ttd, t t f 5 r e a l, a l l o c a t a b l e, dimension ( :, : ) : : a, b, c PRINT *, E n t r e z l a d i m e n s i o n des m a t r i c e s c a r r e e s : ; READ *, n CALL c p u t i m e ( time=t t d ) ALLOCATE( a ( n, n ), b ( n, n ), c ( n, n ) ) 10 CALL random number ( a ( :, : ) ) CALL random number ( b ( :, : ) ) do i =1,n do j =1,n c ( i, j ) = do k=1,n c ( i, j ) = c ( i, j ) + a ( i, k ) * b ( k, j ) end do end do end do 20 CALL cpu time ( time=t t f ) PRINT*, Temps t o t a l de c a l c u l :, t t f ttd, s e c o n d e s! 25 CALL c a l c u l e r T r a c e ( c, n ) DEALLOCATE( a, b, c ) END PROGRAM p r o d u i t M a t r i c e s

66 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI L APO sur SGI Origin 2000/3800 en chiffres ˆ compilation avec production de fichiers.anl,.list et.m : % f90 -apokeep -Ofast=ip27 -fullwarn -o f90apo produitmatrices.f90 /opt/mipspro/ /usr/lib32/cmplrs/be translates /tmp/ctmb.baaa0l l5 into produitmatrices.m, based on source produitmatrices.f90. The file produitmatrices.list gives the parallelization status of each loop. ˆ résultats pour n=2000 (Origin 2000 vs Origin 3800) : nbpcs temps (en s) accélération efficacité

67 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI Rapport automatique : extrait du fichier.list P a r a l l e l i z a t i o n Log f o r Subprogram c a l c u l e r t r a c e 5 2 : PARALLEL ( Auto ) m p d o c a l c u l e r t r a c e 1 5 P a r a l l e l i z a t i o n Log f o r Subprogram MAIN 1 0 : Not P a r a l l e l C a l l F4I4RAN on l i n e : Not P a r a l l e l 10 C a l l F4I4RAN on l i n e : Not P a r a l l e l C a l l F4I4RAN on l i n e : Not P a r a l l e l 15 C a l l F4I4RAN on l i n e : PARALLEL ( Auto ) mpdo MAIN : Not P a r a l l e l Loop i s c o n t a i n e d w i t h i n a p a r a l l e l c o n s t r u c t : Not P a r a l l e l Loop i s c o n t a i n e d w i t h i n a p a r a l l e l c o n s t r u c t.

68 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI Rapport automatique : extraits du fichier.m SUBROUTINE c a l c u l e r t r a c e (MATRICE, DIM) C$OMP PARALLEL DO i f ( ( ( DBLE( m p s u g n u m t h r e a d s f u n c$ ( ) ) * ( (DBLE( C$& mp sug numthreads func$ ( ) ) * 1. 23D+02) D+03) ). LT. ( ( DBLE( C$& DIM) * DBLE( ( m p s u g n u m t h r e a d s f u n c$ ( ) + 1) ) ) * 4. 0 D00 ) ) ), 5 C$& p r i v a t e ( I ), s h a r e d (MATRICE, DIM), r e d u c t i o n ( + : SOMME) DO I = 1, DIM, 1 SOMME = (MATRICE( I, I ) + SOMME) END DO 10 PROGRAM MAIN C$OMP PARALLEL DO i f ( ( ( DBLE( m p s u g n u m t h r e a d s f u n c$ ( ) ) * ( (DBLE( C$& m p s u g n u m t h r e a d s f u n c$ ( ) ) * D+02) D+03) ). LT. ( ( DBLE( ( C$& m p s u g n u m t h r e a d s f u n c$ ( ) + 1) ) * (DBLE(N) * (DBLE(N) * DBLE(N) ) ) ) C$& * 2. 0 D00 ) ) ), s h a r e d ( a l l o c a d d r ), p r i v a t e ( J, I, K), s h a r e d ( 15 C$& a l l o c a d d r 0, a l l o c a d d r 1, N, a l l o c a d d r ) DO J = 1, N, 1 DO I = 1, N, 1 a l l o c a d d r ( I, J ) = 0. 0 DO K = 1, N, 1 20 a l l o c a d d r ( I, J ) = ( a l l o c a d d r ( I, J ) +( a l l o c a d d r 0 (K, J ) * a l l o c a d d r 1 ( I, K) ) ) END DO END DO END DO

69 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI Points abordés... APO en Fortran 90 OpenMP SHMEM HPF PVM MPI

70 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI OpenMP : Open [specifications for] Multi Processing ˆ ensemble de directives de parallélisme à mémoire partagée - provide a Simple, Portable, Scalable SMP Programming, ˆ site officiel : ˆ support de formation de l IDRIS : ˆ utilise le modèle fork & join d exécution en parallèle : le master thread s exécute seul et séquentiellement jusqu à la première construction parallèle rencontrée. Il crée alors a team of threads travaillant en parallèle jusqu à la fin de zone parallèle où il y a synchronisation. Le master thread continue seul l exécution jusqu à la zone parallèle suivante... ˆ permet un prototypage rapide d application parallèle, ˆ supporte le load balancing en natif (OMP SCHEDULE), ˆ efficace pour un faible nombre de processeurs, ˆ limité aux architectures SMP.

71 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI OpenMP : petit exemple #i n c l u d e <omp. h> i n t main ( i n t argc, char * a r g v [ ] ) { 5 #pragma omp p a r a l l e l p r i n t f ( t h r e a d %d / % d\n, omp get thread num ( ), omp get num threads ( ) ) ; p r i n t f ( This i s t h e end... \ n ) ; r e t u r n EXIT SUCCESS ; } ˆ compilation Linux Intel-cc : % icc -openmp -o exempleopenmp exempleopenmp.c ˆ compilation Irix : % cc -mp -o exempleopenmp exempleopenmp.c % export OMP NUM THREADS=3 %./exempleopenmp thread 1 / 3 thread 0 / 3 thread 2 / 3 This is the end...

72 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI Points abordés... APO en Fortran 90 OpenMP SHMEM HPF PVM MPI

73 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI SHMEM - copies de mémoire à mémoire ˆ modèle propriétaire et explicite d échange de données, ˆ architectures à mémoires physiquement distribuées mais globalement adressables (DSM), ˆ transfert de mémoire à mémoire de type GET ou PUT, sans intervention du processeur distant, de données symétriques (stockées à la même adresse), ˆ alternative aux bibliothèques d échanges de messages, ˆ pour plus d info, entrez le mot clef shmem sur

74 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI Le shmem get() en pratique #include <mpi. h> /* chronometrage */ 5 #include <mpp/shmem. h> i n t main ( i n t argc, char * a r g v [ ] ) { s t a t i c unsigned char * s r c, * d s t ; i n t i, n ; double ttd, t t f ; 10 s t a r t p e s ( 0 ) ; /* a r g n u l => v a r i a b l e d e n v i r o n n e m e n t NPES prime */ n = a t o i ( a r g v [ 1 ] ) ; s r c = ( unsigned char * ) s h m a l l o c ( n * s i z e o f ( unsigned char ) ) ; d s t = ( unsigned char * ) s h m a l l o c ( n * s i z e o f ( unsigned char ) ) ; i f (0 == shmem my pe ( ) ) 15 f o r ( i = 0 ; i < n ; i ++) s r c [ i ] = ( unsigned char ) ( * ( double ) rand ( ) / ( ( double ) RAND MAX + 1) ) ; s h m e m b a r r i e r a l l ( ) ; /* s y n c h r o n i s a t i o n e m e t t e u r / r e c e p t e u r ( i n d i s p e n s a b l e ) */ i f (1 == shmem my pe ( ) ) { t t d = MPI Wtime ( ) ; /* chronometrage */ 20 shmem getmem ( dst, ( c o n s t unsigned char * ) s r c, n * s i z e o f ( unsigned char ), 0 ) ; t t f = MPI Wtime ( ) ; /* chronometrage */ p r i n t f ( Bande p a s s a n t e : %. 2 f Mo/ s (%.2 f mbps )\n, ( double ) n / (MO * ( t t f t t d ) ), 8. * n / (MO * ( t t f t t d ) ) ) ; 25 } s h f r e e ( s r c ) ; s h f r e e ( d s t ) ; r e t u r n EXIT SUCCESS ; }

75 APO en Fortran 90 OpenMP SHMEM HPF PVM MPI Compilation et exécution d un code SHMEM ˆ compilation et exécution en environnement Irix : % cc -fullwarn -o shmemget shmemget.c -pedantic -lmpi -lsma % NPES=2./shmemGet Bande passante : Mo/s ( mbps) ˆ... résultats obtenus sur un SGI Origin 3800 à 256 cpu et 128 Go de RAM.

Initiation au HPC - Généralités

Initiation au HPC - Généralités Initiation au HPC - Généralités Éric Ramat et Julien Dehos Université du Littoral Côte d Opale M2 Informatique 2 septembre 2015 Éric Ramat et Julien Dehos Initiation au HPC - Généralités 1/49 Plan du cours

Plus en détail

Introduction à la Programmation Parallèle: MPI

Introduction à la Programmation Parallèle: MPI Introduction à la Programmation Parallèle: MPI Frédéric Gava et Gaétan Hains L.A.C.L Laboratoire d Algorithmique, Complexité et Logique Cours du M2 SSI option PSSR Plan 1 Modèle de programmation 2 3 4

Plus en détail

Plan : Master IM2P2 - Calcul Scientifique

Plan : Master IM2P2 - Calcul Scientifique Plan : Les systèmes HPC Typologie des systèmes : Machines Mémoire partagée Machines à Mémoire Distribuées Machine NUMA Exemples Architectures Processeurs HPC Processeurs scalaires, superscalaires, vectoriels

Plus en détail

Calcul scientifique et serveurs de calcul

Calcul scientifique et serveurs de calcul Calcul scientifique et serveurs de calcul Serveurs de calcul : contexte, enjeux et administration Violaine Louvet, 13 septembre 2007 Calcul scientifique et serveurs de calcul Journée proposée par : Le

Plus en détail

INF6500 : Structures des ordinateurs. Sylvain Martel - INF6500 1

INF6500 : Structures des ordinateurs. Sylvain Martel - INF6500 1 INF6500 : Structures des ordinateurs Sylvain Martel - INF6500 1 Cours 4 : Multiprocesseurs Sylvain Martel - INF6500 2 Multiprocesseurs Type SISD SIMD MIMD Communication Shared memory Message-passing Groupe

Plus en détail

Génération de code binaire pour application multimedia : une approche au vol

Génération de code binaire pour application multimedia : une approche au vol Génération de binaire pour application multimedia : une approche au vol http://hpbcg.org/ Henri-Pierre Charles Université de Versailles Saint-Quentin en Yvelines 3 Octobre 2009 Présentation Présentation

Plus en détail

Parallélisme et Répartition

Parallélisme et Répartition Parallélisme et Répartition Master Info Françoise Baude Université de Nice Sophia-Antipolis UFR Sciences Département Informatique baude@unice.fr web du cours : deptinfo.unice.fr/~baude Septembre 2009 Chapitre

Plus en détail

Architecture des calculateurs

Architecture des calculateurs Formation en Calcul Scientifique - LEM2I Architecture des calculateurs Violaine Louvet 1 1 Institut Camille jordan - CNRS 12-13/09/2011 Introduction Décoder la relation entre l architecture et les applications

Plus en détail

Architecture des ordinateurs

Architecture des ordinateurs Décoder la relation entre l architecture et les applications Violaine Louvet, Institut Camille Jordan CNRS & Université Lyon 1 Ecole «Découverte du Calcul» 2013 1 / 61 Simulation numérique... Physique

Plus en détail

Équilibrage Dynamique de Charge pour des Calculs Parallèles sur Cluster Linux - Une Évaluation de l Environnement AMPI.

Équilibrage Dynamique de Charge pour des Calculs Parallèles sur Cluster Linux - Une Évaluation de l Environnement AMPI. Facultés Universitaires Notre-Dame de la Paix, Namur Institut d Informatique Année académique 2003-2004 Équilibrage Dynamique de Charge pour des Calculs Parallèles sur Cluster Linux - Une Évaluation de

Plus en détail

Systèmes et traitement parallèles

Systèmes et traitement parallèles Systèmes et traitement parallèles Mohsine Eleuldj Département Génie Informatique, EMI eleuldj@emi.ac.ma 1 Système et traitement parallèle Objectif Etude des architectures parallèles Programmation des applications

Plus en détail

Centre Commun de Calcul Intensif: www.univ-ag.fr/c3i

Centre Commun de Calcul Intensif: www.univ-ag.fr/c3i Centre Commun de Calcul Intensif: www.univ-ag.fr/c3i a HPC center in the Caribbean Mewbalaou Fédération de recherche fournissant des ressources à 6 laboratoires de l UAG: COVACHIM-M, GTSI, LAMIA, LARGE,

Plus en détail

Systèmes distribués Introduction

Systèmes distribués Introduction Systèmes distribués Introduction Nabil Abdennadher nabil.abdennadher@hesge.ch http://lsds.hesge.ch/distributed-systems/ 2015/2016 Semestre d Automne 1 Aujourd hui les réseaux et les SDI sont partout! Réseaux

Plus en détail

CALMIP : Calcul en Midi-Pyrénées

CALMIP : Calcul en Midi-Pyrénées CALMIP : Calcul en Midi-Pyrénées Nicolas Renon, CICT ( Centre Interuniversitaire de Calcul de Toulouse ) (renon@cict.fr) http://www.calmip.cict.fr ; http://www.cict.fr Page 1 Plan Exposé : CALMIP c est

Plus en détail

Eléments d architecture des machines parallèles et distribuées

Eléments d architecture des machines parallèles et distribuées M2-RISE - Systèmes distribués et grille Eléments d architecture des machines parallèles et distribuées Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle Notions d architecture

Plus en détail

Programmation parallèle et distribuée

Programmation parallèle et distribuée ppd/mpassing p. 1/43 Programmation parallèle et distribuée Communications par messages Philippe MARQUET Philippe.Marquet@lifl.fr Laboratoire d informatique fondamentale de Lille Université des sciences

Plus en détail

Centre de calcul de l ub

Centre de calcul de l ub Centre de calcul de l ub Formation Présentation et utilisation du cluster de Calcul Antoine Migeon ccub@u-bourgogne.fr Tel : 5205 ou 5270 Le Centre de Calcul de l ub (ccub) Dédié à l enseignement et à

Plus en détail

HAUTE DISPONIBILITE & CONTINUITÉ DE SERVICE MULTI PLATES FORMES. Simple & Performant. www.quick software line.com

HAUTE DISPONIBILITE & CONTINUITÉ DE SERVICE MULTI PLATES FORMES. Simple & Performant. www.quick software line.com HAUTE DISPONIBILITE & CONTINUITÉ DE SERVICE MULTI PLATES FORMES Haute disponibilité pour Serveurs Ouverts (Windows, UNIX, AIX, Linux, VMware (Windows, UNIX, AIX, Linux, VMware ) Généralités Quelques définitions

Plus en détail

Happy birthday ZSet High performance computing dans ZSet

Happy birthday ZSet High performance computing dans ZSet Happy birthday ZSet High performance computing dans ZSet F. Feyel & P. Gosselet Architectures SMP NUMA memory memory memory Distribué memory memory 2 memory memory Hybride memory memory memory memory memory

Plus en détail

Message Passing Interface (MPI-1)

Message Passing Interface (MPI-1) IPGP INSTITUT DE PHYSIQUE DU GLOBE DE PARIS Programmation parallèle : Message Passing Interface (MPI-1) Geneviève Moguilny moguilny@ipgp.jussieu.fr Institut de Physique du Globe de Paris Réunion téléphonique

Plus en détail

INFO-F-404 : Techniques avancées de systèmes d exploitation

INFO-F-404 : Techniques avancées de systèmes d exploitation Nikita Veshchikov e-mail : nikita.veshchikov@ulb.ac.be téléphone : 02/650.58.56 bureau : 2N8.213 URL : http://student.ulb.ac.be/~nveshchi/ INFO-F-404 : Techniques avancées de systèmes d exploitation Table

Plus en détail

LES SUPER-ORDINATEURS

LES SUPER-ORDINATEURS LES SUPER-ORDINATEURS Un ordinateur fait au bas mot 1 million d'opérations à la seconde, mais il a que ça à penser, aussi. - J.M. Gourio "Brèves de comptoir 1988" CRAY 1 1 Mesure des performances La mesure

Plus en détail

Gestion Mémoire. Informatique Embarquée M2 / 2014. Gestion Mémoire

Gestion Mémoire. Informatique Embarquée M2 / 2014. Gestion Mémoire Informatique Embarquée M2 / 24 24 Interaction CPU / mémoire Bus d'adresses CPU Bus de Données Bus de Contrôle 24 Architecture Von Neumann CPU contient: Instructions et Données CPU charge les instructions

Plus en détail

CATALOGUE DE FORMATIONS OPTIMISATION DE PERFORMANCE ET ARCHITECTURES PARALLÈLES

CATALOGUE DE FORMATIONS OPTIMISATION DE PERFORMANCE ET ARCHITECTURES PARALLÈLES CATALOGUE DE FORMATIONS OPTIMISATION DE PERFORMANCE ET ARCHITECTURES PARALLÈLES Trois types de formation LES FORMATEURS Les experts techniques AS+ Groupe EOLEN disposent d une réelle expérience pratique

Plus en détail

Réseaux rapides et stockage distribué dans les grappes de calculateurs :

Réseaux rapides et stockage distribué dans les grappes de calculateurs : Brice Goglin Équipe RESO - Laboratoire de l'informatique du Parallélisme Réseaux rapides et stockage distribué dans les grappes de calculateurs : propositions pour une interaction efficace Thèse réalisée

Plus en détail

Architecture des ordinateurs, concepts du parallélisme

Architecture des ordinateurs, concepts du parallélisme Ecole Doctorale MathIf Architecture des ordinateurs, concepts du parallélisme Violaine Louvet 1 Remerciements à Françoise Roch, Guy Moebs, Françoise Berthoud 1 ICJ - CNRS Année 2009-2010 Objectifs de ce

Plus en détail

Première approche. Définition. Définition de l informatique donnée par l Académie Française en 1966 :

Première approche. Définition. Définition de l informatique donnée par l Académie Française en 1966 : Première approche Définition Définition de l informatique donnée par l Académie Française en 1966 : L informatique est la science du traitement rationnel, notamment par machines automatiques, de l information

Plus en détail

Programmation C. Apprendre à développer des programmes simples dans le langage C

Programmation C. Apprendre à développer des programmes simples dans le langage C Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités

Plus en détail

Portage et optimisation d applications de traitement d images sur architecture Kalray Mppa-Manycore Journées de la Compilation

Portage et optimisation d applications de traitement d images sur architecture Kalray Mppa-Manycore Journées de la Compilation Portage et optimisation d applications traitement d images sur architecture Kalray Mppa-Manycore Journées la Compilation Pierre Guillou Centre recherche en informatique Mines ParisTech 4 décembre 2013

Plus en détail

Quantification d incertitude et Tendances en HPC

Quantification d incertitude et Tendances en HPC Quantification d incertitude et Tendances en HPC Laurence Viry E cole de Physique des Houches 7 Mai 2014 Laurence Viry Tendances en HPC 7 Mai 2014 1 / 47 Contents 1 Mode lisation, simulation et quantification

Plus en détail

03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing

03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing 3/4/27 Programmation Avancée Multimédia Multithreading Benoît Piranda Équipe SISAR Université de Marne La Vallée Besoin Programmes à traitements simultanés Réseau Réseau Afficher une animation en temps

Plus en détail

CORBA haute performance

CORBA haute performance CORBA haute performance «CORBA à 730Mb/s!» Alexandre DENIS PARIS/IRISA, Rennes Alexandre.Denis@irisa.fr Plan Motivations : concept de grille de calcul CORBA : concepts fondamentaux Vers un ORB haute performance

Plus en détail

Introduction à MATLAB R

Introduction à MATLAB R Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d

Plus en détail

Présentation CaSciModOT Performances et Architectures

Présentation CaSciModOT Performances et Architectures Présentation CaSciModOT Performances et Architectures Code parallèle : Un peu de théorie Architectures variables : C(n,p)? Quel code? Quelle architecture? Structure d un code : partie parallèle / séquentielle

Plus en détail

Solaris pour la base de donnés Oracle

<Insert Picture Here> Solaris pour la base de donnés Oracle Solaris pour la base de donnés Oracle Alain Chéreau Oracle Solution Center Agenda Compilateurs Mémoire pour la SGA Parallélisme RAC Flash Cache Compilateurs

Plus en détail

HAUTE DISPONIBILITÉ DE MACHINE VIRTUELLE AVEC HYPER-V 2012 R2 PARTIE CONFIGURATION OPENVPN SUR PFSENSE

HAUTE DISPONIBILITÉ DE MACHINE VIRTUELLE AVEC HYPER-V 2012 R2 PARTIE CONFIGURATION OPENVPN SUR PFSENSE HAUTE DISPONIBILITÉ DE MACHINE VIRTUELLE AVEC HYPER-V 2012 R2 PARTIE CONFIGURATION OPENVPN SUR PFSENSE Projet de semestre ITI soir 4ème année Résumé configuration OpenVpn sur pfsense 2.1 Etudiant :Tarek

Plus en détail

Benchmarks. Ensemble de codes permettant de tester la fonctionnalité et les performances d'une solution HPC dans son ensemble.

Benchmarks. Ensemble de codes permettant de tester la fonctionnalité et les performances d'une solution HPC dans son ensemble. Ensemble de codes permettant de tester la fonctionnalité et les performances d'une solution HPC dans son ensemble. (Merci à Ludovic Saugé) Françoise BERTHOUD, Francoise.Berthoud@grenoble.cnrs.fr Les benchmarks

Plus en détail

Introduction SIO Utilisation Conclusion Cluster au SIO

Introduction SIO Utilisation Conclusion Cluster au SIO Cluster au SIO ALBERT SHIH 1 1 Observatoire de Paris - Meudon 21 février 2008 Type de «machines» de calcul Mémoire partagée Tous les processeurs accèdent à toute la mémoire avec un même espace d adressage.

Plus en détail

DB2 10.5 BLU Acceleration Francis Arnaudiès f.arnaudies@fr.ibm.com

DB2 10.5 BLU Acceleration Francis Arnaudiès f.arnaudies@fr.ibm.com DB2 10.5 BLU Acceleration Francis Arnaudiès f.arnaudies@fr.ibm.com #solconnect13 SOLUTIONS ADAPTEES AUX BESOINS CLIENTS Mobile/Cloud Data Serving and Transaction Processing Mobile Storefront JSON Database

Plus en détail

Performances et optimisations

Performances et optimisations Performances et optimisations Outils pour le calcul scientifique à haute performance École doctorale sciences pour l ingénieur juin 2001 Philippe MARQUET phm@lifl.fr Laboratoire d informatique fondamentale

Plus en détail

Comment concevoir un ordinateur? Quelques questions à considérer

Comment concevoir un ordinateur? Quelques questions à considérer Comment concevoir un ordinateur? Quelques questions à considérer Unité d entrée Unité de traitement Unité de sortie Comment coder les données Entiers, réels, caractères Comment restituer les résultats

Plus en détail

as Architecture des Systèmes d Information

as Architecture des Systèmes d Information Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes

Plus en détail

Architecture 68332 06/06/02 LE 68332

Architecture 68332 06/06/02 LE 68332 LE 68332 LE 68332...1 ELÉMENTS SUR LE MICROCONTRÔLEUR 68332...2 SYSTEM INTEGRATION MODULE (SIM)...2 QUEUED SERIAL MODULE (QSM)...3 TIME PROCESSOR UNIT (TPU)...3 IMPLANTATION MÉMOIRE :...4 MODULE SIM :

Plus en détail

Limitations of the Playstation 3 for High Performance Cluster Computing

Limitations of the Playstation 3 for High Performance Cluster Computing Introduction Plan Limitations of the Playstation 3 for High Performance Cluster Computing July 2007 Introduction Plan Introduction Intérêts de la PS3 : rapide et puissante bon marché L utiliser pour faire

Plus en détail

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes

Plus en détail

Architectures des ordinateurs Caches et mémoire virtuelle. Daniel Etiemble de@lri.fr. Capacité mémoire SRAM. X 4 tous les trois ans.

Architectures des ordinateurs Caches et mémoire virtuelle. Daniel Etiemble de@lri.fr. Capacité mémoire SRAM. X 4 tous les trois ans. Architectures des ordinateurs Caches et mémoire virtuelle Daniel Etiemble de@lri.fr Capacité mémoire 1M (bits) DRAM.5 T 1M 1M 1K 1K Date d apparition 1K 1978 1981 1984 1987 199 1993 1996 Surface SRAM/DRAM

Plus en détail

Practice HPC. Retour d expérience Xeon PHI. Février 2012. Damien DUBUC Expert HPC software. 28/03/2013 ANEO Tous droits réservés 1

Practice HPC. Retour d expérience Xeon PHI. Février 2012. Damien DUBUC Expert HPC software. 28/03/2013 ANEO Tous droits réservés 1 Retour d expérience Xeon PHI Damien DUBUC Expert HPC software Février 2012 28/03/2013 ANEO Tous droits réservés 1 Quel est notre rôle? Présenter o Gérer un portefeuille clients nécessitant des optimisations

Plus en détail

Retour d expérience en Astrophysique : utilisation du Cloud IaaS pour le traitement de données des missions spatiales

Retour d expérience en Astrophysique : utilisation du Cloud IaaS pour le traitement de données des missions spatiales Retour d expérience en Astrophysique : utilisation du Cloud IaaS pour le traitement de données des missions spatiales Cécile Cavet cecile.cavet at apc.univ-paris7.fr Centre François Arago (FACe), Laboratoire

Plus en détail

Comment reproduire les résultats de l article : POP-Java : Parallélisme et distribution orienté objet

Comment reproduire les résultats de l article : POP-Java : Parallélisme et distribution orienté objet Comment reproduire les résultats de l article : POP-Java : Parallélisme et distribution orienté objet Beat Wolf 1, Pierre Kuonen 1, Thomas Dandekar 2 1 icosys, Haute École Spécialisée de Suisse occidentale,

Plus en détail

Windows Server 2008. Chapitre 1: Découvrir Windows Server 2008

Windows Server 2008. Chapitre 1: Découvrir Windows Server 2008 Windows Server 2008 Chapitre 1: Découvrir Windows Server 2008 Objectives Identifier les caractéristiques de chaque édition de Windows Server 2008 Identifier les caractéristiques généraux de Windows Server

Plus en détail

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0

Plus en détail

Les environnements de calcul distribué

Les environnements de calcul distribué 2 e Atelier CRAG, 3 au 8 Décembre 2012 Par Blaise Omer YENKE IUT, Université de Ngaoundéré, Cameroun. 4 décembre 2012 1 / 32 Calcul haute performance (HPC) High-performance computing (HPC) : utilisation

Plus en détail

Exécution des instructions machine

Exécution des instructions machine Exécution des instructions machine Eduardo Sanchez EPFL Exemple: le processeur MIPS add a, b, c a = b + c type d'opération (mnémonique) destination du résultat lw a, addr opérandes sources a = mem[addr]

Plus en détail

Introduction à MapReduce/Hadoop et Spark

Introduction à MapReduce/Hadoop et Spark 1 / 36 Introduction à MapReduce/Hadoop et Spark Certificat Big Data Ludovic Denoyer et Sylvain Lamprier UPMC Plan 2 / 36 Contexte 3 / 36 Contexte 4 / 36 Data driven science: le 4e paradigme (Jim Gray -

Plus en détail

Règles et paramètres d'exploitation de Caparmor 2 au 11/12/2009. Pôle de Calcul Intensif pour la mer, 11 Decembre 2009

Règles et paramètres d'exploitation de Caparmor 2 au 11/12/2009. Pôle de Calcul Intensif pour la mer, 11 Decembre 2009 Règles et paramètres d'exploitation de Caparmor 2 au 11/12/2009 Pôle de Calcul Intensif pour la mer, 11 Decembre 2009 CAPARMOR 2 La configuration actuelle Les conditions d'accès à distance règles d'exploitation

Plus en détail

en version SAN ou NAS

en version SAN ou NAS tout-en-un en version SAN ou NAS Quand avez-vous besoin de virtualisation? Les opportunités de mettre en place des solutions de virtualisation sont nombreuses, quelque soit la taille de l'entreprise. Parmi

Plus en détail

Introduction aux grilles: L'exemple XtremWeb

Introduction aux grilles: L'exemple XtremWeb Introduction aux grilles: L'exemple XtremWeb Nicolas Bouillot bouillot@cnam.fr 1 Plan Introduction Première définition Les organisations virtuelles Contraintes liées aux Middlewares de Grilles Le calcul

Plus en détail

Bases Java - Eclipse / Netbeans

Bases Java - Eclipse / Netbeans Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement

Plus en détail

Cluster High Availability. Holger Hennig, HA-Cluster Specialist

Cluster High Availability. Holger Hennig, HA-Cluster Specialist Cluster High Availability Holger Hennig, HA-Cluster Specialist TABLE DES MATIÈRES 1. RÉSUMÉ...3 2. INTRODUCTION...4 2.1 GÉNÉRALITÉS...4 2.2 LE CONCEPT DES CLUSTERS HA...4 2.3 AVANTAGES D UNE SOLUTION DE

Plus en détail

Optimisation des performances du programme mpiblast pour la parallélisation sur grille de calcul

Optimisation des performances du programme mpiblast pour la parallélisation sur grille de calcul Optimisation des performances du programme mpiblast pour la parallélisation sur grille de calcul Mohieddine MISSAOUI * Rapport de Recherche LIMOS/RR-06-10 20 novembre 2006 * Contact : missaoui@isima.fr

Plus en détail

Grid Technology. ActiveMQ pour le grand collisionneur de hadrons (LHC) Lionel Cons Grid Technology Group Information Technology Department

Grid Technology. ActiveMQ pour le grand collisionneur de hadrons (LHC) Lionel Cons Grid Technology Group Information Technology Department DB GT CF Grid ActiveMQ pour le grand collisionneur de hadrons (LHC) Lionel Cons Grid Group Information Department Journée de la communauté FUSE, Paris, 2010 CERN IT Department CH-1211 Geneva 23 Switzerland

Plus en détail

Cluster High Performance Computing. Dr. Andreas Koch, Cluster Specialist

Cluster High Performance Computing. Dr. Andreas Koch, Cluster Specialist Cluster High Performance Computing Dr. Andreas Koch, Cluster Specialist TABLE DES MATIÈRES 1 RÉSUMÉ... 3 2 INTRODUCTION... 4 3 STRUCTURE D UN CLUSTER HPC... 6 3.1 INTRODUCTION... 6 3.2 MONTAGE SIMPLE...

Plus en détail

Déploiement d une architecture Hadoop pour analyse de flux. françois-xavier.andreu@renater.fr

Déploiement d une architecture Hadoop pour analyse de flux. françois-xavier.andreu@renater.fr Déploiement d une architecture Hadoop pour analyse de flux françois-xavier.andreu@renater.fr 1 plan Introduction Hadoop Présentation Architecture d un cluster HDFS & MapReduce L architecture déployée Les

Plus en détail

Optimisation de code

Optimisation de code Optimisation de code Brique ASC Samuel Tardieu sam@rfc1149.net École Nationale Supérieure des Télécommunications Samuel Tardieu (ENST) Optimisation de code 1 / 77 But L optimisation cherche à améliorer

Plus en détail

Métriques de performance pour les algorithmes et programmes parallèles

Métriques de performance pour les algorithmes et programmes parallèles Métriques de performance pour les algorithmes et programmes parallèles 11 18 nov. 2002 Cette section est basée tout d abord sur la référence suivante (manuel suggéré mais non obligatoire) : R. Miller and

Plus en détail

Réseaux de Stockage à Haut Débit (SAN) C. Pham,, Laboratoire RESAM Univ.. Lyon 1

Réseaux de Stockage à Haut Débit (SAN) C. Pham,, Laboratoire RESAM Univ.. Lyon 1 Réseaux de Stockage à Haut Débit (SAN) C. Pham,, Laboratoire RESAM Univ.. Lyon 1 Basé sur les transparents de Arnaud DEGAVRE & Gihed MEFTAH, étudiants du DESS réseaux Lyon 1, 99-2000 Plan Le présent La

Plus en détail

Chapitre 1. Infrastructures distribuées : cluster, grilles et cloud. Grid and Cloud Computing

Chapitre 1. Infrastructures distribuées : cluster, grilles et cloud. Grid and Cloud Computing Chapitre 1. Infrastructures distribuées : cluster, grilles et cloud Grid and Cloud Computing Problématique Besoins de calcul croissants Simulations d'expériences coûteuses ou dangereuses Résolution de

Plus en détail

SCOPTEL 2.7 PHONE EXTENSION ACTIVE DIRECTORY SYNCHRONISATION

SCOPTEL 2.7 PHONE EXTENSION ACTIVE DIRECTORY SYNCHRONISATION SCOPTEL 2.7 PHONE EXTENSION ACTIVE DIRECTORY SYNCHRONISATION August 2013 PREAMBULE Following is the procedure to synchronize the Active Directory user s with ScopTel s phone extension database. We currently

Plus en détail

Calculs Haute Performance. Une Introduction aux Calculs Haute Performance

Calculs Haute Performance. Une Introduction aux Calculs Haute Performance Calculs Haute Performance Une Introduction aux Calculs Haute Performance Ivan LABAYE Tizi-Ouzou 2015 1 Plan de l'exposé Calculs Haute Performance? Pour quoi Faire? Modèles de calculateurs (HPC) Outils

Plus en détail

Optimisation de logiciels de modélisation sur centre de calcul

Optimisation de logiciels de modélisation sur centre de calcul Optimisation de logiciels de modélisation sur centre de calcul Gérald Monard Pôle de Chimie Théorique http://www.monard.info/ Introduction Les ordinateurs sont des appareils électroniques permettant d

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les

Plus en détail

Partie 7 : Gestion de la mémoire

Partie 7 : Gestion de la mémoire INF3600+INF2610 Automne 2006 Partie 7 : Gestion de la mémoire Exercice 1 : Considérez un système disposant de 16 MO de mémoire physique réservée aux processus utilisateur. La mémoire est composée de cases

Plus en détail

Détection d'intrusions en environnement haute performance

Détection d'intrusions en environnement haute performance Symposium sur la Sécurité des Technologies de l'information et des Communications '05 Détection d'intrusions en environnement haute performance Clusters HPC Fabrice Gadaud (fabrice.gadaud@cea.fr) 1 Sommaire

Plus en détail

Plan de la formation. Calcul parallèle avec MPI. Pourquoi paralléliser? Parallélisation. Présentation, environnement MPI. Communications point à point

Plan de la formation. Calcul parallèle avec MPI. Pourquoi paralléliser? Parallélisation. Présentation, environnement MPI. Communications point à point Plan de la formation Calcul parallèle avec MPI Guy Moebs Parallélisation Présentation, environnement MPI Communications point à point Laboratoire de Mathématiques Jean Leray, CNRS, Université de Nantes,

Plus en détail

vbladecenter S! tout-en-un en version SAN ou NAS

vbladecenter S! tout-en-un en version SAN ou NAS vbladecenter S! tout-en-un en version SAN ou NAS Quand avez-vous besoin de virtualisation? Les opportunités de mettre en place des solutions de virtualisation sont nombreuses, quelque soit la taille de

Plus en détail

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de Lyon/Université Claude Bernard Lyon 1/Université

Plus en détail

Informatique légale : FPGA vs. GPU

Informatique légale : FPGA vs. GPU Informatique légale : FPGA vs. GPU Sylvain Collange, Yoginder S. Dandass, Marc Daumas et David Defour 03/06/2008 Problématiques Analyse de disque dur Recherche de contenu illégal connu Y compris dans des

Plus en détail

Vers un outil d analyse de l empreinte mémoire d un code de calcul scientifique.

Vers un outil d analyse de l empreinte mémoire d un code de calcul scientifique. Vers un outil d analyse de l empreinte mémoire d un code de calcul scientifique. Ameziane NAIT ABDELAZIZ Département informatique, filière PRCD Maître de stage : Bruno LATHUILIERE Tuteur : Brice GOGLIN

Plus en détail

Evaluation des performances de programmes parallèles haut niveau à base de squelettes

Evaluation des performances de programmes parallèles haut niveau à base de squelettes Evaluation des performances de programmes parallèles haut niveau à base de squelettes Enhancing the Performance Predictability of Grid Applications with Patterns and Process Algebras A. Benoit, M. Cole,

Plus en détail

. Plan du cours. . Architecture: Fermi (2010-12), Kepler (12-?)

. Plan du cours. . Architecture: Fermi (2010-12), Kepler (12-?) Plan du cours Vision mate riel: architecture cartes graphiques NVIDIA INF 560 Calcul Paralle le et Distribue Cours 3 Vision logiciel: l abstraction logique de l architecture propose e par le langage CUDA

Plus en détail

INSTALLATION ET CONFIGURATION POUR LA PROGRAMMATION

INSTALLATION ET CONFIGURATION POUR LA PROGRAMMATION INSTALLATION ET CONFIGURATION POUR LA PROGRAMMATION PARALLELES SOUS WINDOWS I. PREPARATION DE L ENVIRONNEMENT Tous d abord il va vous falloir télécharger quelques logiciels afin de pouvoir commencer à

Plus en détail

Runtime. Gestion de la réactivité des communications réseau. François Trahay Runtime, LaBRI sous la direction d'alexandre Denis Université Bordeaux I

Runtime. Gestion de la réactivité des communications réseau. François Trahay Runtime, LaBRI sous la direction d'alexandre Denis Université Bordeaux I Runtime Gestion de la réactivité des communications réseau François Trahay Runtime, LaBRI sous la direction d'alexandre Denis Université Bordeaux I 1 Le calcul hautes performances La tendance actuelle

Plus en détail

Exécutif temps réel Pierre-Yves Duval (cppm)

Exécutif temps réel Pierre-Yves Duval (cppm) Exécutif temps réel Pierre-Yves Duval (cppm) Ecole d informatique temps réel - La Londes les Maures 7-11 Octobre 2002 Plan Exécutif Tâches Evénements et synchronisation Partage de ressources Communications

Plus en détail

Installation et compilation de gnurbs sous Windows

Installation et compilation de gnurbs sous Windows Installation et compilation de gnurbs sous Windows Installation de l environnement de développement Code::Blocks (Environnement de développement) 1. Télécharger l installateur de Code::Blocks (version

Plus en détail

Kick Off SCC 2015. EMC l offre EXTREMIO. fmarti@fr.scc.com Philippe.rolland@emc.com. Vers de nouveaux horizons

Kick Off SCC 2015. EMC l offre EXTREMIO. fmarti@fr.scc.com Philippe.rolland@emc.com. Vers de nouveaux horizons Kick Off SCC 2015 EMC l offre EXTREMIO fmarti@fr.scc.com Philippe.rolland@emc.com Vers de nouveaux horizons Context Marché Les baies de stockages traditionnelles ont permis de consolider fortement Les

Plus en détail

ViewPAC. API + Contrôle/Commande + IHM

ViewPAC. API + Contrôle/Commande + IHM INTRODUCTION ViewPAC, est la nouvelle IHM intelligente «Trois-en-un» d ICP DAS, elle rassemble dans un seul et même boîtier l affichage, le traitement et le contrôle/commande. La série ViewPAC est la solution

Plus en détail

Juan ESCOBAR, IR1 Expert en Calcul Intensif. Fonction postulée :

Juan ESCOBAR, IR1 Expert en Calcul Intensif. Fonction postulée : Oral Examen Professionnel PFI 7 Octobre 2008 Juan ESCOBAR, IR1 Expert en Calcul Intensif Fonction postulée : Chef de Projet sur le Support du Code Communautaire Méso-NH Service National Labellisé INSU

Plus en détail

Chapitre 2. Cluster de calcul (Torque / Maui) Grid and Cloud Computing

Chapitre 2. Cluster de calcul (Torque / Maui) Grid and Cloud Computing Chapitre 2. Cluster de calcul (Torque / Maui) Grid and Cloud Computing 2. Cluster de calcul (Torque/Maui) Batch/Job Scheduler Gestion automatique d'une séries de jobs Interface de définition des jobs et

Plus en détail

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation

Plus en détail

CH.3 SYSTÈMES D'EXPLOITATION

CH.3 SYSTÈMES D'EXPLOITATION CH.3 SYSTÈMES D'EXPLOITATION 3.1 Un historique 3.2 Une vue générale 3.3 Les principaux aspects Info S4 ch3 1 3.1 Un historique Quatre générations. Préhistoire 1944 1950 ENIAC (1944) militaire : 20000 tubes,

Plus en détail

Introduction à l architecture des ordinateurs. Adrien Lebre Décembre 2007

Introduction à l architecture des ordinateurs. Adrien Lebre Décembre 2007 Introduction à l architecture des ordinateurs Adrien Lebre Décembre 2007 Plan - partie 1 Vue d ensemble La carte mère Le processeur La mémoire principal Notion de bus Introduction à l architecture des

Plus en détail

Super ordinateurs et Linux:

Super ordinateurs et Linux: Super ordinateurs et Linux: des histoires du CLUMEQ à l'université Laval Sébastien Boisvert 2012-11-15 19:00 Où : Université Laval Pavillon Palasis-Prince, local 3325 (Carte) Introduction Étudiant/chercheur

Plus en détail

Introduction aux systèmes informatiques Structure d un ordinateur

Introduction aux systèmes informatiques Structure d un ordinateur Introduction aux systèmes informatiques Structure d un ordinateur Michel Salomon IUT de Belfort-Montbéliard Département d informatique Michel Salomon Intro. aux sys. info. 1 / 36 Qu est-ce qu un système

Plus en détail

Argument-fetching dataflow machine de G.R. Gao et J.B. Dennis (McGill, 1988) = machine dataflow sans flux de données

Argument-fetching dataflow machine de G.R. Gao et J.B. Dennis (McGill, 1988) = machine dataflow sans flux de données EARTH et Threaded-C: Éléments clés du manuel de références de Threaded-C Bref historique de EARTH et Threaded-C Ancêtres de l architecture EARTH: Slide 1 Machine à flux de données statique de J.B. Dennis

Plus en détail

Grid Computing. Mihaela JUGANARU-MATHIEU mathieu@emse.fr 2014-2015. École Nationale Supérieure des Mines de St Etienne

Grid Computing. Mihaela JUGANARU-MATHIEU mathieu@emse.fr 2014-2015. École Nationale Supérieure des Mines de St Etienne Mihaela JUGANARU-MATHIEU mathieu@emse.fr École Nationale Supérieure des Mines de St Etienne 2014-2015 Bibliographie (livres et revues) : Frédéric Magoulès, Jie Pan, Kiat-An, Tan Abhinit Kumar Introduction

Plus en détail

PROJET SimEnOM G2. Tests de performances de La liaison internet d'un module Rabbit RCM3700

PROJET SimEnOM G2. Tests de performances de La liaison internet d'un module Rabbit RCM3700 PROJET SimEnOM G2 Tests de performances de La liaison internet d'un module Rabbit RCM3700 Régis Schmidt LESIA Imprimé le dimanche 23 juillet 2006-1 - Table des matières Table des matières... 2 Table des

Plus en détail

Cours Visual Basic URCA

Cours Visual Basic URCA Cours Visual Basic URCA Sommaire Introduction à la programmation VBA et VB Syntaxe de base, variables Opérateurs de base, boucles Introduction à la programmation Qu est-ce que la programmation? Séquences

Plus en détail

Transformez votre entreprise en entité à la demande

Transformez votre entreprise en entité à la demande Systèmes _` xseries d IBM Transformez votre entreprise en entité à la demande xseries 306m xseries 100 xseries 206m xseries 346 xseries 460 xseries 366 Systèmes _` xseries d IBM Points forts Une gamme

Plus en détail

Mesure de performances. [Architecture des ordinateurs, Hennessy & Patterson, 1996]

Mesure de performances. [Architecture des ordinateurs, Hennessy & Patterson, 1996] Mesure de performances [Architecture des ordinateurs, Hennessy & Patterson, 1996] Croissance des performances des microprocesseurs Avant le milieu des années 80, le gain dépendait de la technologie. Après,

Plus en détail

Atelier : Virtualisation avec Xen

Atelier : Virtualisation avec Xen Virtualisation et Cloud Computing Atelier : Virtualisation avec Xen Plan Présentation de Xen Architecture de Xen Le réseau Gestion des domaines DomU dans Xen Installation de Xen Virt. & Cloud 12/13 2 Xen

Plus en détail