Les communications collectives. Caractéristiques. Communications dans un groupe de processus. Dans un communicateur donné.

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

Download "Les communications collectives. Caractéristiques. Communications dans un groupe de processus. Dans un communicateur donné."

Transcription

1 Les communications collectives Communications dans un groupe de processus. Dans un communicateur donné. Trois sortes : Synchronisation globale MI_Barrier() Transferts de données : diffusion/collecte globale/sélective (Broadcast, scatter, gather) Opérations de réduction : somme globale, maximum global, etc. suivies éventuellement d une diffusion du résultat à tous les participants ermettent à l utilisateur de faire une série de communications point à point en utilisant une seule fonction Hugues Leroy Cours de DE CH 3.5 / Hugues Leroy Cours de DE CH 3.5 / Caractéristiques C est une action collective dans un communicateur Tous les processus de ce communicateur doivent participer Une synchronisation peut avoir lieu (ce n est pas toujours le cas) Toutes ces opérations sont bloquantes On ne spécifie pas d étiquette (cette gestion est à la charge du système, il n y aura pas d interférences avec les autres communications) Les tampons de réception doivent avoir exactement la même taille Les types de données doivent évidemment être les mêmes ttention : tous les processus du communicateur doivent participer. Le nom des primitives est assez ambigü car pour MI_Bcast par exemple (broadcast) un processus fera la diffusion et les autres écouterons (recv). Mais pour tous la primitive se nomme Bcast! Hugues Leroy Cours de DE CH 3.5 / 3 Hugues Leroy Cours de DE CH 3.5 / 4

2 Barrière de synchronisation C: int MI_Barrier (MI_Comm comm) Fortran: MI_BRRIER (COMM, IERROR) INTEGER COMM, IERROR Hugues Leroy Cours de DE CH 3.5 / 5 Hugues Leroy Cours de DE CH 3.5 / 6 Diffusion générale C: int MI_Bcast ( Fortran: void *buffer, int count, MI_Datatype datatype, int root, MI_Comm comm) MI_BCST (BUFFER, COUNT, DTTYE, ROOT, COMM, IERROR) <type> BUFFER(*) INTEGER COUNT, DTTYE, ROOT, COMM, IERROR Il n y a pas de multicast : un broadcast effectué par le processus root ne peut pas être reçu par un MI_Recv() par les autres processus du communicateur (tous les processus DOIVENT faire Bcast) Hugues Leroy Cours de DE CH 3.5 / 7 Hugues Leroy Cours de DE CH 3.5 / 8

3 ar abus de notation on a rajouté une flèche de vers sur le dessin, juste pour rappeler que participe bien au Bcast 3 MI_Bcast(&valeur,,MI_INT,,MI_COMM_WORLD) MI_Bcast 3 3 Hugues Leroy Cours de DE CH 3.5 / 9 Hugues Leroy Cours de DE CH 3.5 / Diffusion sélective : MI_Scatter BCDE On distribue dans l ordre croissant des numéros de processus. Les processus reçoivent tous le même nombre d éléments : sendcnt divisé par le nb de processus du communicateur. BCDE Le paramètre recvcnt est en fait le sizeof(recvbuf) B C D E MI_Scatter ( void *sendbuf, int sendcnt, MI_Datatype sendtype, void *recvbuf, int recvcnt, MI_Datatype recvtype, int root, MI_Comm comm ) (on traite dans l ordre croissant des numéros de processus) Hugues Leroy Cours de DE CH 3.5 / Hugues Leroy Cours de DE CH 3.5 /

4 Collecte : MI_Gather La remarque sur sendcnt est à retenir... B C D E Le Gather est l opération symétrique du Scatter. On ne peut pas avec Gather recevoir des contributions de tailles diverses. BCDE B C D E MI_Gather ( void *sendbuf, int sendcnt, MI_Datatype sendtype, void *recvbuf, int recvcnt, MI_Datatype recvtype, int root, MI_Comm comm ) ttention : recvcnt doit être égal à sendcnt, et non pas égal à la somme S de tous les sendcnt. Le tampon de reception recvbuf devra bien entendu avoir une taille d au moins S. Hugues Leroy Cours de DE CH 3.5 / 3 Hugues Leroy Cours de DE CH 3.5 / 4 Opérations de réduction Opérations sur des valeurs distribuées dans un groupe de processus Exemples : C somme ou produit global maximum ou minimum global opération globale définie par l utilisateur int MI_Reduce ( void *sendbuf,void *recvbuf, int count, MI_Datatype datatype, MI_Op op, int root, MI_Comm comm ) Hugues Leroy Cours de DE CH 3.5 / 5 Hugues Leroy Cours de DE CH 3.5 / 6

