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

17-21 Octobre 2005 Formation Continue CNRS Laurence Viry Bibliothèques Scientifiques Constructeurs – Domaine public.

Présentations similaires


Présentation au sujet: "17-21 Octobre 2005 Formation Continue CNRS Laurence Viry Bibliothèques Scientifiques Constructeurs – Domaine public."— Transcription de la présentation:

1 17-21 Octobre 2005 Formation Continue CNRS Laurence Viry Bibliothèques Scientifiques Constructeurs – Domaine public

2 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry Sommaire Objectifs Présentation des bibliothèques Bibliothèques monoprocesseur (publique et constructeurs) Bibliothèques en Fortran90 Bibliothèques // Principe dune bibliothèque // Mise en œuvre pratique BLACS SCALAPACK NAG// PETSC Performances Scalapack FFT3d de la LIBSCI

3 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry Intérêt de lutilisation des bibliothèques Apporte portabilite et performances Ne pas refaire ce qui a été fait, testé, optimisé Prise en compte de facteurs qui ne sont pas contrôlable par un non-spécialiste Indépendance vis-à-vis du type des données (simple ou double précision…) Indépendance vis-à-vis de la représentation des données (matrices symétriques, creuses, ….) Choix du meilleur algorithme Stabilité numérique de lalgorithme Optimisation en fonction de larchitecture Optimisation en fonction du cas à traiter

4 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry Classification des bibliothèques disponibles Bibliothèques portables Disponibles sur la plupart des plates-formes Du domaine public: BLAS, LAPACK,ARPACK,SCALAPACK, FFTW, PETSC,… Commerciales: IMSL et NAG Bibliothèques fournies par les constructeurs Chaque constructeur de calculateur scientifique a développé sa propre bibliothèque(ESSL-IBM, CXML- HP/COMPAQ, SCILIB-SGI…) Elles sont optimisées (en principe) pour les machines concernées Elles ne sont pas portables

5 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry Bibliothèques monoprocesseur BLAS BLAS: bibliothèque qui fournit des opérations algébriques de bas niveau Versions: en Fortran domaine public (www.netlib.org/blas)www.netlib.org/blas constructeur optimisée à larchitecture des machines Trois sections BLAS1 : opérations vecteur/vecteur y=alpha*x + y BLAS2 : opérations matrice/vecteur y=alpha*A*x + y BLAS3 : opérations matrice/matrice C=alpha*AB+C

6 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry Bibliothèques monoprocesseur BLAS BLAS Généricité du stockage Diversification vers: dautres langages (ADA, C) dautres architectures (version MPI, version OpenMP)

7 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry LAPACK (Linear Algebra Package) LAPACK est un ensemble de sous- programmes qui permet de résoudre : Systèmes déquations linéaires Problèmes aux valeurs propres Factorisation: LU, Cholesky, QR, Schur, Schur généralisé… Les matrices considérées sont pleines ou bandes (matrice creuses non traitées) de nombres réels ou complexes en simple ou double précision

8 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry NAG (Numerical Algorithms Group) Bibliothèque mathématique Versions: Fortran 77 version sous programmes Fortran 90 Version 4 Plus de 250 sous-programmes avec des interfaces génériques C Version 6 Plus de 450 sous-programmes

9 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry NAG Vise à optimiser 5 critères Utilité Robustesse Stabilité numérique Précision Performance Adaptée à dautres architectures Version mémoire distribuée avec MPI Version mémoire partagée avec OpenMP En constante évolution

10 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry IMSL Partie statistique sans équivalent dans les autres bibliothèques Versions Fortran77 / Fortran 90 / Parallèle – MPI C Java

11 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry Bibliothèques Constructeurs NEC ASL (Advanced Scientific Library), Mathkeisan Versions séquentielle et parallèle IBM ESSL (Engineering and Scientific Subroutine Library) Version séquentielle et parallèle SGI et Cray Scilib (Scientific Library) HP/COMPAQ CDSL SUN SUN Performance Library

12 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry Bibliothéques mathématiques Fortran90 NAG fl90 (version 4) Plus de 250 sous-programmes génériques Couvre presqe tous les domaines IMSL F90 MP (version 4) Plus de 60 sous-programmes génériques Couvre lalgèbre linéaire, fft, la génération de nombres aléatoires Version 95 de LAPACK

