Paralléllisation de Gibiane

Slides:



Advertisements
Présentations similaires
REFERENTIEL DE LA SERIE STG
Advertisements

Premier programme en C :
La boucle for : init7.c et init71.c
Frédéric Gava JFLA2006 Une implantation de la juxtaposition parallèle.
Transformation de documents XML
Cours 8 Problèmes de dynamiques : techniques de résolution pas-à-pas
Regroupement (clustering)
Etude du cas de la motorisation hybride
Vocabulaire pour la passage du modèle conceptuel des données au modèle relationnel des données. MCDMRD EntitéTable PropriétésChamps, attribut IdentifiantClé
CURSUS DE FORMATION AUX NOUVELLES TECHNOLOGIES DE DEVELOPPEMENT UV EJB Entité Module Java Expert.
Lycée Louis Vincent SEANCE 6 Python Les listes Lundi 25 novembre 2013.
CALCUL PARALLELE PRODUIT : MATRICE – VECTEUR 10 pages Exposé par :
Suivant la position de l’objet, on distingue 2 situations.
Chapitre 8 : L’architecture de base des ordinateurs
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
Partie 1 Etude de l'existant
Points importants de la semaine Les boucles. Les types arithmétiques. Les opérateurs.
Les éléments de base de l’algorithmique
Les structures de contrôle conditionnelles
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
IMD Achats Logiciel de gestion des Achats
Algorithmique et Programmation
.Net Remoting.
Optimisation et parallélisation de code pour processeur à instructions SIMD multimedia François Ferrand.
Les structure d’un programme :
Points importants de la semaine Les tableaux. Rappel : les tableaux Quest-ce quun tableau ? Réponse : Un tableau est une série déléments de même type.
Principes de programmation
Programmation concurrente
PASAPAS Procédure de calcul non linéaire Non linéarités matériaux
Calcul parallèle haute performance dans CAST3M
Vous allez assister à une démonstration de la base de données Mémorable en vue doptimiser son utilisation Oubliez souris et clavier et laissez vous guider.
Leçon 1 : notion dobjet IUP Génie Informatique Besançon Méthode et Outils pour la Programmation Françoise Greffier Université de Franche-Comté.
Mécanismes d'exécution et de communication
Les Opérateurs Ils régissent toutes les opérations ou transformations sur les valeurs des variables. Opérateur d'affectation Opérateurs arithmétiques Opérateurs.
EPID-CPI-ISAIP Philippe Bancquart - mise à jour 24/02/ page 1 Gestion des transactions SQLServer.
1. Représentation des informations
Présenté par : Attia Hamza Merzouk Abdelkrim 2003/2004
JavaScript.
NOUVEAUTES DEPUIS LE CLUB 2008
8INF856 Programmation sur architectures parallèles
Institut Supérieur des Sciences Appliquées et de Technologie Sousse
Un survol du language C.
Modèles et protocoles de cohérence des données en environnement volatil Grid Data Service IRISA (Rennes), LIP (Lyon) et LIP6 (Paris) Loïc Cudennec Superviseurs.
3-Présentation d’un µP simple
Les Machines RAM.
Le langage Racket (Lisp)
Bureautique M1 Mise en forme évoluée 2.
Résolution d’un problème de diffusion 3D
Initiation à la conception des systèmes d'informations
Sémantique des instructions pour le langage Z minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Fonctions avancées et graphiques
Introduction au langage C : Structures de contrôle 1 ère année Génie Informatique Dr Daouda Traoré Université de Ségou
Conception de Programmes - IUT de Paris - 1ère année Quelques éléments du langage C++ Les références La surcharge de fonctions Les fonctions «
UE MAREP Cours 12 : Révisions
Patricia Renault UPMC 2005/2006
Introduction à MathML Par Katia Larrivée UQO Le 18 mars 2004.
Module algorithmique et programmation
8PRO107 Éléments de programmation Les tableaux. Étude de cas 1 Description du problème : Lire une liste d’entiers et l’afficher d’abord dans le même ordre.
Scripts et fonctions Instructions de contrôle
Exemple d’utilisation de l’outil de profilage prof La commande prof de Unix.
Objets et Actions Élémentaires.
Algorithmique Boucles et Itérations
L E C ORPS D ’ UN A LGORITHME / P ROGRAMME – L A PARTIE I NSTRUCTION Réalisé par : OUZEGGANE Redouane Département de Technologie Faculté de Technologie.
Introduction à l’Informatique chap 3 Licence SPI Mme Delmotte.
L'exécution d'un programme nécessite l'utilisation des ressources de l'ordinateur : temps de calcul pour exécuter les opérations, et l'occupation de la.
FACTORY systemes Module 5 Section 1 Page 5-3 Les scripts de traitement FORMATION INTOUCH 7.0.
L ES INSTRUCTIONS DE L ECTURE, E CRITURE ET A FFECTATION Réalisé par : OUZEGGANE Redouane Département de Technologie Faculté de Technologie – Université.
ALGORITHME ET PROGRAMMATION RÉVISION Informatique et Sciences du Numérique.
O UTILS DE P ROGRAMMATION P OUR LES M ATHÉMATIQUES Mr. BENDIB. I MAA, LAMIS Laboratory, Université Larbi Tébessi - Tébessa.
Transcription de la présentation:

