Difference between revisions of "Building CESM models on the NSC triolith system"

From SNIC Documentation
Jump to: navigation, search
Line 1: Line 1:
This page describes the building of the CESM1 ([http://www.cesm.ucar.edu/models/cesm1.1/ CESM1.1]) model on NSC's triolith system ([http://www.nsc.liu.se/systems/triolith/ triolith]). Triolith consists of 1200 HP SL230s compute nodes is equipped with two Intel E5-2660 (2.2 GHz Sandybridge) processors with 8 cores each, i.e 16 cores per node. Triolith is equipped with a fast interconnect (Infiniband from Mellanox (FDR IB, 56 Gb/s) in a 2:1 blocking configuration) for high performance for parallel applications.
+
This page describes the building the CESM series of models, including CCSM4 (e.g. [http://www.cesm.ucar.edu/models/ccsm4.0/ CCSM4.0], [http://www.cesm.ucar.edu/models/cesm1.1/ CESM1.1], [http://www.cesm.ucar.edu/models/cesm1.2/ CESM1.2]) on NSC's triolith system ([http://www.nsc.liu.se/systems/triolith/ triolith]). Triolith consists of 1200 HP SL230s compute nodes is equipped with two Intel E5-2660 (2.2 GHz Sandybridge) processors with 8 cores each, i.e 16 cores per node. Triolith is equipped with a fast interconnect (Infiniband from Mellanox (FDR IB, 56 Gb/s) in a 2:1 blocking configuration) for high performance for parallel applications.
  
 
Triolith is a SNIC-funded system, and computing time on Triolith is exclusively allocated to SNIC projects (Large, Medium and Small). See [http://www.snic.vr.se/apply-for-resources] and [http://www.nsc.liu.se/start/apply/] for information on how to apply for a SNIC project. Contact: support@nsc.liu.se.
 
Triolith is a SNIC-funded system, and computing time on Triolith is exclusively allocated to SNIC projects (Large, Medium and Small). See [http://www.snic.vr.se/apply-for-resources] and [http://www.nsc.liu.se/start/apply/] for information on how to apply for a SNIC project. Contact: support@nsc.liu.se.
 +
  
 
;CESM1 unix group on triolith
 
;CESM1 unix group on triolith
  
If you are going to run the CESM1 model on triolith, you should join the 'cesm1' unix group on triolith. This is not absolutely necessary but being a member allows access to shared storage space on <tt>/nobackup/global/proj/cesm1</tt> where pre-downloaded initial data and ancillary files are stored. Email support@nsc.liu.se to request membership to the cesm1 unix group. '''Please note:''' Files that you copy to the shared <tt>/nobackup/global/proj/cesm1</tt> will be charged to your space allocation on triolith.
+
If you are going to run one of the CESM models on triolith, you should join the 'cesm1' unix group on triolith. This is not absolutely necessary but being a member allows access to shared storage space on <tt>/nobackup/global/proj/cesm1</tt> where pre-downloaded initial data and ancillary files are stored. Email support@nsc.liu.se to request membership to the cesm1 unix group. '''Please note:''' Files that you copy to the shared <tt>/nobackup/global/proj/cesm1</tt> will be charged to your space allocation on triolith.
 +
 
 +
 
 +
;The CESM models (incl. CCSM4) - Getting the source code
 +
 
 +
CESM is a free, open source model, but a short [http://www.cesm.ucar.edu/models/cesm1.1/register/register_cesm1.1.cgi registeration] is required before access to the subversion repository is granted. The source code, build and run scripts can be downloaded as described in the CESM1 [http://www.cesm.ucar.edu/models/cesm1.1/cesm/doc/usersguide/book1.html user guide]. To list the available model versions, after CESM registration (on triloith):
 +
 
 +
:<code>svn list https://svn-ccsm-release.cgd.ucar.edu/model_versions</code>
 +
 
 +
The source files should be downloaded into the <tt>/home</tt> file system. This ensures that your code, and configuration files are backed up.
 +
 
  
;CESM1 - Getting the source code
+
;Building and configuring the model
  
CEMS1 is a free, open source model, but a short [http://www.cesm.ucar.edu/models/cesm1.1/register/register_cesm1.1.cgi registeration] is required before access to the subversion repository is granted. The source code, build and run scripts can be downloaded as described in the CESM1 [http://www.cesm.ucar.edu/models/cesm1.1/cesm/doc/usersguide/book1.html user guide]. The files should be downloaded into the <tt>/home</tt> file system. This ensures that your code, and configuration files are backed up. To create a CESM1.1.1 version in <tt>/home/$USER/Projects/cesm1.1.1</tt>:
+
As, an example. to create a CESM1.1.1 version in <tt>/home/$USER/Projects/cesm1.1.1</tt>:
  
 
1. Change to the appropriate folder
 
1. Change to the appropriate folder
Line 15: Line 26:
 
:<code>cd Projects</code>
 
:<code>cd Projects</code>
  
2. List available model versions:
+
2. Checkout version 1.1.1
 
 
:<code>svn list https://svn-ccsm-release.cgd.ucar.edu/model_versions</code>
 
 
 
3. Checkout version 1.1.1
 
  
 
:<code>svn co https://svn-ccsm-release.cgd.ucar.edu/model_versions/cesm1_1_1 cesm1.1.1</code>
 
:<code>svn co https://svn-ccsm-release.cgd.ucar.edu/model_versions/cesm1_1_1 cesm1.1.1</code>
  
4. Files containing triolith specific machine environment variables have been created and are stored in the folder /nobackup/global/proj/cesm1/triolith_config_cesm1.1.1 (triolith_config_cesm1.0.4 config files also available). These files should be copied to the appropriate location in your local distribution. Based on the steps above:
+
3. Files containing triolith specific machine environment variables have been created and are stored in the folder /nobackup/global/proj/cesm1/triolith_config_cesm1.1.1 (triolith_config_ccsm4, triolith_config_cesm1.0.4 and triolith_config_cesm1.2.0 config files also available). These files should be copied to the appropriate location in your local distribution. Based on the steps above:
  
 
:<code>cd /home/$USER/Projects/cesm1.1.1/scripts/ccsm_utils/Machines</code>
 
:<code>cd /home/$USER/Projects/cesm1.1.1/scripts/ccsm_utils/Machines</code>
 
:<code>cp /nobackup/global/proj/cesm1/triolith_config_cesm1.1.1/* .</code>
 
:<code>cp /nobackup/global/proj/cesm1/triolith_config_cesm1.1.1/* .</code>
  
5. CESM1 can now be built in the usual way as described in the CESM1 users guide (see [http://www.cesm.ucar.edu/models/cesm1.1/cesm/doc/usersguide/c588.html Creating and Setting Up A Case]) using 'triolith' for the machine designation. For example, to create a new 'f19_g16' resolution case using the 'B' compset:
+
4. CESM1 can now be built in the usual way as described in the CESM1 users guide (see [http://www.cesm.ucar.edu/models/cesm1.1/cesm/doc/usersguide/c588.html Creating and Setting Up A Case]) using 'triolith' for the machine designation. For example, to create a new 'f19_g16' resolution case using the 'B' compset:
  
 
:<code>cd /home/$USER/Projects/cesm1.1.1/scripts/</code>
 
:<code>cd /home/$USER/Projects/cesm1.1.1/scripts/</code>
:<code>./create_newcase -case ../cases/lbtest-f19_g16-B -res f19_g16 -compset B -mach triolith</code>
+
:<code>./create_newcase -case ../cases/lbtest-f19_g16-B -res f19_g16 -compset B -mach triolith -pecount M</code>
  
6. Configure and build your model:
+
5. Configure and build your model:
  
 
:<code>cd /home/$USER/Projects/cesm1.1.1/cases/lbtest-f19_g16-B</code>
 
:<code>cd /home/$USER/Projects/cesm1.1.1/cases/lbtest-f19_g16-B</code>
Line 39: Line 46:
 
:<code>./lbtest-f19_g16-B.build</code>
 
:<code>./lbtest-f19_g16-B.build</code>
  
7. Edit the env_run.xml file for the particular simulation you wish to make, then submit your job:
+
6. Edit the env_run.xml file for the particular simulation you wish to make, then submit your job:
  
 
:<code>sbatch ./lbtest-f19_g16-B.run</code>
 
:<code>sbatch ./lbtest-f19_g16-B.run</code>
 +
 +
 +
;Model load balancing
 +
 +
Load balancing of the models (laying out pe configurations e.g. [http://www.cesm.ucar.edu/models/cesm1.1/cesm/doc/usersguide/x1565.html load balancing a case]) has been completed for a limited set of model configurations (resolution f19_g16, compset B). Using the 'pecount' keyword when invoking <tt>.create_newcase</tt> (see 4. above) will create a load balanced configuration of the model (res f19_g16, compest B). pecount options are 'S' (small), 'M' (medium) and 'L' (large): see [[EC-Earth and CESM model timings]].

Revision as of 09:38, 17 July 2013

This page describes the building the CESM series of models, including CCSM4 (e.g. CCSM4.0, CESM1.1, CESM1.2) on NSC's triolith system (triolith). Triolith consists of 1200 HP SL230s compute nodes is equipped with two Intel E5-2660 (2.2 GHz Sandybridge) processors with 8 cores each, i.e 16 cores per node. Triolith is equipped with a fast interconnect (Infiniband from Mellanox (FDR IB, 56 Gb/s) in a 2:1 blocking configuration) for high performance for parallel applications.

Triolith is a SNIC-funded system, and computing time on Triolith is exclusively allocated to SNIC projects (Large, Medium and Small). See [1] and [2] for information on how to apply for a SNIC project. Contact: support@nsc.liu.se.


CESM1 unix group on triolith

If you are going to run one of the CESM models on triolith, you should join the 'cesm1' unix group on triolith. This is not absolutely necessary but being a member allows access to shared storage space on /nobackup/global/proj/cesm1 where pre-downloaded initial data and ancillary files are stored. Email support@nsc.liu.se to request membership to the cesm1 unix group. Please note: Files that you copy to the shared /nobackup/global/proj/cesm1 will be charged to your space allocation on triolith.


The CESM models (incl. CCSM4) - Getting the source code

CESM is a free, open source model, but a short registeration is required before access to the subversion repository is granted. The source code, build and run scripts can be downloaded as described in the CESM1 user guide. To list the available model versions, after CESM registration (on triloith):

svn list https://svn-ccsm-release.cgd.ucar.edu/model_versions

The source files should be downloaded into the /home file system. This ensures that your code, and configuration files are backed up.


Building and configuring the model

As, an example. to create a CESM1.1.1 version in /home/$USER/Projects/cesm1.1.1:

1. Change to the appropriate folder

cd Projects

2. Checkout version 1.1.1

svn co https://svn-ccsm-release.cgd.ucar.edu/model_versions/cesm1_1_1 cesm1.1.1

3. Files containing triolith specific machine environment variables have been created and are stored in the folder /nobackup/global/proj/cesm1/triolith_config_cesm1.1.1 (triolith_config_ccsm4, triolith_config_cesm1.0.4 and triolith_config_cesm1.2.0 config files also available). These files should be copied to the appropriate location in your local distribution. Based on the steps above:

cd /home/$USER/Projects/cesm1.1.1/scripts/ccsm_utils/Machines
cp /nobackup/global/proj/cesm1/triolith_config_cesm1.1.1/* .

4. CESM1 can now be built in the usual way as described in the CESM1 users guide (see Creating and Setting Up A Case) using 'triolith' for the machine designation. For example, to create a new 'f19_g16' resolution case using the 'B' compset:

cd /home/$USER/Projects/cesm1.1.1/scripts/
./create_newcase -case ../cases/lbtest-f19_g16-B -res f19_g16 -compset B -mach triolith -pecount M

5. Configure and build your model:

cd /home/$USER/Projects/cesm1.1.1/cases/lbtest-f19_g16-B
./cesm_setup
./lbtest-f19_g16-B.build

6. Edit the env_run.xml file for the particular simulation you wish to make, then submit your job:

sbatch ./lbtest-f19_g16-B.run


Model load balancing

Load balancing of the models (laying out pe configurations e.g. load balancing a case) has been completed for a limited set of model configurations (resolution f19_g16, compset B). Using the 'pecount' keyword when invoking .create_newcase (see 4. above) will create a load balanced configuration of the model (res f19_g16, compest B). pecount options are 'S' (small), 'M' (medium) and 'L' (large): see EC-Earth and CESM model timings.