13 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry Intel MKL (Math Kernel Librairies) Bibliothèque mathématique optimisée sur Processeur Intel Pentium 3,4… Itanium :64-bit Compilateur Intel Fortran version 5.0 et plus CVF Fortran version 6.0 et plus Intel C++ version 5.0 et plus Microsoft Visual C version 6.0 et plus Contenu (Interface C et Fortran) BLAS et extended BLAS (matrice creuse) LAPACK Transformées de Fourier rapide

14 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry Bibliothèques Parallèles Domaine public PBLAS, SCALAPACK,FFTW,PLAPACK,PETSC… Constructeur PESSL,IBM ASL et MATHKEISAN – NEC Scilib chez SGI et Cray … Bibliothèques commerciales NAG Parallel NAG SMP IMSL MP

15 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry BLACS Bibliothèque standard de communication permettant sur une grille prédéfinie de processus : Déchanger des blocs de matrices De les diffuser globalement Deffectuer des réductions Écrit en C Plusieurs implémentations: MPI PVM3.3 Syntaxe standard sur tous les systèmes

16 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry PBLAS (Parallel BLAS) Défini et réalisé dans le cadre de la réalisation de SCALAPACK Léquivalent des BLAS1,2 et 3 pour les machines à mémoire distribuée Interface aussi proche que possible de celle des BLAS Utilise les BLACS pour les communications

17 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry ScaLAPACK (Scalable LAPACK) Le projet ScaLAPACK est divisé en quatre composants La bibliothèque ScaLAPACK: algèbre linéaire pour les matrices denses La bibliothèque PARPACK (Parallel ARPACK): recherche de valeurs propres dans de très grosses matrices La bibliothèque CAPSS (Cartesian Parallel Sparse Solver) et MFACT (matrice creuse définie positive) La bibliothèque PARPRE ( Parallel PREconditioners): préconditionneurs pour les matrices creuses quelconques.

18 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry Bibliothèque ScaLAPACK Portable sur tout système Deux implémentations basées sur PVM ou MPI Version actuelle 1.7 (Aout 2001) Basée sur les bibliothèques PBLAS et BLACS Les domaines traités sont: Résolution de système linéaires et factorisation Inversion de matrice Systèmes de valeurs propres …

19 STRUCTURE DE ScaLAPACK K ScaLAPACK PBLAS BLACS MPI/PVM/… BLAS LAPACK Global Local

20 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry PETSC ( Portable Extensive Toolkit for Scientific Computation) Résolution des gros systèmes déquations linéaires Utilisable en version mono et multi processeurs Programmation utilisant les concepts objets Version actuelle (Août 2003) Utilisée dans de nombreuses applications scientifiques (biologie, CFD, Nano- simulation,optimisation,…) www-unix.mcs.anl.gov/petsc/petsc-2/

21 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry FFTW Transformées de Fourier : Mono et multi-dimensionnelles Complexes ou réelles Utilisable en version mono et multiprocesseurs Implémentation performante (benchmarck sur la rapidité et la précision sur le site de FFTW) Écrit en C avec une interface pour le langage Fortran Version actuelle 3.1 Site FFTW:

22 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry NAG Parallel Deux versions: Pour machines à mémoire répartie Version 3 Plus de 180 sous-programmes Pour machines à mémoire partagée (NAG SMP) Version 2 Plus de 230 sous-programmes Voir site:

23 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry IMSL Parallel Se prête à la répétition dun calcul sur des jeux de données différents Partie intégrante de la bibliothèque Fortran (Fortran 90 MP) La mise en œuvre de la parallélisation est cachèe

24 17-21 Octobre 2005 Formation Continue - CNRS Laurence Viry Bibliothèques parallèles constructeurs IBM : ESSL PBLAS et ScaLAPACK Transformées de Fourier 2D et 3D Génération de nombres aléatoires SGI et CRAY : Scilib (Scientific Library) PBLAS et ScaLAPACK Transformées de Fourier 2D et 3D NEC : ASL et MATHKEISAN PARBLAS (BLAS en mode mémoire partagée) PBLAS et ScaLAPACK Transformées de Fourier 2D et 3D Génération de nombres aléatoires

25 K ScaLAPACK PBLAS BLACS MPI/PVM/… BLAS LAPACK PETSC Scilib NAG // IMSL


Télécharger ppt "17-21 Octobre 2005 Formation Continue CNRS Laurence Viry Bibliothèques Scientifiques Constructeurs – Domaine public."

Présentations similaires


Annonces Google