5 Réductions prédéfinies MI_Op MI_MX MI_MIN MI_SUM MI_ROD MI_LND MI_BND MI_LOR MI_BOR MI_LXOR MI_BXOR MI_MXLOC MI_MINLOC Fonction Maximum Minimum Somme roduit ET Logique ET Bit à bit OU Logique OU Bit à bit OU Exclusif Logique OU Exclusif Bit à bit Maximum et indice du maximum Minimum et indice du minimum Hugues Leroy Cours de DE CH 3.5 / 7 Hugues Leroy Cours de DE CH 3.5 / 8 MI_Reduce RNK B C D B C D o est l opérateur de réduction. On traite dans l ordre croissant des numéros de processus. ROOT MI_REDUCE 3 4 oeoiomoq Hugues Leroy Cours de DE CH 3.5 / 9 Hugues Leroy Cours de DE CH 3.5 /

6 C: Exemple de réduction : Une somme globale d entiers MI_Reduce(&x, &result,, MI_INT, MI_SUM,, MI_COMM_WORLD) ; Fortran: CLL MI_REDUCE( x, result,, MI_INTEGER, MI_SUM,, MI_COMM_WORLD, IERROR) Somme les x de chaque processus et range dans result Le résultat est ici disponible uniquement pour le processus (root) INTEGER MXHT, GLOBMX, IERROR, MYID utre exemple C On a une simulation de croissance d arbres dans une forêt. On a parallélisé C en attribuant à chaque processus une partie de la forêt. C u bout d un certain temps on veut savoir quel est l arbre le plus grand... C Le processus sera celui qui connaitra la taille max de tous les arbres de la forêt C C Chaque processus trouve l arbre le plus haut de son coin de forêt...ici un calcul... C CLL MI_REDUCE ( MXHT, GLOBMX,, MI_INTEGER, MI_MX, *,MI_COMM_WORLD, IERROR) C IF (MYID.EQ.) THEN... ENDIF Hugues Leroy Cours de DE CH 3.5 / Hugues Leroy Cours de DE CH 3.5 / Opération de réduction définie par l utilisateur Dans la suite on note par o l opérateur de réduction C - la fonction est du type MI_User_function : Remarque : on n utilisera pas lors de cette formation cette possibilité de définir nos propres opérateurs de réduction. void my_operator ( void *invec, void *inoutvec, int *len, MI_Datatype *datatype) Fortran FUNCTION MY_OERTOR ( INVEC(*), INOUTVEC(*), LEN, DTTYE ) <type> INVEC(LEN), INOUTVEC(LEN) INTEGER LEN, DTTYE Hugues Leroy Cours de DE CH 3.5 / 3 Hugues Leroy Cours de DE CH 3.5 / 4

7 Définition de l opérateur de réduction la fonction associée à cet opérateur o s applique aux éléments des vecteurs d entrée et sortie comme suit : for (i = ; i < len ; i++ ) inoutvec(i) = inoutvec(i) o invec(i) l opérator o n est pas forcément commutatif il y a associativité, mais cette propriété n est pas forcément vérifiée avec les nombres réels (troncatures...). rofitons de cette occasion pour rappeler qu un bon algorithme doit toujours se préoccuper de la précision des calculs et de la validité des résultats... Hugues Leroy Cours de DE CH 3.5 / 5 Hugues Leroy Cours de DE CH 3.5 / 6 Enregistrer un opérateur de réduction Son type doit être MI_Op ( C ) ou INTEGER ( Fortran ) C : int MI_Op_create ( MI_User_function *function, int commute, MI_Op *op ) Fortran : MI_O_CRETE ( FUNC, COMMUTE, O, IERROR ) EXTERNL FUNC LOGICL COMMUTE INTEGER O, IERROR Hugues Leroy Cours de DE CH 3.5 / 7 Hugues Leroy Cours de DE CH 3.5 / 8

8 Variantes de MI_Reduce MI_LLREDUCE : pas de processus root ( tous ont le résultat final ) int MI_llreduce ( void *sendbuf, void *recvbuf, int count, MI_Datatype datatype, MI_Op op, MI_Comm comm ) MI_REDUCE_SCTTER : les processus choissisent de recevoir une certaine partie du résultat. Ces parties sont distribuées dans l ordre des numéros (rangs) de processus. int MI_Reduce_scatter ( void *sendbuf, void *recvbuf, int *recvcnts, MI_Datatype datatype, MI_Op op, MI_Comm comm ) MI_SCN : les processus reçoivent un résultat partiel int MI_Scan ( void *sendbuf, void *recvbuf, int count, MI_Datatype datatype, MI_Op op, MI_Comm comm ) Hugues Leroy Cours de DE CH 3.5 / 9 Hugues Leroy Cours de DE CH 3.5 / 3 MI_llreduce RNK B C D B C D MI_LLREDUCE 3 4 oeoiomoq Hugues Leroy Cours de DE CH 3.5 / 3 Hugues Leroy Cours de DE CH 3.5 / 3

