Changes between Version 7 and Version 8 of Projects/OpenIFS-IO


Ignore:
Timestamp:
23/09/13 17:13:50 (7 years ago)
Author:
grenville
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Projects/OpenIFS-IO

    v7 v8  
    8181}}} 
    8282 
    83 This cumbersome command can be made simpler by use of FCM keywords and of course you can use aliasing to reduce the amount of typing required. However, it is instructive to see the command in its entirety (actually we have already defined the keyword oifs to save some typing). The text after fcm co is the URL for the code which exposes some of the structure of the underlying code repository. In this case the code is in a '''branch''' owned by '''dev'''eloper '''grenville'''; the branch is called '''38r1v02_fdb_updates''' and the code is at ('''@''') revision number '''16'''. This is just standard FCM (svn) terminology. 
     83This cumbersome command can be made simpler by use of FCM keywords and of course you can use aliasing to reduce the amount of typing required. However, it is instructive to see the command in its entirety (actually we have already defined the keyword oifs to save some typing). The text after fcm co is the URL for the code which exposes some of the structure of the underlying code repository. In this case the code is in the '''branches''' section of the repository owned by '''dev'''eloper '''grenville'''; the branch is called '''38r1v02_fdb_updates''' and the code is at ('''@''') revision number '''16'''. This is just standard FCM (svn) terminology. 
    8484 
    8585This is the simplest way to get OIFS code - it will often be the case that you wish to extract from several branches and possibly a working copy - see later. 
     86 
     87=== Build the OIFS executable === 
    8688 
    8789After executing this command on HECToR, you will have a complete copy of the code in your /home space. A set of configuration files is provided in the oifs/make sub-directory for several possible compilers and options. When you loaded the openifs_cce/0.0.2 module, you set several environment variables which determine the particular configuration files to choose. In the make directory type 
     
    9193}}} 
    9294 
    93 which runs the compile and link phases of the build, using 4 processors (-j 4), with verbose output (-vv) based on the configuration file in cfg/oifs.cfg (the -f option) (see the FCM documentation for more options for the fcm make command). 
     95this runs the compile and link phases of the build, using 4 processors (-j 4), with verbose output (-vv) based on the configuration file in cfg/oifs.cfg (the argument of -f option) (see the FCM documentation for more options for the fcm make command). This may take some time. 
     96 
     97The executable, currently called master.exe, will be in make/opt/oifs/bin. 
     98 
     99=== Getting data to run the model === 
     100 
     101The source for data is Glenn Carver at ECMWF. Glenn can provide start data for configurations at several resolutions and for various times. We have several jobs available for model testing at t159, t511 and t1279 resolution. Each job comes with data required to start the model, a namelist with a set of model parameters, a PBS script set up for a "standard" run and an example trace output file. We will give a description of the PBS script used to submit jobs to the computer nodes. 
     102 
     103{{{ 
     104#!/bin/bash --login 
     105# 
     106#       Jobname 
     107#PBS -N openifs 
     108#       Total no. of tasks (MPIxOpenMP) for job 
     109#PBS -l mppwidth=1024 
     110#       No. of tasks per node (1-32) 
     111#PBS -l mppnppn=32 
     112#       Time for the job 
     113#PBS -l walltime=00:25:00 
     114#       Account 
     115#PBS -A n02-cms 
     116#       Squash output & error output together 
     117#PBS -j oe 
     118#       Mail options 
     119#PBS -M g.m.s.lister@reading.ac.uk 
     120#PBS -m ae 
     121 
     122 
     123# Set environment 
     124source $HOME/oifs.setup 
     125 
     126set -x 
     127 
     128# Make sure any symbolic links are resolved to absolute path 
     129export PBS_O_WORKDIR=$(readlink -f $PBS_O_WORKDIR) 
     130 
     131# Chnage to the directory the job was submitted from 
     132cd $PBS_O_WORKDIR 
     133 
     134#  Root directory of OpenIFS 
     135#export OIFS_HOME=$HOME/oifs38r1v01 
     136#  make sure correct branch is active 
     137#export OIFS_HOME=$HOME/git/openifs 
     138export OIFS_HOME=$HOME/oifs_extract/extract/oifs 
     139 
     140#  Set the GRIB_SAMPLES_PATH to your installation 
     141#  set DEFINITION_PATH so grib_api can find boot.def  
     142#  set OIFS_GRIB_API_DIR to point to local installation 
     143export GRIB_SAMPLES_PATH=$GRIB_API_PATH/share/grib_api/ifs_samples/grib1_mlgrib2 
     144export GRIB_DEFINITION_PATH=$GRIB_API_PATH/share/grib_api/definitions 
     145 
     146#  use assign statement to read f77 unformatted files as big-endian 
     147#  as model was not compiled with -h byteswapio 
     148export FILENV=$PBS_O_WORKDIR/.myassign 
     149assign -N swap_endian g:su 
     150 
     151# Run model 
     152EXPID=fw13 
     153NPROC=128 
     154NTHREADS=8 
     155RUN=6 
     156TSTEP=600 
     157MASTER=$OIFS_HOME/make/opt/oifs/bin/master.exe 
     158NAMELIST=ecmwf/$EXPID.namelistfc 
     159 
     160/work/n02/n02/emgdc/oifs/ifs_run.sh -m $MASTER -r 511 -e $EXPID -s $TSTEP -n $NPROC \ 
     161                                    -t $NTHREADS -f d1 -x $RUN -l $NAMELIST 
     162 
     163exit 0 
     164}}} 
    94165 
    95166