access_NewSun_GCOM_build - ACCESS-NRI/accessdev-Trac-archive GitHub Wiki
#!html
<h1  style="text-align: center; color: green"> ACCESS GCOM Build Documentation</h1>
#!html
<h2  style="text-align: center; color: blue"> Below is extract from raijin:~access/apps/gcom/GCOM4.4/readme_azs</h2>
[Thu 18/7/2013]
    Set up gcom4.4 library on raijin,
    using path /projects/access/apps/gcom/GCOM4.4
1. From package ExtUM8.4.tgz,  get "Exported_GCOM_vn4.4.tgz".
2. run tar -zxvf Exported_GCOM_vn4.4.tgz 
   GCOM source in Exported_GCOM_vn4.4.tgz unpacks into: 
          ---/Exported_GCOM_vn4.4/GCOM/trunk
3. Update these variables in the script to suit local
   config:
       config_list  BASE_DIR  WORKING_COPY
       GCOM_HOST  GCOM_OUTDIR
    #------------------------------------------------------------------------------
    #  diff extract_script \
    #  ~access/apps/gcom/GCOM4.4/Exported_GCOM_vn4.4//GCOM/trunk/build/ext_scripts/meto_linux.scr
    #------------------------------------------------------------------------------
    # < config_list="linux_ifort_serial linux_ifort_mpich2 "
    # ---
    # > config_list="linux_ifort_serial linux_ifort_mpich2 linux32B_ifort_serial"
    #------------------------------------------------------------------------------
    # < BASE_DIR="/projects/access/apps/gcom/GCOM4.4"
    # ---
    # > BASE_DIR="/data/local/${LOGNAME}"
    #------------------------------------------------------------------------------
    # < WORKING_COPY="Exported_GCOM_vn4.4/GCOM/trunk"
    # ---
    # > WORKING_COPY="GCOM_working_copy"
    #------------------------------------------------------------------------------
    # < export GCOM_HOST=raijin
    # ---
    # > export GCOM_HOST=$HOSTNAME
    #------------------------------------------------------------------------------
    # < export GCOM_OUTDIR=/projects/access/apps/gcom/GCOM4.4/outdir
    # ---
    # > export GCOM_OUTDIR=/var/tmp/gcom_extract
    #------------------------------------------------------------------------------
4. Execute the customised extract script
    $  module use ~access/modules
    $  module load fcm
    $  ./extract_script
5. For now, only build mpp version, using 12.1.8.273
    -- discuss with Ilia regarding compile options,
       decided:   -xavx -O3 -g -fp-model precise -traceback -vec-report2
          do not need openmp for now
       $ cd /projects/access/apps/gcom/GCOM4.4/Extracted_Code/linux_ifort_mpich2/cfg
       $ edit bld.cfg accordingly   (go to the directory and diff the bld.cfg's there
                                     to see changes)
    -- use environment set in ~access/umdir/prg_envs/prg_env_raijin_84
     $ cd /projects/access/apps/gcom/GCOM4.4/Extracted_Code/linux_ifort_mpich2
     $ source /projects/access/umdir/prg_envs/prg_env_raijin_84_12.1.8.273
     $ fcm build
6. Set up /projects/access/apps/gcom/GCOM4.4/bld_mpp_i12.1.8.273_ompi1.6.3/
    .and. /projects/access/apps/gcom/GCOM4.4/bld_mpp_i12.1.8.273_ompi1.6.3-O2/
   For builds with "-O3" and "-O2" respectively.
   Move lib/ and inc/  created after "fcm build" to those locations.
7. [Thu 25/7/2013] Rename directory to .../bld_mpp_12.1.8.273_1.6.3
==================================================================================
#!html
<h2  style="text-align: center; color: blue"> Changes since the initial set-up to meet emerging needs:</h2>
- 
Need to differentiate between ngamai and raijin gcom build:
 - 
Additional sub-directory (raijin/ngamai) have been inserted into the path.
 - 
Currently the following gcom libraries have been built:
- /projects/access/apps/gcom/GCOM4.4/raijin/bld_mpp_12.1.8.273_1.6.5
 - /projects/access/apps/gcom/GCOM4.4/raijin/bld_mpp_12.1.8.273_1.6.3
 - /projects/access/apps/gcom/GCOM4.4/raijin/bld_mpp_12.1.8.273_1.6.3-O2
 
 - 
open_mp version of GCOM is not required currently and have not been built.
 - 
The naming reflect intel compiler version and openMPI version, not compiler options.
 - 
This information should be noted in readme files and also available from bld.cfg files in for example: /projects/access/apps/gcom/GCOM4.4/Extracted_Code/linux_ifort_mpich2/cfg
 - 
On ngamai, there have been need for updated gcom build with new compiler options, keeping to practice of not changing directories already in use, a new name was used.
 - 
Eg: on ngamai, there is
- ~access/apps/gcom/GCOM3.5/ngamai/bld_12.1.8.273_1.6.5_optx/
 - ~access/apps/gcom/GCOM3.5/ngamai/bld_12.1.8.273_1.6.3_new_optns-03/
 
 - 
Obviously names concocted in a hurry... improvement would be welcome, in particular for new GCOM libraries.
 - 
There are a number of other gcom builds in raijin:/projects/access/apps/gcom/
 - 
Some rationalisation will no doubt become desirable at some point
 - 
The naming also do not identify whether it is for raijin or ngamai - which will present difficulty when synchronisation between raijin:~access and ngamai:~access is being addressed.