9 MI_Reduce_scatter RNK recvcounts B C D B C D On traite toujours dans l ordre croissant des numéros de processus. MI_REDUCE_SCTTER 3 4 oeoiomoq Hugues Leroy Cours de DE CH 3.5 / 33 Hugues Leroy Cours de DE CH 3.5 / 34 MI_Scan RNK B C D B C D oe MI_SCN oeoi 3 oeoiom 4 oeoiomoq Hugues Leroy Cours de DE CH 3.5 / 35 Hugues Leroy Cours de DE CH 3.5 / 36

10 Exercice 5 (Scatter/Gather) Un produit de matrices carrées (à faire en C ou Fortran) C= x B les matrices à multiplier ( et B) sont sur le processus. Celui-ci distribue une tranche horizontale de la matrice et une tranche verticale de B à chacun des processus. Chacun calcule alors un bloc diagonal de C. our le calcul des blocs non diagonaux chaque processus doit envoyer aux autres la tranche de qu il possède. près quoi le processus peut collecter les résultats et les imprimer. Faire l étude de mise à l échelle (scalability) correspondante. Essayez aussi pour le produit matrice vecteur. Que peut-on en déduire? Insister sur le calcul de mise à l échelle. Bien noter les volumes de calcul et les volumes échangés, puis évaluer le ratio Tcomm / Tcalc. Si on a n processus on utilisera une matrice carrée d ordre multiple de n. N oubliez pas de vérifier que vous avez bien le bon résultat! B C Hugues Leroy Cours de DE CH 3.5 / 37 Hugues Leroy Cours de DE CH 3.5 / 38 Exercice 6 En tirant à pile ou face sur chacun des processus, boucler jusqu à ce que tous les processus fassent le même choix ou bien jusqu à ce qu on atteigne un nombre - fixé à priori - d essais. (utiliser MI_llreduce) Exercice 7 Transformer le programme de l anneau : pour calculer la somme, utiliser une opération de réduction globale. Ensuite transformer le programme pour que chaque processus calcule une somme partielle. Enfin chaque processus doit imprimer sa somme partielle, mais dans le bon ordre : processus, puis processus, etc. Hugues Leroy Cours de DE CH 3.5 / 39 Hugues Leroy Cours de DE CH 3.5 / 4

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

MPI-1 2ème partie : Programmation «non bloquante» et communications de groupe

MPI-1 2ème partie : Programmation «non bloquante» et communications de groupe 3A-SI Programmation parallèle MPI-1 2ème partie : Programmation «non bloquante» et communications de groupe Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle MPI-1 2ème partie

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

Problèmes liés à la concurrence

Problèmes liés à la concurrence ENS Cachan Problématique Difficile de gérer la concurrence : Pas toujours facile d avoir des fonctions réentrantes. Risque de race condition : ex : x :=x+1 x :=x+1 On voudrait des blocs d instructions

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

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3. 1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this

Plus en détail

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. 1 Définitions, notations Calcul matriciel Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. On utilise aussi la notation m n pour le

Plus en détail

M2-Images. Rendu Temps Réel - OpenGL 4 et compute shaders. J.C. Iehl. December 18, 2013

M2-Images. Rendu Temps Réel - OpenGL 4 et compute shaders. J.C. Iehl. December 18, 2013 Rendu Temps Réel - OpenGL 4 et compute shaders December 18, 2013 résumé des épisodes précédents... création des objets opengl, organisation des données, configuration du pipeline, draw,... opengl 4.3 :

Plus en détail

Algorithmique I. Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr. Algorithmique I 20-09-06 p.1/??

Algorithmique I. Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr. Algorithmique I 20-09-06 p.1/?? Algorithmique I Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr Télécom 2006/07 Algorithmique I 20-09-06 p.1/?? Organisation en Algorithmique 2 séances par semaine pendant 8 semaines. Enseignement

Plus en détail

Exclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011

Exclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011 Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr Université de Provence 9 février 2011 Arnaud Labourel (Université de Provence) Exclusion Mutuelle 9 février 2011 1 / 53 Contexte Epistémologique

