Icarus 1.0 Quick Start: Difference between revisions

Copied from Heracles 5.4 Quick Start, revision 3771
 
m Using the NCCS progress CVS code repository: Add some text about common CVS errors
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
This page describes the minimum steps required to build and run GEOS-5 Heracles 5.4 on NCCS discover and NAS pleiades.  '''You should successfully complete the steps in these instructions before doing anything more complicated.  Also, it is helpful to read this page in its entirety before starting.'''   
This page describes the minimum steps required to build and run GEOS-5 Icarus 1.0 on NCCS discover and NAS pleiades.  '''You should successfully complete the steps in these instructions before doing anything more complicated.  Also, it is helpful to read this page in its entirety before starting.'''   


'''Back to [[GEOS-5 Documentation for Heracles 5.4]]'''
'''Back to [[GEOS-5 Documentation for Icarus 1.0]]'''


== How to Obtain GEOS-5 and Compile Source Code ==
== How to Obtain GEOS-5 and Compile Source Code ==
Line 15: Line 15:
     Port 22223
     Port 22223


That's it. Progress is not needed unless you specifically know you need it. It won't hurt to add it, but at present it isn't needed. Also, you'll need to generate RSA and/or DSA keys and upload them (this is mentioned in the quick start page above) to https://progress.nccs.nasa.gov/keyupload/.
That's it. Progress is not needed unless you specifically know you need it. It won't hurt to add it, but at present it isn't needed. Also, you'll need to generate RSA or ED25519 keys and upload them (this is mentioned in the quick start page above) to https://progress.nccs.nasa.gov/keyupload/. (NOTE: DSA keys are not recommended as some sites, e.g., NAS, have started disallowing them.)


The commands below assume that your shell is <code>csh</code>.  Since the scripts to build and run GEOS-5  tend to be written in the same, you shouldn't bother trying to import too much into an alternative shell.  If you prefer a different shell, it is easiest just to open a <code>csh</code> process to build the model and your experiment.
The commands below assume that your shell is <code>csh</code>.  Since the scripts to build and run GEOS-5  tend to be written in the same, you shouldn't bother trying to import too much into an alternative shell.  If you prefer a different shell, it is easiest just to open a <code>csh</code> process to build the model and your experiment.
Line 28: Line 28:
where ''USERID'' is, of course, your repository username, which should be the same as your NASA and NCCS username.  Then, issue the command:
where ''USERID'' is, of course, your repository username, which should be the same as your NASA and NCCS username.  Then, issue the command:


  cvs co -r Heracles-5_4_p3 GEOSagcm
  cvs co -r Icarus-1_0_p1 GEOSagcm


This should check out the latest stable version of the model from the repository and create a directory called <code>GEOSagcm</code>.
This should check out the latest stable version of the model from the repository and create a directory called <code>GEOSagcm</code>.
==== CVS Errors ====
If the CVS checkout doesn't work for you, there are many possibilities. If the error says something about "keyupload", then the key upload either hasn't taken hold yet (can take 5-10 minutes to work after uploading the key), or, perhaps, the wrong key was uploaded.
If you see something like "access denied for this host", then your best bet is to contact NCCS. Per a response from NCCS to a user that had something similar happen, they need to add the CVS hosts to an LDAP entry.


=== Compiling the Model ===
=== Compiling the Model ===
Line 36: Line 42:
First, you need to set <code>ESMADIR</code>. For example, if your <code>src/</code> directory is:
First, you need to set <code>ESMADIR</code>. For example, if your <code>src/</code> directory is:


  /discover/nobackup/mathomp4/Models/Heracles-5_4_p3/GEOSagcm/src
  /discover/nobackup/mathomp4/Models/Icarus-1_0_p1/GEOSagcm/src


then you should set:
then you should set:


  setenv ESMADIR /discover/nobackup/mathomp4/Models/Heracles-5_4_p3/GEOSagcm
  setenv ESMADIR /discover/nobackup/mathomp4/Models/Icarus-1_0_p1/GEOSagcm


