Solveurs directs parallèles et équilibrage de charges



Documents pareils
Aspects théoriques et algorithmiques du calcul réparti L agglomération

Limitations of the Playstation 3 for High Performance Cluster Computing

Principe de symétrisation pour la construction d un test adaptatif

BIG Data et R: opportunités et perspectives

T. Gasc 1,2,3, F. De Vuyst 1, R. Motte 3, M. Peybernes 4, R. Poncet 5

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

Big Data et Graphes : Quelques pistes de recherche

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

ÉTUDE DE L EFFICACITÉ DE GÉOGRILLES POUR PRÉVENIR L EFFONDREMENT LOCAL D UNE CHAUSSÉE

Big Data et Graphes : Quelques pistes de recherche

Figure 3.1- Lancement du Gambit

Lamia Oukid, Ounas Asfari, Fadila Bentayeb, Nadjia Benblidia, Omar Boussaid. 14 Juin 2013

Forthcoming Database

FOURTH SESSION : "MRP & CRP"

Adaptation de maillages non structurés pour des problèmes instationnaires

ASSURER LA QUALITE DES RESULTATS D ESSAI ET D ETALONNAGE Assuring the quality of test and calibration results

Rencontre sur la thématique du Calcul Haute Performance - 13 juin Better Match, Faster Innovation

$SSOLFDWLRQGXNULJHDJHSRXUOD FDOLEUDWLRQPRWHXU

Conception des systèmes répartis

Etude d un cas industriel : Optimisation de la modélisation de paramètre de production

Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services

Économie d énergie dans les centrales frigorifiques : La haute pression flottante

Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite.

THÈSE. présentée à TÉLÉCOM PARISTECH. pour obtenir le grade de. DOCTEUR de TÉLÉCOM PARISTECH. Mention Informatique et Réseaux. par.

Transmission d informations sur le réseau électrique

Automatique (AU3): Précision. Département GEII, IUT de Brest contact:

Practice Direction. Class Proceedings

Définition et diffusion de signatures sémantiques dans les systèmes pair-à-pair

Ricco Rakotomalala R.R. Université Lyon 2

Calculer avec Sage. Revision : 417 du 1 er juillet 2010

France SMS+ MT Premium Description

DOCUMENTATION - FRANCAIS... 2

Résolvez vos problèmes d énergie dédiée à l informatique

Exemple d acquisition automatique de mesures sur une maquette de contrôle actif de vibrations

TESTS PORTMANTEAU D ADÉQUATION DE MODÈLES ARMA FAIBLES : UNE APPROCHE BASÉE SUR L AUTO-NORMALISATION