Plus en détail

PVM 1 PVM. Parallel Virtual Machine

PVM 1 PVM. Parallel Virtual Machine PVM 1 PVM Parallel Virtual Machine Jalel Chergui Messagerie : Jalel.Chergui@idris.fr Jean-Michel Dupays Messagerie : dupays@idris.fr PVM Plan 2 1 Introduction................. 5 1.1 Concepts de l échange

Plus en détail

Introduction to Parallel Programming with MPI

Introduction to Parallel Programming with MPI Introduction to Parallel Programming with MPI Master Modélisation et Simulation - ENSTA cours A1-2 Pierre Kestener pierre.kestener@cea.fr CEA-Saclay, DSM, France Maison de la Simulation MDLS, September,

Plus en détail

Une bibliothèque de templates pour CUDA

Une bibliothèque de templates pour CUDA Une bibliothèque de templates pour CUDA Sylvain Collange, Marc Daumas et David Defour Montpellier, 16 octobre 2008 Types de parallèlisme de données Données indépendantes n threads pour n jeux de données

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

Bases de programmation. Cours 5. Structurer les données

Bases de programmation. Cours 5. Structurer les données Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et

Plus en détail

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé A. P. M. E. P. Exercice 1 5 points 1. Réponse d. : 1 e Le coefficient directeur de la tangente est négatif et n est manifestement pas 2e

Plus en détail

Corrigé des TD 1 à 5

