| Actualités | Documentation | Liens | Nous Contacter | Rechercher | Accès réservé |
  • French
Accueil arrow Support technique arrow Les modèles arrow Compilation et exécution de WPS et WRF

Accueil
- - - - - - - - - - - - - - - - - - - -
Catalogue de données
- - - - - - - - - - - - - - - - - - - -
Accéder à ClimServ
- - - - - - - - - - - - - - - - - - - -
Support technique
Etat du Cluster
- - - - - - - - - - - - - - - - - - - -
Orbitographie (Ixion)

Compilation et exécution de WPS et WRF Version imprimable
Index de l'article
Compilation et exécution de WPS et WRF
Exécution de WPS et WRF
Autres pages d'aide

Ce document explique comment compiler la version 3.4.1 de  WRF (Weather Research &Forecasting) et WPS (WRF Preprocessing system) en utilisant les compilateurs Intel sur ClimServ.

"WRF was developed at the National Center for Atmospheric Research (NCAR)which is operated by the University Corporation for AtmosphericResearch (UCAR). NCAR and UCAR make no proprietary claims, eitherstatutory or otherwise, to this version and release of WRF and considerWRF to be in the public domain for use by any person or entity for anypurpose without any fee or charge. UCAR requests that any WRF userinclude this notice on any partial or full copies of WRF. WRF isprovided on an "AS IS" basis and any warranties, either express orimplied, including but not limited to implied warranties ofnon-infringement, originality, merchantability and fitness for aparticular purpose, are disclaimed. In no event shall UCAR be liablefor any damages, whatsoever, whether direct, indirect, consequential orspecial, that arise out of or in connection with the access, use orperformance of WRF, including infringement actions." (Cette description est issue de la page : http://www.mmm.ucar.edu/wrf/users/public.htm).

Obtenir le code source

Les codes source de WRF peuvent être téléchargés ici.

Pré-requis

Les librairies NetCDF, JASPER, NCARG et HDF5 requises par WRF et WPS sont installées sur ClimServ.

Ce tutoriel est réalisé pour la version 2011 du compilateur  PGI (voir article ici ).

Choisir les compilateurs PGF-GCC comme compilateurs MPI par défaut (voir article ici )

mpi-selector --yes --user --set openmpi-1.4.3-pgfgcc-x86_64
# se déloguer et/ou ouvrir une nouvelle session
mpi-selector --query
default:openmpi-1.4.3-pgfgcc-x86_64
level:user

Les commandes suivantes fonctionnent sous SHELL sh ou bash. Si le SHELL par défaut est csh ou tcsh, se placer sous bash :

bash

Compilation de l'application

On suppose dans la suite que l'application est installée dans le répertoire $HOME/WRF.

TOPDIR=$HOME/WRF
WRFDIR=$TOPDIR/WRFV3
WPSDIR=$TOPDIR/WPS

Copier ou déplacer les fichiers WRFV3.4.1.TAR.gz et WPSV3.4.1.TAR.gz dans le répertoire $TOPDIR, puis décompresser les archives :

cd $TOPDIR
tar -zxvf WRFV3.4.1.TAR.gz
tar -zxvf WPSV3.4.1.TAR.gz

Préparation de l'environnement de compilation de WRF et WPS :

# Pour activer le support des "Large Files" en NetCDF :
export WRFIO_NCD_LARGE_FILE_SUPPORT=1
# Définition des chemins d'acces aux librairies NetCDF, JASPER et HDF5 :
export NETCDF=/opt/netcdf/pgf
export JASPERLIB=/usr/lib64
export JASPERINC=/usr/include/jasper
export PHDF5=/opt/hdf5-1.8.5

Compilation de WRF :

# Compilation avec les compilateurs PGI avec GCC + parallèlisme MPI (dmpar) et OpenMP (smpar) : Option 4
cd $WRFDIR
clean -a
./configure
./compile em_real 2>&1 |tee compile.out

Compilation de WPS :

# Compilation avec les compilateurs PGI + parallèlisme MPI (dmpar) : Option 7
cd $WPSDIR
./configure
# Modification du fichier de configuration pour compatibilité avec NCARG :
#echo "g/-L\/data3a\/mp\/gill\/WPS_LIBS\/local\/lib/s/-L\/data3a\/mp\/gill\/WPS_LIBS\/local\/lib/-L\/usr\/lib64/"$'\nw' | ed -s configure.wps
#echo "g/-I\/data3a\/mp\/gill\/WPS_LIBS\/local\/include/s/-I\/data3a\/mp\/gill\/WPS_LIBS\/local\/include/-I\/usr\/include\/libpng12/"$'\nw' | ed -s configure.wps
#echo "g/-L\$(NCARG_ROOT)\/lib/s/-L\$(NCARG_ROOT)\/lib/-L\/usr\/lib64\/ncarg/"$'\nw' | ed -s configure.wps
echo "g/-lX11/s/-lX11/-lX11 -lgfortran -lpng/"$'\nw' | ed -s configure.wps
echo "g/mpif90 -f90=.*/s/mpif90 -f90=.*/mpif90/"$'\nw' | ed -s configure.wps
echo "g/mpicc -cc=.*/s/mpicc -cc=.*/mpicc/"$'\nw' | ed -s configure.wps
# Compilation
./compile 2>&1 |tee compile.out


Dernière mise à jour : ( 03-02-2014 )
 
< Précédent