Equilibrage de charge (Load

Filtrage stochastique non linéaire par la théorie de représentation des martingales

Automatique Linéaire 1 Travaux Dirigés 1A ISMIN

Folio Case User s Guide

Introduction à MapReduce/Hadoop et Spark

Equilibrage de charge pour les grilles de calcul : classe des tâches dépendantes et indépendantes.

1 Description générale de VISFIELD

Cours 02 : Problème général de la programmation linéaire

Introduction à l approche bootstrap

Plan du cours. Autres modèles pour les applications réparties Introduction. Mode de travail. Introduction

DG-ADAJ: Une plateforme Desktop Grid

Théorie et codage de l information

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration

Exploiter les statistiques d utilisation de SQL Server 2008 R2 Reporting Services

NON-LINEARITE ET RESEAUX NEURONAUX

Exo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.

Programmes des classes préparatoires aux Grandes Ecoles

DOCUMENTATION - FRANCAIS... 2

ANALYSE CATIA V5. 14/02/2011 Daniel Geffroy IUT GMP Le Mans

I. Programmation I. 1 Ecrire un programme en Scilab traduisant l organigramme montré ci-après (on pourra utiliser les annexes):

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

Un environnement de déploiement automatique pour les applications à base de composants

GARANTIES DE BONNE ECECUTION

Sommaire. Couverture de zone de surveillance dans les réseaux de capteurs. De quoi parle-t-on ici (1/2)? Objectif. De quoi parle-t-on ici (2/2)?

emoveo pour le programme «Usine du Futur» en Midi-Pyrénées novembre 2014

Les simulations dans l enseignement des sondages Avec le logiciel GENESIS sous SAS et la bibliothèque Sondages sous R

Encryptions, compression et partitionnement des données

FONCTION DE DEMANDE : REVENU ET PRIX

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

Face Recognition Performance: Man vs. Machine

INF6304 Interfaces Intelligentes

Le Traitement Automatique des Langues en France à l ère du Big Data

Les nouveautés de Femap 11.1

Groupe Eyrolles, 2006, ISBN :

Graphes d attaques Une exemple d usage des graphes d attaques pour l évaluation dynamique des risques en Cyber Sécurité

Ordonnancement temps réel

ANALYSE NUMERIQUE ET OPTIMISATION. Une introduction à la modélisation mathématique et à la simulation numérique

L écosystème Hadoop Nicolas Thiébaud Tuesday, July 2, 13

Cours de Master Recherche

APPENDIX 6 BONUS RING FORMAT

Exercices Corrigés Premières notions sur les espaces vectoriels

Master IAD Module PS. Reconnaissance de la parole (suite) Alignement temporel et Programmation dynamique. Gaël RICHARD Février 2008

Population responses to environmental forcing : approaches to model and monitor habitat characteristics

Méthode de l équilibrage harmonique généralisé

Production et orchestration de services digitaux, un nouvel enjeu pour les DSI

Compte-rendu technique complet et détaillé des cookies

Happy birthday ZSet High performance computing dans ZSet

BILAN du projet PEPS 1 EOLIN (Eolien LMI INSA)

Exemples de dynamique sur base modale

Système de stockage IBM XIV Storage System Description technique

Annexe 6. Notions d ordonnancement.

: Machines Production a créé dès 1995, le site internet

Laboratory accredited by the French Home Office (official gazette date February 5 th, 1959, modified) Valid five years from August 27 th, 2013

Présenta)on des ac)vités de recherche de l équipe PR du laboratorie MIS

ANNEXE RELATIVE AUX CONDITIONS GENERALES D UTILISATION DES FICHIERS GEOGRAPHIQUES

Gérer sa trésorerie. Fiche. au quotidien. Sage 100 Trésorerie Version 16. Déroulement des étapes à suivre pour gérer sa trésorerie quotidienne.

Ingénierie et gestion des connaissances

Fonctions de plusieurs variables

ANNEXE J POTEAUX TESTÉS SELON UN CHARGEMENT STATIQUE ET TESTÉS SELON UN CHARGEMENT CYCLIQUE ET STATIQUE

Simulation centrée individus

VMware : De la Virtualisation. au Cloud Computing

CAP CAMION A ASSISTANCE PNEUMATIQUE

Introduction à MATLAB R

Flex Multipath Routing

Transcription:

Solveurs directs parallèles et équilibrage de charges Jean-Paul Boufflet, Emmanuel Lefrançois Laboratoire Heudiasyc, Laboratoire de Roberval Université de ompiègne (UT) 60200 ompiègne, edex jean-paul.boufflet@hds.utc.fr, emmanuel.lefrancois@utc.fr RÉSUMÉ. e papier présente une approche de la parallélisation d outils de calcul par éléments finis orientée vers une utilisation rationnelle des ressources informatiques. L approche est basée sur une technique classique de décomposition de domaine et met l accent sur la nécessité d équilibrer le découpage d un maillage en volumes de calcul et non pas de données, le principal risque avec cette dernière approche étant la dégradation des peformances d un calcul effectué en parallèle. La technique d équilibrage exposée est basée sur le transfert d éléments finis entre sous-domaines et sur la connaissance d un modèle comportemental du solveur permettant d estimer a priori le volume de calcul de chacun des sous-domaines. Les possibilités qui en découlent sont de pouvoir volontairement déséquilibrer le découpage pour des applications utilisées sur un environnement de calcul aux performances hétérogènes et de prévoir pour un maillage donné, le nombre optimal de découpages qui conduit au temps de calcul global le plus petit. ABSTRAT. This paper exposes a parallelization approach for finite element solvers with the objective of a rational use of computer resources. This one is based on a classical domain decomposition technique and points out the necessity to ensure a decomposition in terms of loads balancing. The proposed technique is based on finite elements transfers between subdomains and the knowledge of a solver s behaviour model in order to estimate the load assigned to each subdomain. Extensions concern the capability to voluntary unbalance the partitionned load in order to conduct a distributed calculation on heterogeneous computer environment. A second extension concerns the possibility to estimate the optimal number of subdomains that will lead to the minimum global calculation time. MOTS-LÉS : Eléments finis, calcul parallèle, décomposition de domaines, complément de Schur, équilibrage de charge KEYWORDS: Finite elements, parallel computing, domain decomposition, Schur complement, loads balancing

