Difference between revisions of "UCVM Install Stampede3"

From SCECpedia
Jump to navigationJump to search
Line 63: Line 63:
  
 
== MPI Tests ==
 
== MPI Tests ==
 +
* Simple basin_query_mpi Tests
 +
The first two tests required the basin_query_mpi executable, and the cvms5 model. The tests extract some basin depth values from a model.
 +
It then compares the extracted data from expected data that is included in input file
 +
The command used is:
 +
<pre>
  
Two tests on interactive nodes and test two configurations. The tests uses basin_query_mpi to extract some basin depth values from a model. It then compares the extracted data from expected data that is included in input file
+
login1.stampede3(1761)$ basin_query_mpi -h
* Test on 1 node with two tasks on one node
+
Usage: basin_query_mpi [-h] [-b outfile] [-m models<:ifunc>] [-f config] [-d max_depth] [-i inter] [-v vs_thresh] [-l lon,lat] [-s spacing] [-x num lon pts] [-y num lat pts]
* Test on 2 nodes with one task per node for a total of two tasks
+
 
 +
where:
 +
-b Binary output to file.
 +
-h This help message
 +
-f Configuration file. Default is ./ucvm.conf.
 +
-i Interval between query points along z-axis (m, default is 20.0)
 +
-m Comma delimited list of crustal/GTL models to query in order
 +
-v Vs threshold (m/s, default is 1000.0).
 +
-l Bottom-left lat,lon separated by comma.
 +
-s Grid spacing.
 +
-x Number of longitude points.
 +
-y Number of latitude points.
 +
Notes:
 +
- If running interactively, type Cntl-D to end input coord list.
 +
 
 +
Version: 25.7.
 +
 
 +
</pre>
 +
 
 +
<pre>
 +
ibrun ${UCVM_INSTALL_PATH}/bin/basin_query_mpi -b ./${TEST}.simple \
 +
  -f ${UCVM_INSTALL_PATH}/conf/ucvm.conf -m cvms5 -i 20 -v 2500 -l 35.0,-122.5 -s 0.1 -x 16 -y 11
 +
 
 +
These parameters mean:
 +
-b output binary file
 +
-m use model cvms5
 +
-i interval between query points 20m
 +
-v find depth to Vs2500
 +
-l bottom left of region to search
 +
-s grid spacing in degree
 +
-x number of lat points
 +
-y number of lon points
 +
</pre>
 +
* twotasks_onenode.slurm - Test on 1 node with two tasks on one node
 +
* twotasks_twonodes.slurm - Test on 2 nodes with one task per node for a total of two tasks
 +
 
 +
== Simple ucvm2mesh_mpi tests ==

Revision as of 01:59, 9 July 2025

We installed and tested UCVM_25_7 on Stampede3

Modules used on Stampede3

login4.stampede3(1151)$ module list

Currently Loaded Modules:
  1) intel/24.0   2) impi/21.11   3) autotools/1.4   4) cmake/3.31.5   5) xalt/3.1.1   6) python/3.9.18   7) TACC

Define Install Parameters

  1. These are defined only during installation. The will be defined at run-time when the
  2. ucvm_env.sh is run

export UCVM_SRC_PATH=$WORK/ucvm_src/ucvm export UCVM_INSTALL_PATH=$WORK/ucvm_257

Install commands

# Unbuffer python log files so results are visible during build
export PYTHONUNBUFFERED=TRUE
#
#
#Automatically sets up UCVMC and alerts the user to potential complications.
#

Install issue

Runnning test test_ssh_generate
Traceback (most recent call last):
  File "/work2/00329/tg456034/stampede3/ucvm_257/tests/./accept_test.py", line 84, in <module>
    if eval("%s('%s')" % (func, sys.argv[1])) == 0:
  File "<string>", line 1, in <module>
  File "/work2/00329/tg456034/stampede3/ucvm_257/tests/./accept_test.py", line 55, in test_ssh_generate
    generatedfloats.fromfile(f, 100 * 100 * 100)
EOFError: read() didn't return enough bytes
make[1]: *** [Makefile:723: check] Error 1
make[1]: Leaving directory '/scratch/00329/tg456034/ucvm_src/ucvm/test'
make: *** [Makefile:373: check-recursive] Error 1
  1. -s --static Use static linking.
  2. -d --dynamic Use dynamic linking.
  3. -a --all Use all available models.
  4. -r --restart This is a restart of ucvm_setup.py call.
  5. -p --path use supplied installation path.
  6. -h --help usage.
  7. UCVMC 25.7.0

./ucvm_setup.py -a -d -p your-ucvm-install-path >& ucvm_setup_install.log &

Determine if MPI executable were built

After the ucvm_env.sh is run, you can dtermine if mpi executable were built by running an mpi command % basin_query_mpi

GitHub UCVM Info Page

Update the link on github page from this to a replacement: https://www.scec.org/research/ucvm

Unit Test and Accept Test

% make check

MPI Tests

  • Simple basin_query_mpi Tests

The first two tests required the basin_query_mpi executable, and the cvms5 model. The tests extract some basin depth values from a model. It then compares the extracted data from expected data that is included in input file The command used is:


login1.stampede3(1761)$ basin_query_mpi -h
Usage: basin_query_mpi [-h] [-b outfile] [-m models<:ifunc>] [-f config] [-d max_depth] [-i inter] [-v vs_thresh] [-l lon,lat] [-s spacing] [-x num lon pts] [-y num lat pts]

where:
	-b Binary output to file.
	-h This help message
	-f Configuration file. Default is ./ucvm.conf.
	-i Interval between query points along z-axis (m, default is 20.0)
	-m Comma delimited list of crustal/GTL models to query in order
	-v Vs threshold (m/s, default is 1000.0).
	-l Bottom-left lat,lon separated by comma.
	-s Grid spacing.
	-x Number of longitude points.
	-y Number of latitude points.
Notes:
	- If running interactively, type Cntl-D to end input coord list.

Version: 25.7.

ibrun ${UCVM_INSTALL_PATH}/bin/basin_query_mpi -b ./${TEST}.simple \
  -f ${UCVM_INSTALL_PATH}/conf/ucvm.conf -m cvms5 -i 20 -v 2500 -l 35.0,-122.5 -s 0.1 -x 16 -y 11

These parameters mean:
-b output binary file
-m use model cvms5
-i interval between query points 20m
-v find depth to Vs2500
-l bottom left of region to search
-s grid spacing in degree
-x number of lat points
-y number of lon points
  • twotasks_onenode.slurm - Test on 1 node with two tasks on one node
  • twotasks_twonodes.slurm - Test on 2 nodes with one task per node for a total of two tasks

Simple ucvm2mesh_mpi tests