La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

SALOME une plate-forme de simulation pour le calcul scientifique

Présentations similaires


Présentation au sujet: "SALOME une plate-forme de simulation pour le calcul scientifique"— Transcription de la présentation:

1 SALOME une plate-forme de simulation pour le calcul scientifique
07 novembre 2006 SALOME une plate-forme de simulation pour le calcul scientifique Vincent LEFEBVRE & André RIBES EDF R&D

2 Sommaire Présentation générale Architecture de la plate-forme
Conclusions & perspectives

3 Sommaire Présentation générale Qu’est-ce que SALOME ? Objectifs
Principales fonctionnalités Une réalisation « Open Source » Applications métiers au CEA & à EDF Cas d’utilisation Architecture de la plate-forme Conclusions & perspectives

4 Qu’est-ce que SALOME ? SALOME
Plate-forme d’intégration pré/post-traitement et de couplage de codes pour la simulation numérique Produite en « open source » dans le cadre des projets RNTL SALOME & SALOME2 et des projets de co-dévelopement CEA- EDF PAL & NEPAL Post CAD Interface CAD modeling Cleaning Properties Meshing Supervision Solver CAD System Visualization

5 Objectifs Faciliter l’interopérabilité entre la modélisation CAO et les codes de calculs Faciliter l’intégration entre les codes de calculs dans un environnement distribué hétérogène Fournir une interface utilisateur générique simple, efficace et qui contribue à la réduction des coûts de recherche et des délais Regrouper la production des développements non critiques (pré et post traitement) dans une base commune de simulation numérique

6 Principales fonctionnalités
Importer/exporter des géométries, réparer/nettoyer des géométries, créer/modifier Mailler des géométries, contrôler la qualité, importer/exporter Manipuler les propriétés physiques et numériques des éléments de géométries Gérer les différentes étapes d’utilisation d’un solveur : recevoir les données, configurer le solveur, renvoyer les résultats Exécuter l’enchaînement et le couplage entre les solveurs Visualiser et post-traiter les résultats

7 Une réalisation « Open Source »
SALOME 1 & 2: RNTL , consortium de 9 & 21 partenaires Open Source, Dernière version de référence : 3.2 sortie en juin 2006

8 Une réalisation « Open Source »
Adhésion aux standards open source Linux, Qt, VTK, C++, OmniORB/CORBA, HDF5, Python Distribution sous les termes de la licence GNU LGPL Possibilité de définir des solutions propriétaires ou commerciales Possibilité d’intégrer des composants métiers qui ne sont pas open source

9 Applications métiers au CEA & à EDF
Neutronique Matériaux Plate-formes métiers Thermo-Hydraulique Déchets Combustible nucléaire Mécanique Plate-forme d’intégration (pré/post et supervision)

10 Cas d’utilisation Plate-forme SALOME pour Code_ASTER 1: Géométrie
2 : Maillage 3 : Paramétrage de données & lancement de l’exécution de Code_ASTER 4 : Post-traitement

11 Supervision de couplage
Cas d’utilisation Couplage RTV– neutronique, cœur thermo-hydraulique, système thermo-hydraulique Supervision de couplage Pre-processing Post-processing

12 Sommaire Présentation générale Architecture de la plate-forme
Vue d’ensemble Modèle d’exécution Modèle d’échange de données Supervision et couplage Conclusions & perspectives

13 Services + modèle de programmation
07 novembre 2006 Vue d’ensemble IHM Superviseur Modules Géométrie Maillage Post-Pro Mise en donnée Physique 2 Physique 1 Modèle Persistant MED Noyau Services + modèle de programmation Études

14 Vue d’ensemble Un module contient
07 novembre 2006 Vue d’ensemble Un module contient Un ou plusieurs programmes Chaque programme peut être divisé en deux parties : Moteur (composant SALOME) contient la partie calcul IHM constitue un lien entre l’IHM de SALOME et le moteur du module Par défaut, CORBA assure le lien entre l’IHM et le moteur Exemples Géométrie 1 moteur et 1 IHM Maillage Plusieurs moteurs (différents algorithmes) + 1 IHM Une application métier construite sous SALOME va permettre à l’utilisateur d’enchaîner des modules à partir De l’IHM graphique (GUI), D’un script python (TUI) D’un schéma de calcul piloté par le superviseur

15 07 novembre 2006 Vue d’ensemble Exemple avec la plate-forme SALOME pour Code_ASTER à partir de l’IHM graphique Géométrie Maillage Mise en donnée Code_ASTER Post-Pro

16 Vue d’ensemble SALOME s’appuie sur des pré-requis techniques
Architecture distribuée : CORBA Langages de programmation et de script : C++ & Python IHM graphique : Qt Persistance des données : HDF5 SALOME fournit également un ensemble de services Généraux fournis par le noyau Gestion des données d’études Modèle d’exécution distribué basé sur CORBA D’échange de données entre modules Modèle d’échange MED De supervision (module de supervision) Enchaînements et couplages

17 Modèle d’exécution de SALOME
07 novembre 2006 Modèle d’exécution de SALOME Un module contient un ou plusieurs composants SALOME Un composant SALOME Extension des objets CORBA On distingue 2 types de composants dans SALOME Python & C++ Fortran C++ Interface C/Fortran Wrapping Composant CORBA-SALOME Composant Python Interface SWIG Python Composant C++ CORBA