3 x 107 plus grand volume de calcul 2 1. Objectifs et originalité L objectif de ce papier est de réaliser la parallélisation d applications en vue d une utilisation rationnelle des moyens de calculs. La démarche proposée s appuie sur la technique des sous-structures qui a pour objectif de maximiser le nombre de tâches parallélisables, à savoir réalisables en simultané. Selon le type de solveur employé [HEN 00], un découpage équilibré en volumes de données (nombre de nœuds et donc d inconnues) ne conduit pas nécessairement à un équilibrage en volume de calcul (ou de charge). Les figures 1 et 2 illustrent cette tendance dans le cas d un calcul de hauteur de houle dans le port de Brest avec le logiciel REFONDE 1. Le maillage a été découpé sous METIS c en cinq sous-domaines équilibrés en volumes de données. 2.5 estime : sous domaine numero 5 estimation du volume de calculs moyen sur les 5 sous domaines 2 1.5 1 0.5 0 1 2 3 4 5 Figure 1. Partitions en volumes de données équilibrés Figure 2. Volumes de calcul déséquilibrés Le volume de calcul est ici estimé a priori d après un modèle comportemental du solveur. On notera le déséquilibre induit par ce découpage sur l estimation de la charge pour chacun des sous-domaines. Les calculs confirment la tendance estimée. L originalité de l approche proposée ici porte à la fois sur le déploiement d une stratégie de ré-équilibrage des sous-domaines initiaux en s appuyant sur la connaissance d un modèle comportemental du solveur, ce dernier permettant d estimer a priori la charge associée à chacun des sous-domaines, et sur la prédiction avant calcul du nombre de sous-domaines optimal. Nous illustrons Figure 3 l évolution des performances d un calcul de déformation d une poutre en flexion en fonction du nombre de sous-domaines considérés et l existence d un découpage optimal. L objectif visé est donc double et s oriente pleinement vers une utilisation rationnelle des moyens de calculs disponibles avec la nécessité de fournir les informations utiles a priori (ne requérant aucune utilisation au préalable du solveur) en fonction du type d applications, du solveur, des configurations matérielles... Une application possible est l estimation et la répartition de charges au sein d une grille de calcul en vue d assurer une prestation de type qualité de service.. développement UT-ETMEF au début des années 1990

3 10 3 Traitement local Traitement interface Traitement global 10 2 log(temps PU) (s) 10 1 10 0 10 1 10 2 10 3 0 1 2 3 4 5 6 2 n sous domaines Figure 3. Découpage d une poutre en flexion - Evolution du temps global de calcul 2. Méthodologie Notre démarche est motivée par notre expérience pratique et par les observations d autres auteurs [HEN 98, HEN 00, SO 99]. Elle se place dans la continuité des travaux présentés sur un solveur frontal [DEN 03]. L objectif de la parallélisation d un solveur peut être double : le premier est de réduire de manière significative le temps de calcul, le second de réaliser des calculs nécessitant des ressources mémoire dépassant les capacités usuelles d une unique machine. Nous nous intéressons aux cas de solveurs de type direct couramment employés en mécanique statique ou stationnaire et pour des résolutions temporelles implicites. 2.1. Principe de l approche du calcul distribué Le traitement d un problème physique stationnaire par la méthode des éléments finis conduit au système global suivant : avec la matrice de rigidité du système, le vecteur des inconnues nodales et le vecteur des sollicitations. Les problèmes instationnaires ou non linéaires requièrent la résolution de ce système au sein d une boucle de calcul, respectivement en temps et itérative. e système résulte de la discrétisation des équations d équilibre du problème traité sur le maillage associé au domaine d étude. La résolution de ce système par une technique de décomposition de domaine requiert les étapes suivantes : 1) Découpage du domaine initial en sous-domaines ; 2) en simultané sur processeurs : a) Assemblage du système local ;

