Difference between revisions of "Transtomo"

From GeoWiki
Jump to navigation Jump to search
Line 13: Line 13:
 
Work is also ongoing to extend the code to invert for azimuthal anisotropy <code>transtomo</code>. This documentation will provide details on this update when it's available. Feel free to contact me for any other questions on how to use
 
Work is also ongoing to extend the code to invert for azimuthal anisotropy <code>transtomo</code>. This documentation will provide details on this update when it's available. Feel free to contact me for any other questions on how to use
 
this code and set it up on the deepthought2 cluster here at the University of Maryland.
 
this code and set it up on the deepthought2 cluster here at the University of Maryland.
 +
 +
= Directory Listing =
 +
Here is a listing of the important directories that need to be set up on the
 +
cluster to organize and set things up.
 +
 +
<source>
 +
1 <Home􀀀directory>
 +
2 /homes/username(olugboji)
 +
3 <Code􀀀data􀀀directory>
 +
4 /lustre/username(olugboji)/transdimsurfacewavetomography/
 +
5 <Code􀀀binary􀀀directory>
 +
6 /home/deepthought2/username(olugboji)/bin/
 +
7 <Run􀀀shell􀀀execute􀀀directory>
 +
8 /homes/username(olugboji)/binShell
 +
9 <Input/Output􀀀Data/Exhaust􀀀directory>
 +
10 /lustre/username(olugboji)/tomoParamFiles/
 +
11 <rjMcMC􀀀library􀀀directory>
 +
12 /home/deepthought2/olugboji
 +
13
 +
14 % Data that need to be backed up from the local store to the ...
 +
cluster directory ..
 +
15
 +
16 <local􀀀prjDir>
 +
17 :/Documents/UMD Seismo/
 +
18 <local􀀀code􀀀store>
 +
19 <local􀀀prjDir>iEarthSoftware/transdimsurfacewavetomography
 +
20 <local􀀀data􀀀store>
 +
21 <local􀀀prjDir>transdimUSANT/All Ta Sta/
 +
22 <local􀀀restrt􀀀models>
 +
23 <local􀀀prjDir>transdimUSANT/All Ta Sta/VorModels/inModels
 +
24
 +
25 %.. Data from cluster exhaust to local directory
 +
26 0.11
 +
27 0.22
 +
</source>
 +
 +
 +
= Login into deepthought2 =
 +
<code> ssh -X username@login.deepthought2.umd.edu </code>
 +
 +
 +
= Updating and compiling source code =
 +
The followng are the sequence of steps necessary to compile the and install the
 +
required libraries and other source code �les:
 +
2
 +
• Update the <code-data-directory> with the latest version of the source
 +