Paralléllisation de Gibiane L’opérateur ASSISTANT L’opérateur PART et la Table « parallèle » L’option TOUS de ASSISTANT Parallélisation de Gibiane Dans pasapas Développements futurs 25 nov 2010 Club Cast3M

L’opérateur ASSISTANT Rappels sur Cast3m Un opérateur ne doit pas modifier les opérandes  En tant qu’entrées d’un opérateur, les objets sont en lecture seule Seul l’opérateur qui crée un objet l’atteint en écriture Esope distingue l’accès en lecture ou en lecture/écriture Développement d’un objet conteneur pour avoir la notion d’objet dont le contenu est ou n’est pas accessible, l’opérateur qui demande l’accès à cet objet est, au besoin, mis en attente. 25 nov 2010 Club Cast3M

L’opérateur ASSISTANT (2) Demande d’exécuter une instruction sur un processeur particulier. Syntaxe : obj1 = ASSIS i mon instruction ; L’interpréteur d’instructions, Gibiane, passe aussitôt à l’instruction suivante. A l’utilisation de obj1 il faudra attendre la finalisation du travail. Permet d’appeler de manière asynchrone les opérateurs (N fois le même ou des différents) 25 nov 2010 Club Cast3M

Opérateur PARTITION Crée une partition arlequin de l’objet de type modèle à partir du maillage sous-jacent mapart = PART N objmod ; mapart est une table de sous type « parallèle », indicée par des entiers 1,..n qui pointe vers des objets modèles rem : PART peut aussi partitionner un maillage 25 nov 2010 Club Cast3M

ASSISTANT TOUS Permet la distribution automatique du travail vers les processeurs. Il faut avoir dans l’instruction une table parallèle. Le résultat de l’instruction est une table « parallèle ». Exemple : mo = model geom mecanique elastique ; mopar = part n mo ; mapar = ASSI TOUS mopar mate youn 20 nu 0.3 ; ri = ASSI TOUS rigi mopar mapar; 25 nov 2010 Club Cast3M

ASSISTANT TOUS (2) Opérateur ETG obj1 = ETG tabpara; Il permet la fusion des objets contenues dans la table « parallèle » Exemple : ritot = ri ETG ; Opérateur REDU obj1= REDU MO tabmcham; Il permet de remettre dans le bon ordre un objet parallèle par rapport à un objet modèle. 25 nov 2010 Club Cast3M

Exemple complet mo = model geom mecanique elastique ; mopar = part 6 mo ; mapar = ASSI TOUS mopar mate youn 20 nu 0.3; ri = ASSI TOUS rigi mopar mapar; ritot = ri ETG ; De = resou (ri et blo) ff; Sig= sigma ASSI TOUS de mopar mapar; Sigt= REDU mo sig; 25 nov 2010 Club Cast3M