Q @ 4 b) Factorisation des inconnues internes ; c) Extraction du complément de Schur local ; d) Assemblage du problème d interface. 3) Résolution du problème d interface ; 4) Redistribution de la solution sur tous les sous-domaines ; 5) en simultané sur processeurs : a) Phase de remontée pour le calcul des solutions internes aux sous-domaines. 2.2. Décomposition et calcul Pour illustrer la démarche nous utilisons le maillage en quadrangle de la figure 4 et une factorisation de type LU. SD1 Interface commune Figure 4. Le domaine initial et sa décomposition en sous-domaines La décomposition met en évidence les nœuds frontières dupliqués. Pour un sousdomaine, noté!#%$ avec, #)* &(' +,, est le vecteur des inconnues associées aux nœuds internes et est le vecteur des inconnues associées aux nœuds frontières. Nous construisons le système linéaire local au sous-domaine & : -,.//02143 5 6 1> 5 >?, 3 798;:=< 6 <+@, BA BA [1], que nous condensons en factorisant les inconnues. ette factorisation est incomplète. Pour chaque sous-domaine, -, nous obtenons un système dit interface associé exclusivement aux variables. Sa matrice est, matrice du complément de Schur local du sous-domaine &. Elle traduit une condensation de toutes les informations (rigidité par exemple) sur les nœuds d interface. Nous posons : 1 > 5 >? 6 Puis nous calculons et 3 5 Ë F <4@ avec :,, BA 3 G @D BA SD2 SD3 [2] KJ [3] et IH A ce stade, nous avons systèmes interfaces, et systèmes d équations [2]. Nous assemblons les systèmes interfaces en un seul avec les procédures d assemblage (au sens des éléments finis) : LNMPO S, NM[O Q -, S NMPO Q %TVUXWZY %TVUXWZY KJ #R %R %R

e H ^ e nous obtenons le système interface -, Ë, global \ qui permet de %TVUXWZY %TVUXWZY calculer les variables interfaces, qui est ensuite redistribuée vers chaque ]!#%$ -, %TVUXWZY pour calculer les avec [2]. Selon ce schéma, le temps global de calcul est la somme du temps maximal de condensation d un sous-domaine, du temps d assemblage des problèmes interfaces, du temps de résolution du problème d interface et du temps de restitution. Un calcul efficace nécessite de synchroniser la fin des tâches de condensation. Or, le temps de factorisation partielle d un!#%$ n est pas proportionnel à son volume de données et dépend de la numérotation du sous-domaine. Le gain net en temps de calcul peut ainsi fortement varier : il faut chercher à équilibrer les volumes de calcul et non plus des volumes de données. e pilotage de la charge requiert la connaissance d un modèle comportemental du solveur. e dernier permet d estimer en fonction de la table des connectivités, la largeur de bande moyenne de la matrice de rigidité associée à chacun des sous-domaines. ette démarche à déjà été utilisée avec succès pour plusieurs types de solveur direct [DEN 03]. Pour la version Skyline du solveur de REFONDE, cet estimateur est donné par : ) Nbre opérations ^ `_+acb=d e bf`_+acbcd H `_4a [4] J où g_4a est le nombre d inconnues et d la hauteur moyenne des colonnes de stockage de la matrice. 2.3. Equilibrage en volumes de calcul L idée consiste à transférer des éléments finis entre le sous-domaine qui possède le plus gros volume de calcul estimé et ses sous-domaines voisins. Pour cela nous avons utilisé et adapté des algorithmes issus de la théorie des graphes. L idée est de partir d une partition initiale équilibrée en volume de données fournie par un outil standard puis de la corriger de façon à obtenir une partition équilibrée en volume de calculs. La procédure est répétée de façon itérative jusqu à obtenir l équilibrage. Elle peut ainsi être utilisée pour équilibrer une décomposition en 5 sous-domaines mais aussi comme outil d aide à la décision pour déterminer le nombre optimal de sousdomaines avant tout calcul. Si l on suppose en effet qu il existe une énergie de calcul minimale pour traiter un maillage donné, nous pouvons simuler le comportement du solveur pour ^ 5h5iI J#J%J sous-domaines et sélectionner la meilleure décomposition équilibrée en volumes de calcul. Trois stratégies ont ainsi pu être testées : la première stratégie de pilotage de l équilibrage détecte le sous-domaine de plus grand volume de calcul, puis transfère une partie des éléments finis frontières de ce sous-domaine vers ses sous-domaines voisins. Il s agit d une approche push. La seconde est élaborée selon une stratégie pull : le sous-domaine de plus petit volume de calcul estimé demande à ses voisins de lui fournir des éléments finis frontières. Enfin, nous avons mixé ces deux stratégies : une itération s effectue en mode push, la suivante en mode pull. Nous illustrons figure 5, le résultat de l équilibrage du découpage du port de Brest présenté sur les figures 1 et 2. Les temps de calcul mesurés sont conformes aux estimations. L équilibre est meilleur et le temps de calcul moyen a diminué. La barrière de synchronisation induite par le

