Présentation

La part grandissante de l'informatique et de la simulation dans la plupart des champs disciplinaires conduit à la production de données en quantités de plus en plus importantes. C'est le cas par exemple en biologie avec le séquençage des différents génomes, en astronomie avec la multiplication des images transmises par les sondes ou les observatoires, en météorologie avec la simulation des phénomènes atmosphériques et leur visualisation, en sciences expérimentales avec l'accroissement de la taille et de la complexité des expériences, ou encore en mécanique des fluides avec des calculs de plus en plus gourmands en entrées/sorties. Par ailleurs, l’augmentation de la puissance des machines de calcul et la particularité de leur architecture massivement parallèle permettent aux chercheurs de progresser dans la complexité des simulations numériques qu'ils réalisent, par exemple en accroissant la taille des domaines géométriques utilisés pour modéliser les problèmes. Si cette augmentation est plutôt bien maîtrisée au niveau calculatoire, il n'en va pas de même pour la gestion des entrées et sorties des codes de calcul, ce qui pose des problèmes par exemple en vue de leur couplage ou plus simplement de l'exploitation des résultats. Le volume de données ne doit pas devenir un facteur bloquant. Ainsi l'objectif de cette formation est d'approfondir les techniques relatives à ces grandes masses de données : structuration des fichiers et des données, entrées/sorties adaptées , visualisation. Pour cela, la formation dressera un panel des méthodes, formats et outils existants ... afin de permettre aux participants de choisir les éléments les plus adaptés à leur pratique quotidienne.

Objectifs

Cette formation propose une approche à la fois théorique et pratique, afin que les participants soient rapidement opérationnels sur les techniques étudiées dès leur retour dans leur laboratoire.

Les objectifs principaux de cette formation sont d'apporter aux stagiaires les bases théoriques et pratiques liées de façon générale aux entrées/sorties des codes de calcul.

Différents points seront abordés :

  • Problématique générale des entrées/sorties séquentielles et parallèles
  • Format de fichier HDF5, NetCDF
  • Routines d'E/S parallèles dans les codes scientifiques :MPIIO …
  • Visualisation a posteriori
  • Visualisation in situ

Les pré-requis pour cette formation sont :

  • expérience en développement de code de calcul.

Cette formation prendra la forme de cours théoriques qui seront complétés par des parties pratiques.

Programme

mardi 27/09

09:00 12:00 Télécharger le support

Introduction au post-traitement

Matthieu Haefele

Ce cours permet de poser les bases et le vocabulaire commun dans le domaine du post-traitement. Il aborde en particulier HDF5. Ce premier TP d'introduction sur Hdf5 permet d'utiliser l'API en C ou Fortran, selon vos pratiques.
14:00 15:00 Télécharger le support

Description des données scientifiques : HDF5, XDMF

Matthieu Haefele

Au délà des seules notions d'I/O, il existe de nombreux standards et mécanismes permettant de décrire les données scientifiques. Ce cours dresse un panorama de quelques outils et formats. Il est complété par un TP utilisant les fonctionnalités avancées de Hdf5.
15:00 17:00

Rappels sur MPI + Architectures

Philippe Wautelet

Télécharger le support Cours MPI
Télécharger le support Introduction aux FS parallèles
Télécharger le support IO, les méthodes

La suite la formation s'appuie sur le parallélisme, ces rappels permettent de donner à tous les bases sur la principale API utilisée pour mettre en oeuvre le parallélisme dans les applicaitons scientifiques.

Systemes de fichiers paralleles (principes, fs existants, quelques resultats...)

mercredi 28/09

09:00 10:30 Télécharger le support

Le post-traitement données scientifiques

Matthieu Haefele

Que faire de ses données une fois la simulation passée ? Comment réaliser des diagnostics ? Le cours dressera un panorama des outils utilisés suivant les disciplines (Matlab, IDL, Matplotlib, Yorick, ...)
11:00 12:00 Pas de résumé disponible

Sessions parallèles

Matthieu Haefele et Romaric David

Télécharger le support Inkscape
Télécharger le support TP
Télécharger le support Matplotlib
Télécharger le support NetCDF
14:00 18:00 Pas de support disponible

Sessions parallèles

Participants

La visualisation et vous Sous la forme de démonstrations, chaque participant présente ses pratiques actuelles de visu

jeudi 29/09

09:00 12:00 Télécharger le support

Les principes de la visualisation

Julien Jomier (Kitware)

Les principes de la visualisation, à travers l'API VTK, les principes du pipeline de visualisation sont étudiés. En particulier, les goulets d'étranglement liés au traitement de données volumineuses seront mis en évidence.
14:00 17:00 Télécharger le support

Outils de visualisation scientifique

Jean Favre

Ce cours dresse un panorama des outils de visualisation disponibles, en particulier Visit. Visit est un des logiciels phares de visualisation scientifique du domaine public.
18:00 20:00 Pas de support disponible

Soirée Méthodes de visualisation à distance

Société Oxalya

Soirée Méthodes de visualisation à distance (de type Remote Frame Buffer) Dans un cadre général, comment déporter de manière performante une session graphique ?

vendredi 30/09

09:00 12:00

Couplage simulation/visualisation in situ

Jean Favre

Télécharger le support cours
Télécharger le support TP
Le couplage avec Visit permet de mettre a disposition de la simulation, une librairie complete d'algorithmes de visualisation, avec une interface directe avec les données en mémoire pendant l'exécution de la simulation et de manière complétement indépendente des formats de fichiers.