Corrigé des TD 1 à 5 Corrigé des TD 1 à 5 1 Premier Contact 1.1 Somme des n premiers entiers 1 (* Somme des n premiers entiers *) 2 program somme_entiers; n, i, somme: integer; 8 (* saisie du nombre n *) write( Saisissez un

Plus en détail

Chaînes de Markov au lycée

Chaînes de Markov au lycée Journées APMEP Metz Atelier P1-32 du dimanche 28 octobre 2012 Louis-Marie BONNEVAL Chaînes de Markov au lycée Andreï Markov (1856-1922) , série S Problème 1 Bonus et malus en assurance automobile Un contrat

Plus en détail

Java Licence Professionnelle CISII, 2009-10

Java Licence Professionnelle CISII, 2009-10 Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation

Plus en détail

Probabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12

Probabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12 Probabilités. I - Rappel : trois exemples. Exemple 1 : Dans une classe de 25 élèves, il y a 16 filles. Tous les élèves sont blonds ou bruns. Parmi les filles, 6 sont blondes. Parmi les garçons, 3 sont

Plus en détail

Examen Médian - 1 heure 30

Examen Médian - 1 heure 30 NF01 - Automne 2014 Examen Médian - 1 heure 30 Polycopié papier autorisé, autres documents interdits Calculatrices, téléphones, traducteurs et ordinateurs interdits! Utilisez trois copies séparées, une

Plus en détail

LES TYPES DE DONNÉES DU LANGAGE PASCAL

LES TYPES DE DONNÉES DU LANGAGE PASCAL LES TYPES DE DONNÉES DU LANGAGE PASCAL 75 LES TYPES DE DONNÉES DU LANGAGE PASCAL CHAPITRE 4 OBJECTIFS PRÉSENTER LES NOTIONS D ÉTIQUETTE, DE CONS- TANTE ET DE IABLE DANS LE CONTEXTE DU LAN- GAGE PASCAL.

Plus en détail

Architecture des ordinateurs

Architecture des ordinateurs Architecture des ordinateurs Cours 4 5 novembre 2012 Archi 1/22 Micro-architecture Archi 2/22 Intro Comment assembler les différents circuits vus dans les cours précédents pour fabriquer un processeur?

Plus en détail

Algorithmique répartie

Algorithmique répartie Université Joseph Fourier 23/04/2014 Outline 1 2 Types de communication message envoyé à un groupe de processus Broadcast (diffusion) message envoyé à tous les processus du systèmes Unicast message envoyé

Plus en détail

Conception des systèmes répartis

Conception des systèmes répartis Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan

Plus en détail

Licence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter

Plus en détail

TBI et mathématique. Pour vous soutenir dans votre enseignement des mathématiques. Les outils du logiciel Notebook. les ressources internet

TBI et mathématique. Pour vous soutenir dans votre enseignement des mathématiques. Les outils du logiciel Notebook. les ressources internet TBI et mathématique Pour vous soutenir dans votre enseignement des mathématiques Dessin tiré du site www.recitus.qc.ca Les outils du logiciel Notebook et les ressources internet Document préparé par France

Plus en détail

Application 1- VBA : Test de comportements d'investissements

Application 1- VBA : Test de comportements d'investissements Application 1- VBA : Test de comportements d'investissements Notions mobilisées Chapitres 1 à 5 du cours - Exemple de récupération de cours en ligne 1ère approche des objets (feuilles et classeurs). Corps

Plus en détail

V- Manipulations de nombres en binaire

V- Manipulations de nombres en binaire 1 V- Manipulations de nombres en binaire L ordinateur est constitué de milliards de transistors qui travaillent comme des interrupteurs électriques, soit ouverts soit fermés. Soit la ligne est activée,

Plus en détail

1. Structure d'un programme FORTRAN 95

1. Structure d'un programme FORTRAN 95 FORTRAN se caractérise par la nécessité de compiler les scripts, c'est à dire transformer du texte en binaire.(transforme un fichier de texte en.f95 en un executable (non lisible par un éditeur) en.exe.)

Plus en détail

Les arbres binaires de recherche

Les arbres binaires de recherche Institut Galilée Année 2010-2011 Algorithmique et arbres L2 TD 6 Les arbres binaires de recherche Type en C des arbres binaires (également utilisé pour les ABR) : typedef struct noeud_s { struct noeud_s

Plus en détail

Introduction à la programmation concurrente

Introduction à la programmation concurrente Introduction à la programmation concurrente Moniteurs Yann Thoma Reconfigurable and Embedded Digital Systems Institute Haute Ecole d Ingénierie et de Gestion du Canton de Vaud This work is licensed under

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

Programmation Orientée Objet Java

Programmation Orientée Objet Java Programmation Orientée Objet Java Bertrand Estellon Département Informatique et Interactions Aix-Marseille Université 12 novembre 2014 Bertrand Estellon (DII AMU) Programmation Orientée Objet Java 12 novembre

Plus en détail

Gestion de gros fichiers binaires (images) en APL*PLUS III

Gestion de gros fichiers binaires (images) en APL*PLUS III Gestion de gros fichiers binaires (images) en APL*PLUS III par Gérard A. Langlet Lun des nombreux problèmes que nous avons rencontrés en APL concerne l impression d images, constituées en fait de grosses

Plus en détail

Conventions d écriture et outils de mise au point

Conventions d écriture et outils de mise au point Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette

Plus en détail

La classification automatique de données quantitatives

La classification automatique de données quantitatives La classification automatique de données quantitatives 1 Introduction Parmi les méthodes de statistique exploratoire multidimensionnelle, dont l objectif est d extraire d une masse de données des informations

Plus en détail

Statistique : Résumé de cours et méthodes

Statistique : Résumé de cours et méthodes Statistique : Résumé de cours et méthodes 1 Vocabulaire : Population : c est l ensemble étudié. Individu : c est un élément de la population. Effectif total : c est le nombre total d individus. Caractère

Plus en détail

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores INTRODUCTION AUX SYSTEMES D EXPLOITATION TD2 Exclusion mutuelle / Sémaphores Exclusion mutuelle / Sémaphores - 0.1 - S O M M A I R E 1. GENERALITES SUR LES SEMAPHORES... 1 1.1. PRESENTATION... 1 1.2. UN

Plus en détail

de calibration Master 2: Calibration de modèles: présentation et simulation d

de calibration Master 2: Calibration de modèles: présentation et simulation d Master 2: Calibration de modèles: présentation et simulation de quelques problèmes de calibration Plan de la présentation 1. Présentation de quelques modèles à calibrer 1a. Reconstruction d une courbe

Plus en détail

Algorithme. Table des matières

Algorithme. Table des matières 1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............

Plus en détail

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée.

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée. ANALYSE 5 points Exercice 1 : Léonie souhaite acheter un lecteur MP3. Le prix affiché (49 ) dépasse largement la somme dont elle dispose. Elle décide donc d économiser régulièrement. Elle a relevé qu elle

Plus en détail

Création du projet : 1 sur 13

Création du projet : 1 sur 13 Prise en main rapide de Vijéo Designer 5.0 Configuration de la communication API et pupitre sur Ethernet page1 API et pupitre sur Série page3 XBTGT1130 avec liaison ETHERNET API et PC Création du projet

Plus en détail

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

Plus en détail

Cours de numérisation sur Epson Perfection

Cours de numérisation sur Epson Perfection Cours de numérisation sur Epson Perfection 1- Vérifiez la propreté de la vitre, placez l original sur celle-ci. À savoir, on peut numériser des transparents avec ce scanner ; il a un capteur CCD dans le

Plus en détail

Centre CPGE TSI - Safi 2010/2011. Algorithmique et programmation :

Centre CPGE TSI - Safi 2010/2011. Algorithmique et programmation : Algorithmique et programmation : STRUCTURES DE DONNÉES A. Structure et enregistrement 1) Définition et rôle des structures de données en programmation 1.1) Définition : En informatique, une structure de

