-
Notifications
You must be signed in to change notification settings - Fork 2
Building on Frontera
Karl W. Schulz edited this page Sep 4, 2021
·
11 revisions
Assuming you are starting with a default login environment using Intel compilers, this example builds the CPU version of TPS.
$ export MODULEPATH=/work/00161/karl/frontera/sw/modules/:$MODULEPATH
$ ml load hypre metis
$ ml load bats mfem grvy git-lfs
Note: make sure you have git-lfs initialized after loading the module since it is not part of default get setup on Frontera
$ git lfs install
You may also need to git lfs pull
in your repo if you had cloned it prior to setting up git-lfs.
export HYPRE_INC=$TACC_HYPRE_INC
export HYPRE_LIB=$TACC_HYPRE_LIB
$ ml list
Currently Loaded Modules:
1) intel/19.1.1 4) autotools/1.2 7) pmix/3.1.4 10) TACC 13) bats/1.4.1 16) git-lfs/2.13.3
2) impi/19.0.9 5) python3/3.7.0 8) hwloc/1.11.12 11) hypre/2.19 14) grvy/0.35.0
3) git/2.24.1 6) cmake/3.20.3 9) xalt/2.10.27 12) metis/5.1.0 15) mfem/4.2
The valgrind check does not fail as expected with icc, so disabling that:
$ ./configure --disable-valgrind
$ make check
$ make check
Making check in src
make[1]: Entering directory `/home1/00161/karl/repos/tps/src'
make[1]: Nothing to be done for `check'.
make[1]: Leaving directory `/home1/00161/karl/repos/tps/src'
Making check in test
make[1]: Entering directory `/home1/00161/karl/repos/tps/test'
make
make[2]: Entering directory `/home1/00161/karl/repos/tps/test'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home1/00161/karl/repos/tps/test'
make check-TESTS
make[2]: Entering directory `/home1/00161/karl/repos/tps/test'
make[3]: Entering directory `/home1/00161/karl/repos/tps/test'
PASS: cyl3d.test 1 [cyl3d] check for input file input.4iters.cyl
PASS: cyl3d.test 2 [cyl3d] run tps with input -> input.4iters.cyl
PASS: cyl3d.test 3 [cyl3d] verify tps output with input -> input.4iters.cyl
PASS: cyl3d.test 4 [cyl3d] verify git sha in HDF5 file
PASS: cyl3d.test 5 [cyl3d] verify exit code if restart files missing
PASS: cyl3d.test 6 [cyl3d] verify consistent solution with restart from 2 iters
PASS: cyl3d.test 7 [cyl3d] verify tps output after variable p restart
PASS: cyl3d.test 8 [cyl3d] verify serial restart consistency using 2 mpi tasks
PASS: cyl3d.test 9 [cyl3d] verify serial restart consistency using 4 mpi tasks
PASS: cyl3d.test 10 [cyl3d] verify serialized restart switching processors from 2 -> 4 mpi tasks
PASS: cyl3d.test 11 [cyl3d] verify restart from partitioned files to generate a serialized output (2 mpi tasks)
PASS: cyl3d.test 12 [cyl3d] verify two back to back (partitioned) restarts using 2 tasks
PASS: cyl3d.mflow.test 1 [cyl3d.mflow.outlet] check for input file input.2iters.mflow.cyl
PASS: cyl3d.mflow.test 2 [cyl3d.mflow.outlet] verify outlet area calculation with input -> input.2iters.mflow.cyl
PASS: cyl3d.mflow.test 3 [cyl3d.mflow.outlet] verify tps output with input -> input.2iters.mflow.cyl
PASS: cyl3d.mflow.test 4 [cyl3d.mflow.outlet] verify tps output with input -> inputs/input.2iters.mflow.bulkVisc.dtconst.cyl
PASS: cyl3d.dtconst.test 1 [cyl3d] check for input file input.dtconst.cyl
PASS: cyl3d.dtconst.test 2 [cyl3d] run tps with input -> input.dtconst.cyl
PASS: cyl3d.dtconst.test 3 [cyl3d] verify tps output with input -> input.dtconst.cyl
PASS: cyl3d.dtconst.test 4 [cyl3d] verify tps output from 2 mpi tasks with input -> input.dtconst.cyl
PASS: die.test 1 [cyl3d] verify solution terminates early with presence of DIE file
PASS: averages.test 1 [averages] caseA: run serial case
PASS: averages.test 2 [averages] caseB: run parallel case
PASS: averages.test 3 [averages] caseC: restart from a serialized solution
PASS: averages.test 4 [averages] caseD: restart from solution without averaged data
PASS: wedge.test 1 [2d/wedge] check for input file input.2d.wedge
PASS: wedge.test 2 [2d/wedge] run tps with input -> input.2d.wedge
PASS: wedge.test 3 [2d/wedge] verify computed inlet area in output -> wedge.log
PASS: wedge.test 4 [2d/wedge] verify # of inlet faces detected -> wedge.log
PASS: wedge.test 5 [2d/wedge] verify computed inlet outlet in output -> wedge.log
PASS: wedge.test 6 [2d/wedge] verify # of outlet faces detected -> wedge.log
============================================================================
Testsuite summary for tps 1.0
============================================================================
# TOTAL: 31
# PASS: 31
# SKIP: 0
# XFAIL: 0
# FAIL: 0
# XPASS: 0
# ERROR: 0
============================================================================