Next, <code>cd</code> into <code>GEOSagcm/src</code> and <code>source</code> the file called <code>g5_modules</code>:
Next, <code>cd</code> into <code>GEOSagcm/src</code> and <code>source</code> the file called <code>g5_modules</code>:
Line 54: Line 60:
  Currently Loaded Modulefiles:
  Currently Loaded Modulefiles:
   1) comp/intel-15.0.2.164
   1) comp/intel-15.0.2.164
   2) mpi/impi-5.0.3.048
   2) mpi/sgi-mpt-2.14
   3) lib/mkl-15.0.2.164
   3) lib/mkl-15.0.2.164
   4) other/comp/gcc-4.6.3-sp1
   4) other/comp/gcc-4.6.3-sp1
   5) other/SIVO-PyD/spd_1.20.0_gcc-4.6.3-sp1_mkl-15.0.0.090
   5) other/SIVO-PyD/spd_1.20.0_gcc-4.6.3-sp1_mkl-15.0.0.090


If this all worked, then type:
If this all worked, then type:
Line 65: Line 70:


This will build the model.  It will take about 30 minutes.  If this works, it should create a directory under <code>GEOSagcm</code> called <code>Linux/bin</code>.  In here you should find the executable: <code>GEOSgcm.x</code> .
This will build the model.  It will take about 30 minutes.  If this works, it should create a directory under <code>GEOSagcm</code> called <code>Linux/bin</code>.  In here you should find the executable: <code>GEOSgcm.x</code> .
<span style="color:red">NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE</span>
GEOS-5 has moved to using SGI MPT by default at NCCS. This means the model '''CANNOT be built on Dali'''. You can build the model on any Discover head node or any Haswell compute node.


== Setting up a Run ==
== Setting up a Run ==
=== Passwordless Logins ===


First of all, to run jobs on the cluster you will need to set up passwordless <code>ssh</code> (which operates within the cluster, between the nodes running the job).  To do so, run the following from your '''discover''' home directory:
First of all, to run jobs on the cluster you will need to set up passwordless <code>ssh</code> (which operates within the cluster, between the nodes running the job).  To do so, run the following from your '''discover''' home directory:


  cd .ssh
  cd .ssh
  ssh-keygen -t dsa
  ssh-keygen -t rsa
  cat id_dsa.pub >>  authorized_keys
  cat id_rsa.pub >>  authorized_keys


Similarly, transferring the daily output files (in monthly tarballs) requires passwordless authentication from '''discover''' to '''dirac'''.  While in <code>~/.ssh</code> on '''discover''', run  
Similarly, transferring the daily output files (in monthly tarballs) requires passwordless authentication from '''discover''' to '''dirac'''.  While in <code>~/.ssh</code> on '''discover''', run  


   ssh-keygen -t dsa
   ssh-keygen -t rsa
 
Then, log into  '''dirac''' and cut and paste the contents of the <code>id_rsa.pub</code> file on '''discover''' into the  <code>~/.ssh/authorized_keys</code> file on  '''dirac'''.  Problems with <code>ssh</code> should be referred to NCCS support.
 
==== DSA Keys ====
 
Note: Due to evolution of security, it is recommended to not use DSA keys. NAS currently doesn't not allow them, and RSA and ED25519 keys are considered "better" anyway.


Then, log into  '''dirac''' and cut and paste the contents of the <code>id_rsa.pub</code> and <code>id_dsa.pub</code> files on '''discover''' into the  <code>~/.ssh/authorized_keys</code> file on  '''dirac'''.  Problems with <code>ssh</code> should be referred to NCCS support.
=== Setting up a model run ===


To set the model up to run, cd to <code>GEOSagcm/src/Applications/GEOSgcm_App</code> and run:
To set the model up to run, cd to <code>GEOSagcm/src/Applications/GEOSgcm_App</code> and run:
Line 94: Line 111:
Spaces are ok here.  It will then ask for the source code version tag to associate with the model -- you should hit enter for the default:
Spaces are ok here.  It will then ask for the source code version tag to associate with the model -- you should hit enter for the default:


  Enter an Experiment Source Tag for History (Default: Heracles-5_4_p3):
  Enter an Experiment Source Tag for History (Default: Icarus-1_0_p1):


Hit enter for the default to the next question:
Hit enter for the default to the next question:
Line 212: Line 229:
----
----


'''Back to [[GEOS-5 Documentation for Heracles 5.4]]'''
'''Back to [[GEOS-5 Documentation for Icarus 1.0]]'''


Contact Matthew Thompson at GMAO with questions and comments
Contact Matthew Thompson at GMAO with questions and comments