Plus en détail

TP : Gestion d une image au format PGM

TP : Gestion d une image au format PGM TP : Gestion d une image au format PGM Objectif : L objectif du sujet est de créer une classe de manipulation d images au format PGM (Portable GreyMap), et de programmer des opérations relativement simples

Plus en détail

LES DÉTERMINANTS DE MATRICES

LES DÉTERMINANTS DE MATRICES LES DÉTERMINANTS DE MATRICES Sommaire Utilité... 1 1 Rappel Définition et composantes d'une matrice... 1 2 Le déterminant d'une matrice... 2 3 Calcul du déterminant pour une matrice... 2 4 Exercice...

Plus en détail

Résolution de systèmes linéaires par des méthodes directes

Résolution de systèmes linéaires par des méthodes directes Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.

Plus en détail

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE ARDUINO DOSSIER RESSOURCE POUR LA CLASSE Sommaire 1. Présentation 2. Exemple d apprentissage 3. Lexique de termes anglais 4. Reconnaître les composants 5. Rendre Arduino autonome 6. Les signaux d entrée

Plus en détail

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr . Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

Simulation de variables aléatoires

Simulation de variables aléatoires Chapter 1 Simulation de variables aléatoires Références: [F] Fishman, A first course in Monte Carlo, chap 3. [B] Bouleau, Probabilités de l ingénieur, chap 4. [R] Rubinstein, Simulation and Monte Carlo

Plus en détail

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes PLAN CYCLE DE VIE D'UN LOGICIEL EXPRESSION DES BESOINS SPÉCIFICATIONS DU LOGICIEL CONCEPTION DU LOGICIEL LA PROGRAMMATION TESTS ET MISE AU POINT DOCUMENTATION CONCLUSION C.Crochepeyre Génie Logiciel Diapason

Plus en détail

Transmission d informations sur le réseau électrique

Transmission d informations sur le réseau électrique Transmission d informations sur le réseau électrique Introduction Remarques Toutes les questions en italique devront être préparées par écrit avant la séance du TP. Les préparations seront ramassées en

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

Cours Programmation Système

Cours Programmation Système Cours Programmation Système Filière SMI Semestre S6 El Mostafa DAOUDI Département de Mathématiques et d Informatique, Faculté des Sciences Université Mohammed Premier Oujda m.daoudi@fso.ump.ma Février

Plus en détail

Chapitre VI- La validation de la composition.

Chapitre VI- La validation de la composition. Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions

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

Logistique. My Post Business Mode d emploi

Logistique. My Post Business Mode d emploi Logistique My Post Business Mode d emploi Août 2012 Bienvenue chez My Post Business En quoi consiste My Post Business? En vous connectant à la plate-forme www.poste.ch/mypostbusiness dédiée aux clients

Plus en détail

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr 6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr Interface d un SGF Implémentation d un SGF Gestion de la correspondance entre la structure logique et la structure

Plus en détail

Recherche dans un tableau

Recherche dans un tableau Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6

Plus en détail

Introduction aux Machines Virtuelles avec VMKit

Introduction aux Machines Virtuelles avec VMKit Introduction aux Machines Virtuelles avec Ingénieur :, Responsables : Gaël Thomas, Gilles Müller EQUIPE REGAL LIP6 INRIA (Paris/France) un substrat de machine virtuelle : a substrate for Managed Runtime

Plus en détail

Baccalauréat ES/L Métropole La Réunion 13 septembre 2013 Corrigé

Baccalauréat ES/L Métropole La Réunion 13 septembre 2013 Corrigé Baccalauréat S/L Métropole La Réunion 13 septembre 2013 Corrigé A. P. M.. P. XRCIC 1 Commun à tous les candidats Partie A 1. L arbre de probabilité correspondant aux données du problème est : 0,3 0,6 H

Plus en détail

Cours Informatique Master STEP

Cours Informatique Master STEP Cours Informatique Master STEP Bases de la programmation: Compilateurs/logiciels Algorithmique et structure d'un programme Programmation en langage structuré (Fortran 90) Variables, expressions, instructions

Plus en détail

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, tableaux, opérateurs Entrées sorties de base Structures de

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

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

IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB

IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB Ce document, écrit par des animateurs de l IREM de Besançon, a pour objectif de présenter quelques unes des fonctions du logiciel Scilab, celles qui sont spécifiques

Plus en détail

Définitions. Numéro à préciser. (Durée : )

Définitions. Numéro à préciser. (Durée : ) Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.

Plus en détail

Cours de Systèmes d Exploitation

Cours de Systèmes d Exploitation Licence d informatique Synchronisation et Communication inter-processus Hafid Bourzoufi Université de Valenciennes - ISTV Introduction Les processus concurrents s exécutant dans le système d exploitation

Plus en détail

Compléments de documentation Scilab : affichage de texte et formatage de nombres

Compléments de documentation Scilab : affichage de texte et formatage de nombres Université des Sciences et Technologies de Lille U.F.R. de Mathématiques Pures et Appliquées Agrégation externe Année 2002-2003 Compléments de documentation Scilab : affichage de texte et formatage de

Plus en détail

TP base de données SQLite. 1 Différents choix possibles et choix de SQLite : 2 Définir une base de donnée avec SQLite Manager

TP base de données SQLite. 1 Différents choix possibles et choix de SQLite : 2 Définir une base de donnée avec SQLite Manager TP base de données SQLite 1 Différents choix possibles et choix de SQLite : La plupart des logiciels de gestion de base de données fonctionnent à l aide d un serveur. Ils demandent donc une installation

Plus en détail

Le Data Mining au service du Scoring ou notation statistique des emprunteurs!

Le Data Mining au service du Scoring ou notation statistique des emprunteurs! France Le Data Mining au service du Scoring ou notation statistique des emprunteurs! Comme le rappelle la CNIL dans sa délibération n 88-083 du 5 Juillet 1988 portant adoption d une recommandation relative

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

Package Java.util Classe générique

Package Java.util Classe générique Package Java.util Classe générique 1 Classe Vector La taille est dynamique: dès qu un tableau vectoriel est plein, sa taille est doublée, triplée, etc. automatiquement Les cases sont de type Object add(object

Plus en détail

Manière de manipuler le générateur de numéros de transaction TAN

Manière de manipuler le générateur de numéros de transaction TAN Manière de manipuler le générateur de numéros de transaction TAN Relevé synoptique de tout ce que vous voulez savoir sur le maniement et les possibilités qu offre le générateur de numéros de transaction

Plus en détail

Initiation à LabView : Les exemples d applications :

Initiation à LabView : Les exemples d applications : Initiation à LabView : Les exemples d applications : c) Type de variables : Créer un programme : Exemple 1 : Calcul de c= 2(a+b)(a-3b) ou a, b et c seront des réels. «Exemple1» nom du programme : «Exemple

Plus en détail

Chap III : Les tableaux

Chap III : Les tableaux Chap III : Les tableaux Dans cette partie, on va étudier quelques structures de données de base tels que : Les tableaux (vecteur et matrice) Les chaînes de caractères LA STRUCTURE DE TABLEAU Introduction

Plus en détail

I Stabilité, Commandabilité et Observabilité 11. 1 Introduction 13 1.1 Un exemple emprunté à la robotique... 13 1.2 Le plan... 18 1.3 Problème...

I Stabilité, Commandabilité et Observabilité 11. 1 Introduction 13 1.1 Un exemple emprunté à la robotique... 13 1.2 Le plan... 18 1.3 Problème... TABLE DES MATIÈRES 5 Table des matières I Stabilité, Commandabilité et Observabilité 11 1 Introduction 13 1.1 Un exemple emprunté à la robotique................... 13 1.2 Le plan...................................

Plus en détail

201-105-RE SOLUTIONS CHAPITRE 1

201-105-RE SOLUTIONS CHAPITRE 1 Chapitre1 Matrices 1 201-105-RE SOLUTIONS CHAPITRE 1 EXERCICES 1.2 1. a) 1 3 Ë3 7 3 2 Ë 1 16 pas défini d) 16 30 17 3 e) Ë 7 68 22 16 13 Ë 5 18 6 2. a) 0 4 4 4 0 4 Ë4 4 0 Ë 0 4 32 4 4 0 4 32 32 4 0 4 4

Plus en détail

CH.6 Propriétés des langages non contextuels

CH.6 Propriétés des langages non contextuels CH.6 Propriétés des langages non contetuels 6.1 Le lemme de pompage 6.2 Les propriétés de fermeture 6.3 Les problèmes de décidabilité 6.4 Les langages non contetuels déterministes utomates ch6 1 6.1 Le

Plus en détail

Q6 : Comment calcule t-on l intensité sonore à partir du niveau d intensité?