6 sous-domaine ayant le plus grand temps de calcul est abaissée : le temps de calcul diminue et on utilise mieux les ressources de calculs. 3 x 107 2.5 2 1.5 1 0.5 0 1 2 3 4 5 Figure 5. Estimation des volumes de calculs, découpage initial ( 5) Figure 6. Equilibrage avec vecteur de consignes ( ) 6kj [ 6;j l 6kj ) Une possibilité inhérente à la capacité d équilibrer est de pouvoir justement déséquilibrer pour des applications amenées à être exécutées sur un environnement constitué de machines avec des performances hétérogènes (application autour des grilles de cluster différents par exemple). La figure 6 illustre le cas d un découpage en trois blocs et volontairement déséquilibré selon les proportions ) 6;j, 6;j et l 6;j. Les deux courbes illustrent respectivement la répartition de la charge obtenue et les temps de calculs mesurés. 3. onclusions Les résultats présentés ne prétendent nullement justifier l utilisation du calcul distribué, mais servent à la fois de cas-test de validation des outils nouvellement développés et d exemple de démonstration de la procédure. Le travail actuel porte sur l estimation du nombre optimal de sous-domaines menant au temps de calcul global le plus petit, toujours dans l optique d une démarche de type qualité de service. e travail est le fruit d une collaboration entre une équipe d informaticiens et une équipe de numériciens auquel participent des étudiants de l UT dans le cadre de mini-projets. Il répond à la démarche formulée autour du projet de plateforme PILAD (Plateforme Inter-LAboratoire de Alculs Distribués) soutenu par un abondement ANVAR. 4. Bibliographie [DEN 03] DENIS., BOUFFLET J., BREITKOPF P., RASSINEUX A., VAYSSADE M., «Equilibrage en Volume de alcul pour un Solveur Parallèle Multi-niveau», 6ème olloque National en alcul des Structures, 2003, p. 349-356, Giens, France. [HEN 98] HENDRIKSON B., «Graph Partitioning and Parallel Solvers : Has the Emperor No lothes?», Irregular 98, Lecture Notes in omputer Science, vol. 1457, 1998, p. 218-225. [HEN 00] HENDRIKSON B., «Load balancing fictions, falsehoods and fallacies», Applied Mathematical Modelling, vol. 25, 2000, p. 99-108. [SO 99] SOTT J., «The Design of a Parallel Frontal Solver,Technical Report RAL-TR99-075», rapport, 1999, Rutherford Appleton Laboratory.