{{{ #!html

Porting on RedHat8

}}} [[NoteBox(note, After maintenance of April 11 and 12 all the Irene machines of the TGCC will change OS (it will go from redhat7 to redhat8), 600px)]] [[PageOutline(1-2,Table of contents)]] = How to install your environment on redhat8 (skl and rome) = We suggest the user to use the igcmg environment (in bash) with a copy of the bashrc in his HOME. {{{ #!sh ryyy999@irene: cp ~igcmg/MachineEnvironment/irene_next/bashrc ~/.bashrc ryyy999@irene: cp ~igcmg/MachineEnvironment/irene_next/bashrc_irene_next ~/.bashrc_irene_next }}} Additionally, you can complete the example of bashrc_irene_next file to create your favorite environment (alias, module load ...). ''We strongly advice you to add the line `module switch dfldatadir dfldatadir/genXXXX` in your own .bashrc_irene_next.'' WARNING : if you have a ~/.profile file, it's better to remove it to avoid any problem during the execution of a simulation with libIGCM In this environment is specified: * the path to the compiler tool `fcm` and to the `rebuild` tool which recombines output files from a parallel model: {{{ export PATH=$(ccc_home -u igcmg)/Tools/fcm/bin:$(ccc_home -u igcmg)/Tools/irene/bin:$PATH }}} * the load of modules giving access to analyze data or post processing libraries and tools needed on our platform (done in `ccc_home -u igcmg`/!MachineEnvironment/irene_next/env_atlas_irene). [[Image(warning.png, 50px)]] WARNING : You cannot load in the same time the intel environment for compilation and models computation, AND ferret software. There are not compatible. It's why by default we propose an environment for post processing. The computation environment will be load by modipsl and libIGCM during the compilation and the running time. = Modifications need to be done in models = == LMDZ == modify %BASE_LD in LMDZ/arch/arch-X64_IRENE.fcm {{{ %BASE_LD -i4 -r8 -auto -L/ccc/products/mkl-20.0.0/system/default/20.0.0/mkl/lib/intel64 -lmkl_intel_lp64 -lmkl_core -lmkl_sequential -lpthread }}} == ORCHIDEE == If you are working with a version older than rev 7792, you need to apply modifications describe [https://forge.ipsl.jussieu.fr/orchidee/changeset/7792/ here] == INCA == If you are working with a version older than rev 1050, you need to modify lunout parameter to use standard output file. For this in INCA/src/INCA_MOD/print_inca.F90 remove lines from {{{ namefile='inca.out' (...) stop 'print_inca' endif }}} and add line : {{{ lunout = 6 }}} = Modifications for V6.2 configurations = * modifier ARCH/arch-X64_IRENE.env {{{ # Compile and running environnemnet at Irene Skylake module purge module load intel/20.0.0 module load mpi/openmpi/4.1.4 module load flavor/hdf5/parallel module load hdf5/1.12.0 module load netcdf-fortran/4.5.3 module load mkl/20.0.0 module load feature/bridge/heterogenous_mpmd module load c++/gnu/8.3.0 module load c/gnu/8.3.0 }}} * pour les pack et les TS modifier libIGCM_sys_irene.ksh ou libIGCM_sys_irene-amd.ksh pour sourcer le nouvel env_atlas_irene. On ne source plus env_irene à ce moment là car non utile. {{{ if [ X${TaskType} = Xcomputing ] ; then IGCM_debug_Print 1 "Modules will be loaded later in IGCM_sys_activ_variables." else module purge > /dev/null 2>&1 . $( ccc_home -u igcmg)/MachineEnvironment/irene_next/env_atlas_irene > /dev/null 2>&1 export PCMDI_MP=/ccc/work/cont003/igcmg/igcmg/PCMDI-MP export UVCDAT_ANONYMOUS_LOG=FALSE fi }}} La chaîne tourne fait les pack, les TS et les SE (moyennant que l'on ne tombe pas sur ce [https://forge.ipsl.jussieu.fr/igcmg/wiki/Plateforme/dev_config#a22f%C3%A9vrier2023-r%C3%A9solu bug] et les monitorings = Modification for v6.1 configurations and older ones = * modifier les modèles INCA, LMDZ et ORCHIDEE comme indiqué dans le point [https://forge.ipsl.jussieu.fr/igcmg/wiki/Plateforme/dev_config#CONFIGV6.2 CONFIG V6.2] * si XIOS est une version de la branche XIOS/branchs/xios-2.5 il faut modifier %BASE_CFLAGS dans XIOS/arch/arch-X64_IRENE.fcm {{{ %BASE_CFLAGS -std=gnu++98 -diag-disable 1125 -diag-disable 279 -D__XIOS_EXCEPTION }}} * créer un répertoire config/.../ARCH/ contenant le arch-X64_IRENE.env détaillé dans le point [https://forge.ipsl.jussieu.fr/igcmg/wiki/Plateforme/dev_config#CONFIGV6.2 CONFIG V6.2]. Modifier AA_make pour sourcer automatiquement ce fichier et pointer l'env à XIOS {{{ submitdir=$(shell pwd) arch_path=${submitdir}/ARCH/ all : if [ -s ./.resol ] ; then $(M_K) `head -1 .resol |cut -c 8-` ; else $(M_K) LMD144142-L79 ; fi (...) xios : (cd ../../modeles/XIOS ; ./make_xios --prod --arch ${FCM_ARCH} --arch_path ${arch_path} --job 4 ; cp bin/xios_server.exe ../../bin/. ; ) libioipsl : ../../modeles/IOIPSL/src (. ${arch_path}/arch-X64_IRENE.env; cd ../../modeles/IOIPSL/src ; $(M_K) -f Makefile) }}} * recréer le Makefile * faire un gmake clean * compiler * pour l'exécution il y aura un soucis avec libIGCM qui ne voudra pas lancer un exécutable réaliser avec une version V20 du compilateur. Pour palier cela : * récupérer une version récente de libIGCM * modifier libIGCM_sys comme indiqué dans le point [https://forge.ipsl.jussieu.fr/igcmg/wiki/Plateforme/dev_config#CONFIGV6.2 CONFIG V6.2] (si rev inf la rev [http://forge.ipsl.jussieu.fr/libigcm/changeset/1579/trunk 1579]) * ajouter le paramètre !EnvFile dans config.card {{{ EnvFile=${SUBMIT_DIR}/../ARCH/arch.env }}} * si la simulation a besoin de l'outil rebuild : on peut utiliser l'exécutable `ccc_home -u igcmg`/igcmg/igcmg/Tools/irene_next/rebuild/modipsl/bin (à indiquer dans le fichier .bashrc du compte)