Gibiane parallèle Se déclenche par Option parallele vrai ; En présence d’une table parallèle dans une instruction invoque automatiquement ASSI TOUS Remarque : petit problème pour certains opérateurs qui ne veulent pas de résultats mis sous forme de table « parallèle » (Mini, Maxi, produit scalaire, Trac..) 25 nov 2010 Club Cast3M

Gibiane parallèle (2) Opti para vrai; mo = model geom mecanique elastique ; mopar = part 6 mo ; mapar = mopar mate youn 20 nu 0.3; ri = rigi mopar mapar; ritot = ri ETG ; De = resou (ri et blo) ff; Sig= sigma de mopar mapar; Sigt= REDU mo sig; mo = model geom mecanique elastique ; mopar = part 6 mo ; mapar = ASSI TOUS mopar mate youn 20 nu 0.3; ri = ASSI TOUS rigi mopar mapar; ritot = ri ETG ; De = resou (ri et blo) ff; Sig= ASSI TOUS sigma de mopar mapar; Sigt= REDU mo sig; 25 nov 2010 Club Cast3M

Gibiane parallèle (3) Classification des objets Globaux Entiers, réels, logiques, évolutions Champs par point (température, déplacements..) distribués Maillages, modèles, Champs par éléments (matériaux, contraintes,..) 25 nov 2010 Club Cast3M

Gibiane parallèle (4) Global  Distribué Un seul opérateur “PART” qui nécessite d’etre explicitement appelé Entrée : maillage ou modèle Sortie : table parallèle de maillages ou de modèles 2 modes pour maillages : décomposition de domaine Arlequin 25 nov 2010 Club Cast3M

Gibiane parallèle (5) Distribué  Distribué Les objets distribués sont répartis sur les assistants (en lecture seule) Les objets globaux sont envoyés sur chaque assistant (en lecture seule) Les résultats sont des tables parallèles Ex : Res = operateur ob_global ob_distribué .. (Res.i = operateur ob_global ob_distribué.i ..) 25 nov 2010 Club Cast3M

Gibiane parallèle (6) Distribué  Global Réduction automatique par Gibiane d’objets distribués Pratiquement pas d’invocation explicite. Deux critères: Certains opérateurs: MASQ, MAXI, MINI, TRAC, ETG,… Type d’objet : CHPOINT,RIGIDITE Utilisation de représentation multiple Par exemple : RESIDU = FEXT – FINT(distribué) est équivallent à : FINT(réduit) = ETG FINT(distribué) RESIDU = FEXT – FINT(réduit) 25 nov 2010 Club Cast3M

Gibiane parallèle(7) dans pasapas Dans PASAPAS possibilité d’orienter le déroulement du calcul. tab = table; tab . processeurs = ‘MONO_PROCESSEUR’; tab . processeurs = ‘AUTOMATIQUE’; tab . Processeurs = ‘COMPORTEMENT’; PASAPAS TAB; 25 nov 2010 Club Cast3M

Gibiane parallèle(8) dans pasapas Au début de unpas Si(…..) ; Opti para vrai; zmodli=zmodl; zmodl=part zmodl; Puis réduction des champs par éléments en entrées zmat = redu zmat zmodl; sig0 = redu sig0 zmodl; ….. finsi; En sortie de unpas réduction des champs par éléments résultats et opti para faux Sigt= REDU sigt zmodli; opti para faux ; 25 nov 2010 Club Cast3M

utilisation de OPTI PARA VRAI 25 nov 2010 Club Cast3M

Conclusion Parallélisation de cast3m quasi-transparente faite au niveau du langage Pas de changement de sémantique Les nouveaux opérateurs explicitement appelés sont PART et ETG Propagation automatique des structures parallèles à travers les opérateurs. Parallélisation automatique des opérateurs en présence de structures parallèles Réduction automatique de structures parallèles sur des critères heuristiques. 25 nov 2010 Club Cast3M

Développements futurs Meilleure identification des opérations globales et distribuées Mise au point de la réduction automatique en utilisant la sémantique CHP1 + CHP2 : pas de réduction CHP1 produit_scalaire CHP2 : réduction Réduction post-opération CHP1 produit_scalaire CHP2 25 nov 2010 Club Cast3M