Remote mode installation¶
Remote mode - dependencies¶
The following software is required, and already available at the ECMWF servers:
Python part | Fortran part |
Prepare remote environment¶
ECMWF servers provide all libraries via a module system. Loading the required modules is already built into flex_extract
and no user action is needed.
Remote installation¶
First, log in on one of the ECMWF servers, such as ecgate or cca/ccb. Substitute <ecuid> with your ECMWF user name:
ssh -X <ecuid>@ecaccess.ecmwf.int
This will lead to the following output on the command line, asking for your password:
Authorized access only.
***************************************************************
For further information, read the ECaccess documentation at:
https://software.ecmwf.int/wiki/display/ECAC/ECaccess+Home
You can also use ECaccess to load & download files from your
EChome, ECscratch or ECfs directories using the ECaccess FTP
server:
ftp://uid@ecaccess.ecmwf.int/
Please note you must use your UID and ActivID code to login!
***************************************************************
<ecuid>@<ipname/address>'s password: ***
Select hostname (ecgate, cca, ccb) [ecgate]: ecgate
[<ecuid>@ecgb11 ~]$
Substitute the <localuser> and <localmachine.tld> placeholders with your local user name and the IP name or address of your local machine.
Untar the file and change into the flex_extract
root directory.
scp <localuser>@<localmachine.tld>:</path/to/tarfile/>flex_extract_vX.X.tar.gz $HOME/
cd $HOME
tar xvf flex_extract_vX.X.tar.gz
cd flex_extract_vX.X
Execute the setup.sh
script from the flex_extract
’s root directory.
Before executing it, it is necessary to adapt some parameters from setup.sh
described in Documentation/Input/setup.
Open setup.sh
with your preferred editor (e.g., ``nano’‘) and adapt the values:
Use this for target = ectrans | Use this for target = cca |
...
# -----------------------------------------
# AVAILABLE COMMANDLINE ARGUMENTS TO SET
#
# THE USER HAS TO SPECIFY THESE PARAMETER
#
TARGET='ecgate'
MAKEFILE='Makefile.gfortran'
ECUID='uid'
ECGID='gid'
GATEWAY=None
DESTINATION=None
INSTALLDIR=None
JOB_TEMPLATE='job.template'
CONTROLFILE='CONTROL_EA5'
...
|
...
# -----------------------------------------
# AVAILABLE COMMANDLINE ARGUMENTS TO SET
#
# THE USER HAS TO SPECIFY THESE PARAMETER
#
TARGET='cca'
MAKEFILE='Makefile.CRAY'
ECUID='uid'
ECGID='gid'
GATEWAY=None
DESTINATION=None
INSTALLDIR=''
JOB_TEMPLATE='job.template'
CONTROLFILE='CONTROL_EA5'
...
|
Please substitute the values of ECUID and ECGID with your own ones (look at any of your files with ``ls -l’’ to see uid and gid).
Note
If a local gateway server is available, files can be transferred with ECaccess
commands. In that case, a valid GATEWAY and DESTINATION have to be present in the setup.sh
file (even if not used, the lines must not be deleted).
Afterwards, type:
module load python3
./setup.sh
to start the installation. You should see the following on standard output.
# Output of setup.sh
Create tarball ...
Job compilation script has been submitted to ecgate for installation in ${HOME}/flex_extract_vX.X
You should get an email with subject "flexcompile" within the next few minutes!
Flex_extract
uses the email address connectd to the user account on ECMWF servers. The email content should look like this with a “SUCCESS” statement in the last line:
gfortran -m64 -fdefault-real-8 -fcray-pointer -fno-second-underscore -ffixed-line-length-132 -fopenmp -fconvert=big-endian -c -g -O3 -fopenmp phgrreal.f
gfortran -m64 -fdefault-real-8 -fcray-pointer -fno-second-underscore -ffixed-line-length-132 -fopenmp -fconvert=big-endian -c -g -O3 -fopenmp grphreal.f
gfortran -m64 -fdefault-real-8 -fcray-pointer -fno-second-underscore -ffixed-line-length-132 -fopenmp -fconvert=big-endian -c -g -O3 -fopenmp ftrafo.f
gfortran -m64 -fdefault-real-8 -fcray-pointer -fno-second-underscore -ffixed-line-length-132 -fopenmp -fconvert=big-endian -c -O3 -I. -I/usr/local/apps/eccodes/2.12.0/GNU/6.3.0/include -g rwGRIB2.f90
gfortran -m64 -fdefault-real-8 -fcray-pointer -fno-second-underscore -ffixed-line-length-132 -fopenmp -fconvert=big-endian -c -O3 -I. -I/usr/local/apps/eccodes/2.12.0/GNU/6.3.0/include -g posnam.f
gfortran -m64 -fdefault-real-8 -fcray-pointer -fno-second-underscore -ffixed-line-length-132 -fopenmp -fconvert=big-endian -c -O3 -I. -I/usr/local/apps/eccodes/2.12.0/GNU/6.3.0/include -g preconvert.f90
gfortran -m64 -fdefault-real-8 -fcray-pointer -fno-second-underscore -ffixed-line-length-132 -fopenmp -fconvert=big-endian -g -O3 -o ./CONVERT2 ftrafo.o phgrreal.o grphreal.o rwGRIB2.o posnam.o preconvert.o -L/usr/local/apps/eccodes/2.12.0/GNU/6.3.0/lib -Wl,-rpath,/usr/local/apps/eccodes/2.12.0/GNU/6.3.0/lib -leccodes_f90 -leccodes -ljasper -lpthread -L/usr/local/apps/jasper/1.900.1/LP64/lib -ljasper -lm -L/usr/local/apps/libemos/000455/GNU/6.3.0/lib -Wl,-rpath,/usr/local/apps/libemos/000455/GNU/6.3.0/lib -lemos.R64.D64.I32 -L/usr/local/apps/fftw/3.3.4/GNU/6.3.0/lib -Wl,-rpath,/usr/local/apps/fftw/3.3.4/GNU/6.3.0/lib -lfftw3
-rwxr-x---. 1 USER at 353134 May 23 12:27 CONVERT2
SUCCESS!