code (available on <local-prjDir> or @ <gitHub directory> (see direc-
 +
tory listing in 2 above)
 +
• Compile and install the RJMCMC library (<code-data-directory>/RJMCMC 1.0.11/)
 +
also see README �le. On the cluster this involves the following steps:
 +
> cd path to <code-data-directory>/RJMCMC 1.0.11/
 +
> module load openmpi
 +
> ./configure --prefix=<rjMcMC-library-directory>
 +
> make
 +
> make install
 +
This is the only way to install the RJMCMC library on the cluster. Attempt-
 +
ing to do a sudo make install will fail since the user does not have root
 +
access on the cluster.
 +
• On successfull install of the RJMCMC library, the user can then go ahead to
 +
compile and install the tomo mpi and tomo code into the <code-binary-directory>.
 +
It is from this directory that the SBATCH shell scripts in <run-shell-execute-directory>
 +
load the binary executables. Here are the steps to do this:
 +
> cd path to <Code-data-directory>/tomo-0.9.16 2
 +
> setenv PKG CONFIG PATH /home/deepthought2/olugboji/lib/pkg-config
 +
> module load openmpi
 +
> ./configure -RJMCMC FLAGS=-I<rjMcMC-library-directory>
 +
-I<$MPI INC> - RJMCMC LIBS=-L<$MPI LIB> -lm -lmpi -lrjmcmc
 +
> make
 +
> cp tomo* <code-binary-directory>
 +
*Note: if the configure command fails, then just run the command with
 +
empty values for the parameter
 +
ags RJMCMC FLAGS and RJMCMC LIBS, and
 +
then go into the makefile and update the relevant
 +
ags with the speci�ed
 +
include and load
 +
ags. Also note that the two MPI environment variables:
 +
$MPI INC and $MPI LIB are only set after the module load mpi command
 +
has been used. These two environment variables are absolutely crucial for
 +
compiling the mpi version of the code i.e. tomo mpi.
 +
 +
= Running tomo mpi with parameter/data �files =
 +
Now that the libraries and executable (binaries) environment is set up, the next stage is setting up the input parameters and the data environment necessary to stage the code on the cluster. There are two directories here: First is the
 +
Input/Output-Data/Exhaust-directory and the second is the
 +
 +
Tolulope Olugboji (oluboji@umd.edu)

Revision as of 19:05, 28 August 2017

Compile and Run Transtomo on Deepthought2 Tolulope Olugboji, olugboji@umd.edu March 31, 2016


Overview

This documentation outlines steps for compiling and running the extended version of transtomo on the deepthought2 cluster at the University of Maryland. This version of transtomo is a personal adaptation and improvement of the freely distributed copy on iEarth geophysics scientific software. This version includes the following improvements:

  • Functionality to load, initialize, and restart chains from models stored in ASCII files
  • Functionality to resample and save full chain history in ASCII files
  • Functionality to lock cells that do not participate in the update of travel time data

Work is also ongoing to extend the code to invert for azimuthal anisotropy transtomo. This documentation will provide details on this update when it's available. Feel free to contact me for any other questions on how to use this code and set it up on the deepthought2 cluster here at the University of Maryland.

Directory Listing

Here is a listing of the important directories that need to be set up on the cluster to organize and set things up.

1 <Home􀀀directory>
2 /homes/username(olugboji)
3 <Code􀀀data􀀀directory>
4 /lustre/username(olugboji)/transdimsurfacewavetomography/
5 <Code􀀀binary􀀀directory>
6 /home/deepthought2/username(olugboji)/bin/
7 <Run􀀀shell􀀀execute􀀀directory>
8 /homes/username(olugboji)/binShell
9 <Input/Output􀀀Data/Exhaust􀀀directory>
10 /lustre/username(olugboji)/tomoParamFiles/
11 <rjMcMC􀀀library􀀀directory>
12 /home/deepthought2/olugboji
13
14 % Data that need to be backed up from the local store to the ...
cluster directory ..
15
16 <local􀀀prjDir>
17 :/Documents/UMD Seismo/
18 <local􀀀code􀀀store>
19 <local􀀀prjDir>iEarthSoftware/transdimsurfacewavetomography
20 <local􀀀data􀀀store>
21 <local􀀀prjDir>transdimUSANT/All Ta Sta/
22 <local􀀀restrt􀀀models>
23 <local􀀀prjDir>transdimUSANT/All Ta Sta/VorModels/inModels
24
25 %.. Data from cluster exhaust to local directory
26 0.11
27 0.22


Login into deepthought2

ssh -X username@login.deepthought2.umd.edu


Updating and compiling source code

The followng are the sequence of steps necessary to compile the and install the required libraries and other source code �les: 2 • Update the <code-data-directory> with the latest version of the source code (available on <local-prjDir> or @ <gitHub directory> (see direc- tory listing in 2 above) • Compile and install the RJMCMC library (<code-data-directory>/RJMCMC 1.0.11/) also see README �le. On the cluster this involves the following steps: > cd path to <code-data-directory>/RJMCMC 1.0.11/ > module load openmpi > ./configure --prefix=<rjMcMC-library-directory> > make > make install This is the only way to install the RJMCMC library on the cluster. Attempt- ing to do a sudo make install will fail since the user does not have root access on the cluster. • On successfull install of the RJMCMC library, the user can then go ahead to compile and install the tomo mpi and tomo code into the <code-binary-directory>. It is from this directory that the SBATCH shell scripts in <run-shell-execute-directory> load the binary executables. Here are the steps to do this: > cd path to <Code-data-directory>/tomo-0.9.16 2 > setenv PKG CONFIG PATH /home/deepthought2/olugboji/lib/pkg-config > module load openmpi > ./configure -RJMCMC FLAGS=-I<rjMcMC-library-directory> -I<$MPI INC> - RJMCMC LIBS=-L<$MPI LIB> -lm -lmpi -lrjmcmc > make > cp tomo* <code-binary-directory>

  • Note: if the configure command fails, then just run the command with

empty values for the parameter ags RJMCMC FLAGS and RJMCMC LIBS, and then go into the makefile and update the relevant ags with the speci�ed include and load ags. Also note that the two MPI environment variables: $MPI INC and $MPI LIB are only set after the module load mpi command has been used. These two environment variables are absolutely crucial for compiling the mpi version of the code i.e. tomo mpi.

Running tomo mpi with parameter/data �files

Now that the libraries and executable (binaries) environment is set up, the next stage is setting up the input parameters and the data environment necessary to stage the code on the cluster. There are two directories here: First is the Input/Output-Data/Exhaust-directory and the second is the

Tolulope Olugboji (oluboji@umd.edu)