18 Modèle d’exécution de SALOME
Les composants SALOME sont hébergés dans des « containers » Processus hébergeant une ou plusieurs instances d’objets SALOME Gestion du cycle de vie des composants (création, destruction) Utilisateur Application-client Couche de communication Container Composant Services de la plate-forme

19 Modèle d’exécution de SALOME
07 novembre 2006 Modèle d’exécution de SALOME Le noyau SALOME fournit des gestionnaires de Containers (cycle de vie des composants) Ressources Machine Container Resource Allocator fournir une machine (critères, charge) Naming Service ContainerManager Registry getMachine(critères) Création, destruction Composant 1 inst1 Étude instance 2 Composant 2 LifeCycleCORBA Instanciation findContainer(…) loadContainer(…) findComponent(…) loadComponent(…) Catalogue ressources Superviseur Lancement 1 2 3 4 5 6

20 Modèle d’échange de données
MED : Modèle d’échange de données commun Standardisation des échanges de données entre modules SALOME Basé sur la notion de champ sur maillage Code 2 (format E/S 2) Code 3 (format E/S 3) Code 4 (format E/S 4) Code 1 (format E/S 1) Format commun d’échange

21 Modèle d’échange de données
Mode de représentation et d’accès aux données du modèle MED dans un module (code de calcul) Inter-processus Communication en mémoire (CORBA) Représentation et accès aux données du modèle directement en mémoire ou sur fichier Code de calcul Communication par fichier (HDF 5) Fichier HDF 5

22 Modèle d’échange de données
MED est utilisé par les modules de pré/post-traitement de la plate- forme SALOME Maillage Visualisation

23 Supervision et couplage
07 novembre 2006 Supervision et couplage Objectifs du module de supervision de la plate-forme Conception visuelle des schémas de calculs et de couplage Utilisation de solveurs et de services de SALOME (géométrie, maillage, …) Exécution et contrôle dans un environnement distribué La supervision dans SALOME se base sur la notion de service Représente une fonctionnalité ou un composant (ou une sous partie) Le module de supervision permet de contrôler et suivre l’exécution de schémas de calcul D’unités de contrôle (Boucle, Switch,…) De services SOLVERS Post processing pre Supervision CAD modelling meshing

24 Supervision et couplage
07 novembre 2006 Supervision et couplage Notion de service Un service est une boîte noire vis-à-vis des autres services Il définit des données d’entrées et des données de sorties Description d’un service Une opération contenue dans le fichier IDL (interface CORBA) du composant Un fichier XML du composant contenant la description des ports Une application de simulation numérique est constituée d’un ensemble de services connectés par le biais de leur ports Port de contrôle = workflow Port de données = datastream Port contrôle + données = dataflow Ces différents types de ports permettent de définir catégories d’applications numériques Chaînage et couplage faible : workflow et dataflow Couplage fort : datastream

25 Supervision et couplage
07 novembre 2006 Supervision et couplage Port de contrôle (workflow) Par le biais des ports nommés « gate » Permet d’exprimer l’enchaînement de différents services Tous les services ont deux gates Contrôle Donnée Contrôle + donnée Gate Service 1 Service 2 Gate Gate

26 Supervision et couplage
07 novembre 2006 Supervision et couplage Port de contrôle et données (dataflow) Transfert des données par les connexions a-a et b-b Transfert du contrôle de service 1 à 2 Contrôle Donnée Contrôle + donnée Service 1 Service 2 String a String a Objet b Objet b Gate Gate Gate Gate

27 Supervision et couplage
07 novembre 2006 Supervision et couplage Port de données (datastream) Taba est transféré du service 1 au 2 par la connexion d-e Tabb est transféré du service 2 au 1 par la connexion f-c Contrôle Donnée Contrôle + donnée Gate Service 2 Objet b String a Tabb e Taba f Gate Service 1 String a Objet b Taba c Tabb d

28 Supervision et couplage
07 novembre 2006 Supervision et couplage Dans un schéma de calcul Les structures de contrôle Loop & Switch sont des nœuds spéciaux qui contrôlent dynamiquement les flux de données Tous les modules de Salomé peuvent être utilisés (Géométrie, Maillage, Post-traitement, calcul)

29 Sommaire Présentation générale Architecture de la plate-forme
Conclusions & perspectives

30 Conclusions & Perspectives
V fin 2008 3 V fin 2007 Phase de Déploiement 2 V mai 2006 Industrialisation V dec. 2005 Gestion des ressources (hétérogènes) Supervision de couplage de composants parallèles Gestion de maillages distribués Visualisation des gros volumes de données Outils d’interpolation multi-domaines Découpage de maillages V dec. 2004 1 V dec. 2003 1er projet SALOME Procédures d’installation automatique, Tests d’environnement de non régression, Documentation, Tutorials… Évolutions GEOM, MESH, SUPERV, VISU Démonstrations de couplage de codes Environnement d’aide d’intégration de code V oct. 2002


Télécharger ppt "SALOME une plate-forme de simulation pour le calcul scientifique"

Présentations similaires


Annonces Google