Q6 : Comment calcule t-on l intensité sonore à partir du niveau d intensité? EXERCICE 1 : QUESTION DE COURS Q1 : Qu est ce qu une onde progressive? Q2 : Qu est ce qu une onde mécanique? Q3 : Qu elle est la condition pour qu une onde soit diffractée? Q4 : Quelles sont les différentes

Plus en détail

Modélisation et simulation des performances de nœuds de routage optique dans les réseaux dorsaux hybrides

Modélisation et simulation des performances de nœuds de routage optique dans les réseaux dorsaux hybrides Modélisation et simulation des performances de nœuds de routage optique dans les réseaux dorsaux hybrides )UpGpULF/(&2&+(%UXQR)5$&$662$PD.$/, (167%UHWDJQH 'psduwhphqwg RSWLTXH Sommaire Contexte Nœuds de

Plus en détail

Texte Agrégation limitée par diffusion interne

Texte Agrégation limitée par diffusion interne Page n 1. Texte Agrégation limitée par diffusion interne 1 Le phénomène observé Un fût de déchets radioactifs est enterré secrètement dans le Cantal. Au bout de quelques années, il devient poreux et laisse

Plus en détail

Rappels sur les suites - Algorithme

Rappels sur les suites - Algorithme DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................

Plus en détail

Processus! programme. DIMA, Systèmes Centralisés (Ph. Mauran) " Processus = suite d'actions = suite d'états obtenus = trace

Processus! programme. DIMA, Systèmes Centralisés (Ph. Mauran)  Processus = suite d'actions = suite d'états obtenus = trace Processus 1) Contexte 2) Modèles de Notion de Points de vue Modèle fourni par le SX Opérations sur les 3) Gestion des Représentation des Opérations 4) Ordonnancement des Niveaux d ordonnancement Ordonnancement

Plus en détail

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,

Plus en détail

Initiation à la programmation OEF pour Wims (exercices).

Initiation à la programmation OEF pour Wims (exercices). page 1 sur 9 Initiation à la programmation OEF pour Wims (exercices). Les titres des différentes parties de ce document, en grisé, sont donnés en référence au document Wims «DocAide Exercices OEF» rédigé

Plus en détail

Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004

Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004 Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)

Plus en détail

Services bancaires par Internet aux entreprises. Guide pratique pour : Rapports de solde Version 8.05.22

Services bancaires par Internet aux entreprises. Guide pratique pour : Rapports de solde Version 8.05.22 Services bancaires par Internet aux entreprises Guide pratique pour : Rapports de solde Version 8.05.22 Table des matières Avez-vous besoin d aide?... 3 Exigences informatiques... 4 Navigateurs acceptés...

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

UE C avancé cours 1: introduction et révisions

UE C avancé cours 1: introduction et révisions Introduction Types Structures de contrôle Exemple UE C avancé cours 1: introduction et révisions Jean-Lou Desbarbieux et Stéphane Doncieux UMPC 2004/2005 Introduction Types Structures de contrôle Exemple

Plus en détail

Maîtriser les fonctionnalités d un traitement de texte (Word OpenOffice)

Maîtriser les fonctionnalités d un traitement de texte (Word OpenOffice) Utilisation de l'ordinateur et apport des TIC en enseignement (1NP) Module 03 Maîtriser les fonctionnalités d un traitement de texte. Sens du Module De nombreux documents remis aux enfants sont réalisés

Plus en détail

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

L informatique en BCPST

L informatique en BCPST L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité

Plus en détail

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin. Exo7 Matrice d une application linéaire Corrections d Arnaud odin. Exercice Soit R muni de la base canonique = ( i, j). Soit f : R R la projection sur l axe des abscisses R i parallèlement à R( i + j).

Plus en détail

Développement Logiciel

Développement Logiciel Développement Logiciel Éxamen session 1-2012-2013 (Vendedi 25 mai, 9h-11h) Seuls les documents liés directement au cours sont autorisés (comme dit sur le site) : sujets de TD, notes de cours, notes personnelles

Plus en détail

1 Recherche en table par balayage

1 Recherche en table par balayage 1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément

Plus en détail

Correction du baccalauréat ES/L Métropole 20 juin 2014

Correction du baccalauréat ES/L Métropole 20 juin 2014 Correction du baccalauréat ES/L Métropole 0 juin 014 Exercice 1 1. c.. c. 3. c. 4. d. 5. a. P A (B)=1 P A (B)=1 0,3=0,7 D après la formule des probabilités totales : P(B)=P(A B)+P(A B)=0,6 0,3+(1 0,6)

Plus en détail