Compare commits

...

85 Commits

Author SHA1 Message Date
Larry Knox
52bb4a556f Run test without submitting to CDash. 2020-11-29 07:48:54 -06:00
Larry Knox
49b99cf1b0 Merge branch 'develop' into zzz-gitlab-ci 2020-11-29 07:46:34 -06:00
Larry Knox
9572872ad7 Remove temporary debugging code added to config/cmake/scripts/CTestScript.cmake. 2020-10-14 09:52:27 -05:00
Larry Knox
a492509e7d Merge branch 'develop' of https://github.com/HDFGroup/hdf5 into zzz-gitlab-ci 2020-10-12 09:45:10 -05:00
Larry Knox
e973d1adaa Merge branch 'develop' into zzz-gitlab-ci 2020-08-31 22:09:36 -05:00
Larry Knox
45409efec1 Revert "enable tools so utils/mirror_vfd doesn't fail."
This reverts commit a968cfb1d4.
2020-08-31 22:09:18 -05:00
Larry Knox
a968cfb1d4 enable tools so utils/mirror_vfd doesn't fail. 2020-07-10 19:17:21 -05:00
Larry Knox
7f4b11c1f6 jsrun command removed: not allowed outside job allocation. 2020-07-10 19:00:02 -05:00
Larry Knox
d0fe2773f4 Ascent has jsrun. 2020-07-10 18:56:52 -05:00
Larry Knox
4918c5ab45 No module named mpi;spectrum-mpi module is already loaded. 2020-07-10 18:38:53 -05:00
Larry Knox
1ca5a11d74 Address syntax errors. 2020-07-10 18:31:55 -05:00
Larry Knox
d5a991c4f7 Merge pull request #2687 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:zzz-gitlab-ci to zzz-gitlab-ci
* commit 'c8e6ba40161711ee630d0c5ae07797796564adca': (185 commits)
  Begin new effort on Ascent.
  Add missing '"'.
  Lib files needed are now copied to a subdirectory in the java/test directory, and on Macs the loader path for libhdf5.xxxs.so is changed in the temporary copy of libhdf5_java.dylib. Fix for HDFFV-11063
  Remove non-existent example
  Changed wording in comment.
  - added comment to explain a kluge - added the associated entry to release notes
  Fix typo in HDftell macro definition: 'ftello -> ftell'
  Add new source files to CMake build
  Clean up warnings
  Copy lib files for junit.sh to temporary subdirectory of <build directory>/java/test instead of to the prefix/lib directory.  Fix for HDFFV-11063.
  va_arg -> HDva_arg
  Refactor code to remove remaining checks for H5_HAVE_GETTIMEOFDAY scattered around in various places.  Also clean up iopipe.c.
  * Fix intermittent error with Splitter VFD.     Mismatch in time of test file creation was creating false negatives.
  Added note for HDFFV-10591.
  Fix HDFFV-10591
  Reduce overhead for H5open, which is involved in the public symbols like H5T_NATIVE_INT, etc.
  Remove unnecessary version conditions for Clang compilers.
  Fix for HDFFV-10961: Couple changes to the tests' usage output files for h5clear.
  Fix for HDFFV-10961: add description to usage for --increment option.
  Add c++ to --enable-sanitize-checks option.
  ...
2020-07-10 17:14:45 -05:00
Larry Knox
c8e6ba4016 Begin new effort on Ascent. 2020-07-10 17:10:08 -05:00
Larry Knox
e3a0e5849f Add missing '"'. 2020-07-02 18:16:43 -05:00
Larry Knox
1d5f4a8630 Merge branch 'develop' into zzz-gitlab-ci 2020-07-02 14:18:13 -05:00
Larry Knox
3a323279f1 Update zzz-gitlab-ci from develop 2020-03-17 14:17:42 -05:00
Larry Knox
87a98f65f7 Split list of tests to skip. 2020-01-30 14:55:06 -06:00
Larry Knox
286a4766a6 Extend test timeout to 1800 seconds. 2020-01-30 13:30:55 -06:00
Larry Knox
5e0024fbad Another test to skip. 2020-01-30 11:49:44 -06:00
Larry Knox
a1091024ee Skip 2 more tests that timed out. 2020-01-30 10:58:45 -06:00
Larry Knox
5b21f807d7 Skip 5 tests that time out on NMC-p109. 2020-01-30 09:57:58 -06:00
Larry Knox
225568065f Remove extra ' ' in .gitlab-ci.yml. 2020-01-28 12:15:07 -06:00
Larry Knox
6845746eea Tweak commands in .gitlab-ci.yml script to check disk drive types. 2020-01-28 11:58:39 -06:00
Larry Knox
dad01fda4e Merge branch 'develop' into zzz-gitlab-ci 2020-01-28 11:53:48 -06:00
Larry Knox
d9ee454e1d Remove ' '. 2019-12-15 15:55:16 -06:00
Larry Knox
96d38e9ab5 Missed 'r'. 2019-12-15 13:22:18 -06:00
Larry Knox
0d15d18a0e check contents of /run/user 2019-12-15 13:17:07 -06:00
Larry Knox
9b984b7ceb Try this and check for contents of /run. 2019-12-15 08:10:47 -06:00
Larry Knox
bfb15fec24 Enable parallel in .gitlab-ci.yml with MPI=true in ctest command.
nnsa.sh is not currently used.
2019-12-14 23:22:45 -06:00
Larry Knox
dcaec1221e Correct ctest command in nnsa.sh. 2019-12-13 16:15:45 -06:00
Larry Knox
a0a7462ef8 Enable parallel. 2019-12-12 18:19:01 -06:00
Larry Knox
e9cfb0eb86 Change extra NMC_FE1_SLURM_PARAMETERS: definition at bottom to match top
(so timeout is 6 hours, but also to match other parameters).
2019-12-12 10:44:48 -06:00
Larry Knox
683d501a46 Set timeout to 6 hrs. 2019-12-12 08:46:34 -06:00
Larry Knox
9e26c7f393 Merge branch 'develop' into zzz-gitlab-ci 2019-12-12 08:43:19 -06:00
Larry Knox
14f19c5d12 Reset NMC_FE1_SLURM_PARAMETERS and remove MPI=true to disable parallel. 2019-12-04 12:40:28 -06:00
Larry Knox
ac5c8f41f5 Remove --cpus-per-task from NMC_FE1_SLURM_PARAMETERS. 2019-12-02 12:56:15 -06:00
Larry Knox
75c87de3ad Add --ntasks-per-node to NMC_FE1_SLURM_PARAMETERS. 2019-11-20 08:14:44 -06:00
Larry Knox
78ae82617a Back to trying just one node. 2019-11-18 16:01:15 -06:00
Larry Knox
15bd655182 Need to cd into build directory to run tests. 2019-11-18 15:07:34 -06:00
Larry Knox
85a055a0af Add symbolic link creation for hdf5 directory with version number to .gitlab-ci.yml. 2019-11-18 14:32:27 -06:00
Larry Knox
2dd16144b4 Run 1 ctest process to build HDF5 without tools or examples and skip
running tests, then run only parallel tests to see if they will run with
6 processes.
2019-11-18 14:20:33 -06:00
Larry Knox
8ad160fc64 LD_LIBRARY_PATH for libintl is still needed. 2019-11-18 12:45:22 -06:00
Larry Knox
a8390b8605 Correct indentation. 2019-11-18 12:12:40 -06:00
Larry Knox
1dc9ff21a3 Set MAX_PROC_COUNT to 1 to see if "parallel make" is breaking parallel
tests.
2019-11-18 11:32:49 -06:00
Larry Knox
4e2eb785c6 Try --nodes=6, similar to setting for parallel tests on ray (power8). 2019-11-18 10:15:43 -06:00
Larry Knox
f3df73b9fc Add disappeared spaces. 2019-11-17 17:57:53 -06:00
Larry Knox
c8dd73d7b1 Still not getting 6 slots: try --host node0:6 2019-11-17 17:52:51 -06:00
Larry Knox
ff32933803 Correct indentation. 2019-11-17 13:53:58 -06:00
Larry Knox
58e8ba794a Try listing nod0 6 times. 2019-11-16 23:11:58 -06:00
Larry Knox
c388c6018e Correct --host syntax. 2019-11-16 13:55:07 -06:00
Larry Knox
399b8c0e67 Attempt to get 6 slots. 2019-11-16 13:48:09 -06:00
Larry Knox
a3dfff380f Revert to use module gcc/8.3.0. 2019-11-15 16:11:37 -06:00
Larry Knox
176299df9b Try ml in .gitlab-ci.yml. 2019-11-15 10:02:00 -06:00
Larry Knox
cee8bb931d Revert to origininal module commands; keep the LD_LIBRARY_PATH for libintl. 2019-11-15 09:44:58 -06:00
Larry Knox
bc3babd0c8 See if --ntasks=6 is causing module problems. 2019-11-15 08:17:24 -06:00
Larry Knox
be7ba1eea8 Testing modules, which seem to have issues. 2019-11-14 13:33:07 -06:00
Larry Knox
c73baf3c14 Add LD_LIBRARY_PATH or libintl.so.8 - temporary workaround. 2019-11-14 13:21:12 -06:00
Larry Knox
96061c7d34 Try openmpi 3.1.4 again; list available mpi and gcc modules. 2019-11-14 12:48:12 -06:00
Larry Knox
805520bf16 Try with default compiler (don't load gcc module). 2019-11-14 12:38:43 -06:00
Larry Knox
04e98cbbe1 Try testing with openmpi/2.1.6. 2019-11-14 11:29:41 -06:00
Larry Knox
32474ad23d Merge branch 'develop' into zzz-gitlab-ci 2019-11-13 13:13:03 -06:00
Larry Knox
fb4212aafb Reduce output to log with -V instead of -VV in ctest command.
Try to run parallel tests with 6 processes.
2019-11-13 13:10:00 -06:00
Larry Knox
577bd1b2c6 Don't use HPC on GitLab; it is running its own batch job. 2019-11-12 16:50:23 -06:00
Larry Knox
5b6d0fff14 Merge branch 'develop' into zzz-gitlab-ci 2019-11-12 14:06:17 -06:00
Larry Knox
16bca3dcc0 Merge pull request #2026 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:zzz-gitlab-ci to zzz-gitlab-ci
* commit 'cd1abbe832aac9b044797eac9d07e9d69df7b480':
  Add missing () to else in CTestScript.cmake.
2019-10-25 10:33:02 -05:00
Larry Knox
cd1abbe832 Merge branch 'zzz-gitlab-ci' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into zzz-gitlab-ci 2019-10-25 10:02:30 -05:00
Larry Knox
e141935a22 Add missing () to else in CTestScript.cmake. 2019-10-25 10:01:20 -05:00
Larry Knox
34718d8acd Merge pull request #2025 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:zzz-gitlab-ci to zzz-gitlab-ci
* commit 'd025ed586c087a4049d85fa406ca7de725586c48':
  Investigating batch job mystery.
2019-10-25 00:17:12 -05:00
Larry Knox
d025ed586c Merge branch 'zzz-gitlab-ci' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into zzz-gitlab-ci 2019-10-25 00:15:42 -05:00
Larry Knox
55a0494188 Investigating batch job mystery. 2019-10-25 00:14:21 -05:00
Larry Knox
7c0d8f9576 Merge pull request #2024 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:zzz-gitlab-ci to zzz-gitlab-ci
* commit '2a1bd900b1158caa5cf642b541bf98aabe9b4a42':
  Try running only H5TEST_links to see if that runs, and cat the LastTest*.log* file if it appears.
2019-10-24 17:03:28 -05:00
Larry Knox
2a1bd900b1 Merge branch 'zzz-gitlab-ci' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into zzz-gitlab-ci 2019-10-24 17:00:38 -05:00
Larry Knox
68d25865b1 Try running only H5TEST_links to see if that runs, and cat the
LastTest*.log* file if it appears.
2019-10-24 16:59:15 -05:00
Larry Knox
61eff0c88a Merge pull request #2023 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:zzz-gitlab-ci to zzz-gitlab-ci
* commit 'ae57c85ef83f7835c27cbc86aa6b46d06f3fd11e':
  New command to replace strings skipping some tests.
2019-10-24 14:06:02 -05:00
Larry Knox
ae57c85ef8 Merge branch 'zzz-gitlab-ci' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into zzz-gitlab-ci 2019-10-24 14:04:32 -05:00
Larry Knox
5baf72357a New command to replace strings skipping some tests. 2019-10-24 14:03:26 -05:00
Larry Knox
8950e088de Merge pull request #2022 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:zzz-gitlab-ci to zzz-gitlab-ci
* commit '1e251a71d6a37b12ebf186e93ea50c379df28e24':
  Add missing \".
2019-10-23 17:03:04 -05:00
Larry Knox
1e251a71d6 Merge branch 'zzz-gitlab-ci' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into zzz-gitlab-ci 2019-10-23 17:01:27 -05:00
Larry Knox
b4e6d559cf Add missing \". 2019-10-23 17:00:42 -05:00
Larry Knox
f606af790b Merge pull request #2021 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:zzz2-gitlab-ci to zzz-gitlab-ci
* commit '94a42baa891b0cdbffa32e9258b9fa85148d4e7e': (32 commits)
  Skip longest tests (vds, objcopy, btree2, fheap, links, cache) to see if GitLab will finish Serial Test batch job.
  Fix encode and decode of tokens in H5VLnative
  Fix various Java issues when deprecated symbols are disabled
  Unify code between H5Lcopy and H5Lmove
  Fix func enter macro in H5T_ref_reclaim()
  Improvements in response to  Allen's suggestions.
  Corrections and improvements to testh5dump.sh.in changes.
  Fix errors in testh5dump.sh tests that grep for reference error messages.
  Update RELEASE.txt for reference changes
  Fix reference type comparison in h5dump
  Make wrappers, tests and tools use H5Treclaim() instead of H5Dvlen_reclaim()
  Add new H5R API that abstracts object, region and attribute reference types
  Remove ability to loc by ref from H5VL layer
  Add support for retrieving object name by token
  Add H5VL_OBJECT_GET_TYPE to get object type
  Add H5VL_MAX_TOKEN_SIZE and H5VL_token_t
  Adapt Jerome's "file info" H5VL 'get' query to retrieve container token info.
  Fix H5VL_blob_get to return size of blob
  Add 'blob' callbacks to VOL, along with a native implementation to store them in the global heap, and changed the VL datatype conversion code to use blobs.
  Remove debugging logic from the new t_bigio test
  ...
2019-10-23 16:50:25 -05:00
Larry Knox
94a42baa89 Skip longest tests (vds, objcopy, btree2, fheap, links, cache) to see if GitLab will finish Serial Test batch job. 2019-10-23 15:28:08 -05:00
Larry Knox
0d859a3a9c Merge branch 'develop' into zzz-gitlab-ci 2019-10-23 14:55:56 -05:00
Larry Knox
9cbdb2d253 Missing HPC=sbatch for p90. 2019-10-03 12:48:41 -05:00
Larry Knox
a79f969a7d Add missing 's. 2019-10-03 12:14:10 -05:00
Larry Knox
08d1382de0 Add files for GitLab at NMC with OSTI. 2019-10-03 12:04:19 -05:00
2 changed files with 425 additions and 0 deletions

79
.gitlab-ci.yml Normal file
View File

@@ -0,0 +1,79 @@
variables:
SCHEDULER_PARAMETERS: "-P CSC419 -nnodes 1 -W 30"
GIT_STRATEGY: clone
stages:
# The 'build-nobatch-standard' stage uses the default build space (/root/* on the login node - not accessible on compute nodes)
- build-nobatch-standard
# The 'test' stage copies the binary created from "build-nobatch-standard" to /ccsopen/home/<uid>.
# Otherwise the binary is not found on compute nodes during a batch run.
- test
#### Standard Build and Test Stages ####
build-nobatch-standard:
stage: build-nobatch-standard
before_script:
- module avail mpi
- module avail cmake
- module load cmake
- echo "-- modules used for this GitLab run are"
- module list
- echo "------------------------------------------------"
script:
- echo "This is the building with nobatch"
- ls
- echo "this is a test"
- whoami
- echo "HOSTNAME=$HOSTNAME"
- echo "Check type of available disk drives\n"
- df -T
- export CC=mpicc
- export FC=mpif90
- export CXX=mpicxx
- uname -a
- CI_PROJ_DIR=${PWD}
- echo "CI_PROJ_DIR="${CI_PROJ_DIR}
# running 1 ctest process to build HDF5 without tools or examples and skip running tests.
- HDF5_VER=`bin/h5vers`
- ln -s . hdf5-$HDF5_VER
- ln -s config/cmake/scripts/CTestScript.cmake .
- ln -s config/cmake/scripts/HDF5config.cmake .
- ln -s config/cmake/scripts/HDF5options.cmake .
- echo 'set (LOCAL_SKIP_TEST "TRUE")' >> config/cmake/scripts/HDF5options.cmake
- echo 'set (MAX_PROC_COUNT 8)' >> config/cmake/scripts/HDF5options.cmake
- echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_BUILD_TOOLS:BOOL=OFF")' >> config/cmake/scripts/HDF5options.cmake
- echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_BUILD_EXAMPLES:BOOL=OFF")' >> config/cmake/scripts/HDF5options.cmake
- echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DMPIEXEC_NUMPROC_FLAG:STRING=-n")' >> config/cmake/scripts/HDF5options.cmake
- echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DMPIEXEC_MAX_NUMPROCS:STRING=6")' >> config/cmake/scripts/HDF5options.cmake
- SKIP_TESTS="-E '"
- SKIP_TESTS=$SKIP_TESTS"H5TEST-btree2"
- SKIP_TESTS=$SKIP_TESTS"|H5TEST-cache"
- SKIP_TESTS=$SKIP_TESTS"|H5TEST-fheap"
- SKIP_TESTS=$SKIP_TESTS"|H5TEST-objcopy"
- SKIP_TESTS=$SKIP_TESTS"'"
- SKIP_TESTS2="-E '"
- SKIP_TESTS2=$SKIP_TESTS2"H5TEST-earray"
- SKIP_TESTS2=$SKIP_TESTS2"|H5TEST-set_extent"
- SKIP_TESTS2=$SKIP_TESTS2"|H5TEST-testhdf5-base"
- SKIP_TESTS2=$SKIP_TESTS2"'"
- ctest -S HDF5config.cmake,SITE_BUILDNAME_SUFFIX="1.13.0-ascent",BUILD_GENERATOR=Unix,LOCAL_SUBMIT=false ${SKIP_TESTS} ${SKIP_TESTS2} -C Release -VV --timeout 1800
# look at the dirs to see how the build worked
- echo $PWD
# - cd ..
# - echo $PWD
artifacts:
paths:
# - zlib-1.2.11/
# - hdf5-1.10.5/
tags:
- nobatch

346
.gitlab/nnsa.sh Normal file
View File

@@ -0,0 +1,346 @@
#!/bin/bash -l
IN_DIR=`pwd`
#Defaults
HDF5_VER=""
KNL="false"
HDF5_BRANCH=""
SKIP_TESTS=""
# READ COMMAND LINE FOR THE TEST TO RUN
CTEST_OPTS=""
POSITIONAL=()
while [[ $# -gt 0 ]]
do
key="$1"
case $key in
-v|--version)
HDF5_VER="$2"
shift # past argument
shift # past value
BRANCH_VERSTR=`echo $HDF5_VER | sed -e s/\\\./_/g`
HDF5_BRANCH=hdf5_$BRANCH_VERSTR
;;
-a|--account)
CTEST_OPTS="LOCAL_BATCH_SCRIPT_ARGS=$2,$CTEST_OPTS"
shift # past argument
shift # past value
;;
-knl)
CTEST_OPTS="KNL=true,$CTEST_OPTS"
shift # past argument
;;
-h|--help)
echo "USAGE: nnsa.sh [-v,--version x.x.x] [-knl] [-h,--help]
where:
-v,--version x.x.x hdf5 version to test
[default is develop; do not specify version]
-knl compile for KNL [default: no]
-a,--acount id batch job account
-h,--help show this help text"
exit 0
;;
*) # unknown option
POSITIONAL+=("$1") # save it in an array for later
shift # past argument
;;
esac
done
set -- "${POSITIONAL[@]}" # restore positional parameters
# Get the host name
UNAME="unknown"
if [ -x /usr/bin/uname ]
then
UNAME=`/usr/bin/uname -n`
PROC=`/usr/bin/uname -p`
OSTYPE=`/usr/bin/uname -s`
fi
if [ -x /usr/local/bin/uname ]
then
UNAME=`/usr/local/bin/uname -n`
PROC=`/usr/local/bin/uname -p`
OSTYPE=`/usr/local/bin/uname -s`
fi
if [ -x /bin/uname ]
then
UNAME=`/bin/uname -n`
PROC=`/bin/uname -p`
OSTYPE=`/bin/uname -s`
fi
# Remove the domain name if present
UNAME=`echo $UNAME | sed 's;\..*;;'`
#mkdir -p CI; cd CI
#rm -rf hdf5-* HDF5-* build hdf5.log* Failed* slurm-*.out
#sleep 1
#if [[ $HDF5_BRANCH == "" ]]; then
# git clone https://git@bitbucket.hdfgroup.org/scm/hdffv/hdf5.git hdf5
#else
# git clone https://git@bitbucket.hdfgroup.org/scm/hdffv/hdf5.git -b $HDF5_BRANCH hdf5
#fi
#cd hdf5
#HDF5_VER=`bin/h5vers`
#cd ..
#mv hdf5 hdf5-$HDF5_VER
HDF5_VER=`bin/h5vers`
ln -s . hdf5-$HDF5_VER
# Summary of command line inputs
echo "HDF5_VER: $HDF5_VER"
echo "MISC OPTIONS: $CTEST_OPTS"
echo "HDF5_BRANCH: $HDF5_BRANCH"
echo "Current Directory:"
pwd
#sleep 1
#rm -f CTestScript.cmake HDF5config.cmake HDF5options.cmake
sleep 1
ln -s config/cmake/scripts/CTestScript.cmake .
ln -s config/cmake/scripts/HDF5config.cmake .
ln -s config/cmake/scripts/HDF5options.cmake .
echo "Contents of current directory"
ls -l
if [[ $UNAME == cori* ]];then
# Get the curent PrgEnv module setting
module list &> out
PRGENV_TYPE=`grep -i PrgEnv out | sed -e 's/.*PrgEnv-\(.*\)\/.*/\1/'`
module unload cke
module load cmake/3.14.0
# module load cmake
# unload the current PrgEnv and compiler associated with PrgEnv
module unload PrgEnv-$PRGENV_TYPE
module unload $PRGENV_TYPE
# the modules to test
# the PrgEnv to test
MASTER_MOD="PrgEnv-gnu/6.0.4"
module load gcc/8.2.0
# the Compiler to switch to:
# Format: <number of compiler versions to check> <compiler type> <list of compiler versions (modules) ... repeat)
CC_VER=(2 intel intel/17.0.4 intel/18.0.2 2 gcc gcc/7.3.0 gcc/8.2.0)
CTEST_OPTS="HPC=sbatch -C haswell,$CTEST_OPTS"
_CC=cc
_FC=ftn
_CXX=CC
elif [[ $UNAME == serrano* ]]; then
echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DMPIEXEC_EXECUTABLE:STRING=mpirun")' >> hdf5-$HDF5_VER/config/cmake/scripts/HPC/sbatch-HDF5options.cmake
echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DMPIEXEC_PREFLAGS:STRING=--mca;io;ompio")' >> hdf5-$HDF5_VER/config/cmake/scripts/HPC/sbatch-HDF5options.cmake
perl -i -pe "s/^CMD=\"ctest.*/CMD=\"ctest . -R MPI_TEST_ -E MPI_TEST_testphdf5|MPI_TEST_t_shapesame -C Release -T test\"/" hdf5-$HDF5_VER/bin/batch/ctestP.sl.in.cmake
module purge
module load cmake
MASTER_MOD="openmpi-intel/3.0"
CC_VER=(2 intel intel/17.0 intel/18.0)
CTEST_OPTS="HPC=sbatch,$CTEST_OPTS"
_CC=mpicc
_FC=mpif90
_CXX=mpicxx
elif [[ $UNAME == p90* ]]; then
if [[ $ALL_TESTS == 'false' ]];then
SKIP_TESTS="-E '"
SKIP_TESTS=$SKIP_TESTS"H5TEST_vds"
SKIP_TESTS=$SKIP_TESTS"|H5TEST_objcopy"
SKIP_TESTS=$SKIP_TESTS"|H5TEST_btree2"
SKIP_TESTS=$SKIP_TESTS"|H5TEST_fheap"
SKIP_TESTS=$SKIP_TESTS"|H5TEST_links"
SKIP_TESTS=$SKIP_TESTS"|H5TEST_cache"
SKIP_TESTS=$SKIP_TESTS"'"
fi
perl -i -pe "s/^CMD=.*/CMD=\"ctest . -R H5TEST_links -C Release -T test\"/" hdf5-$HDF5_VER/bin/batch/ctestS.sl.in.cmake
perl -i -pe "s/.*CMD .*/ctest . -R H5TEST_links -C Release -T test >& ctestS.out/" hdf5-$HDF5_VER/bin/batch/ctestS.sl.in.cmake
# perl -i -pe "s/^CMD=.*/CMD=\"ctest . -E MPI_TEST_ ${SKIP_TESTS} -C Release -j 16 -T test\"/" hdf5-$HDF5_VER/bin/batch/ctestS.sl.in.cmake
# perl -i -pe "s/.*CMD .*/ctest . -E MPI_TEST_ ${SKIP_TESTS} -C Release -j 16 -T test >& ctestS.out/" hdf5-$HDF5_VER/bin/batch/ctestS.sl.in.cmake
# echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DMPIEXEC_EXECUTABLE:STRING=mpirun")' >> hdf5-$HDF5_VER/config/cmake/scripts/HPC/sbatch-HDF5options.cmake
# echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DMPIEXEC_PREFLAGS:STRING=--mca;io;ompio")' >> hdf5-$HDF5_VER/config/cmake/scripts/HPC/sbatch-HDF5options.cmake
echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_BUILD_TOOLS:BOOL=OFF")' >> hdf5-$HDF5_VER/config/cmake/scripts/HDF5options.cmake
echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_BUILD_EXAMPLES:BOOL=OFF")' >> hdf5-$HDF5_VER/config/cmake/scripts/HDF5options.cmake
echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DMPIEXEC_NUMPROC_FLAG:STRING=-n")' >> hdf5-$HDF5_VER/config/cmake/scripts/HDF5options.cmake
echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DMPIEXEC_MAX_NUMPROCS:STRING=6")' >> hdf5-$HDF5_VER/config/cmake/scripts/HDF5options.cmake
# perl -i -pe "s/^CMD=\"ctest.*/CMD=\"ctest . -R MPI_TEST_ -E MPI_TEST_testphdf5|MPI_TEST_t_filters_parallel|MPI_TEST_t_shapesame -C Release -T test\"/" hdf5-$HDF5_VER/bin/batch/ctestP.sl.in.cmake
# module purge
# module load cmake/3.13.4
# module load mpi/openmpi3-ppc64le
MASTER_MOD="openmpi"
CC_VER=(1 gcc/8.3.0)
CTEST_OPTS="$CTEST_OPTS"
_CC=mpicc
_FC=mpif90
_CXX=mpicxx
elif [[ $UNAME == eclipse* ]]; then
module purge
module load cmake
MASTER_MOD="intel-mpi/2018"
CC_VER=(2 intel intel/16.0 intel/18.0)
CTEST_OPTS="HPC=sbatch,$CTEST_OPTS"
_CC=mpicc
_FC=mpif90
_CXX=mpicxx
elif [[ $UNAME == quartz* ]]; then
echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DMPIEXEC_EXECUTABLE:STRING=mpirun")' >> hdf5-$HDF5_VER/config/cmake/scripts/HPC/sbatch-HDF5options.cmake
echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DMPIEXEC_PREFLAGS:STRING=--mca;io;ompio")' >> hdf5-$HDF5_VER/config/cmake/scripts/HPC/sbatch-HDF5options.cmake
perl -i -pe "s/^CMD=\"ctest.*/CMD=\"ctest . -R MPI_TEST_ -E MPI_TEST_t_bigio -C Release -T test\"/" hdf5-$HDF5_VER/bin/batch/ctestP.sl.in.cmake
module purge
module load cmake/3.12.1
module load intel/16.0.4
MASTER_MOD="openmpi/4.0.0 openmpi/4.0.0 openmpi/4.0.0"
CC_VER=(1 intel intel/16.0.4 2 gcc gcc/7.1.0 gcc/8.1.0 1 clang clang/3.9.0)
CTEST_OPTS="HPC=sbatch,$CTEST_OPTS"
_CC=mpicc
_FC=mpif90
_CXX=mpicxx
elif [[ $UNAME == ray* ]]; then
perl -i -pe "s/^ctest.*/ctest . -R 'MPI_TEST_' -E 'MPI_TEST_t_filters_parallel|MPI_TEST_testphdf5|MPI_TEST_t_shapesame|MPI_TEST_H5DIFF-h5diff_80' -C Release -T test > & ctestP.out;/" hdf5-$HDF5_VER/bin/batch/ray_ctestP.lsf.in.cmake
module purge
module load cmake/3.12.1
module load xl/2016.12.02
MASTER_MOD="spectrum-mpi spectrum-mpi spectrum-mpi"
CC_VER=(1 xl xl/2016.12.02 1 gcc gcc/7.3.1 1 clang clang/coral-2018.08.08)
CTEST_OPTS="HPC=raybsub,$CTEST_OPTS"
_CC=mpicc
_FC=mpif90
_CXX=mpicxx
elif [[ $UNAME == lassen* ]]; then
echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DMPIEXEC_EXECUTABLE:STRING=mpirun")' >> hdf5-$HDF5_VER/config/cmake/scripts/HPC/bsub-HDF5options.cmake
perl -i -pe "s/^ctest.*/ctest . -E MPI_TEST_ -C Release -j 32 -T test >& ctestS.out/" hdf5-$HDF5_VER/bin/batch/ctestS.lsf.in.cmake
perl -i -pe "s/^ctest.*/ctest . -R MPI_TEST_ -E 'MPI_TEST_testphdf5|MPI_TEST_t_shapesame' -C Release -T test >& ctestP.out/" hdf5-$HDF5_VER/bin/batch/ctestP.lsf.in.cmake
module purge
module load cmake/3.12.1
module load xl/2016.12.02
MASTER_MOD="spectrum-mpi"
CC_VER=(1 xl xl/2019.02.07)
#MASTER_MOD="spectrum-mpi spectrum-mpi spectrum-mpi"
#CC_VER=(1 xl xl/2019.02.07 1 gcc gcc/7.3.1 1 clang clang/coral-2018.08.08)
CTEST_OPTS="HPC=bsub,$CTEST_OPTS"
_CC=mpicc
_FC=mpif90
_CXX=mpicxx
fi
module list
icnt=0
for master_mod in $MASTER_MOD; do
#icnt=$(($icnt+1))
num_CC=${CC_VER[$icnt]} # number of compilers for the master_mod
module load $master_mod # Load the master module
icnt=$(($icnt+1))
COMPILER_TYPE=`echo ${CC_VER[icnt]} | sed 's/\/.*//'`
module unload ${COMPILER_TYPE} # unload the general compiler type
for i in `seq 1 $num_CC`; do # loop over compiler versions
cc_ver=${CC_VER[$icnt]} # compiler version
rm -fr build
module load $cc_ver # load the compiler with version
module load $master_mod
export CC=$_CC
export FC=$_FC
export CXX=$_CXX
module list
echo "timeout 3h ctest . -S HDF5config.cmake,SITE_BUILDNAME_SUFFIX=\"$HDF5_VER-$master_mod-$cc_ver\",${CTEST_OPTS}MPI=true,BUILD_GENERATOR=Unix,LOCAL_SUBMIT=true,MODEL=HPC -C Release -V -O hdf5.log"
timeout 3h ctest . -S HDF5config.cmake,SITE_BUILDNAME_SUFFIX="$HDF5_VER-$master_mod-$cc_ver",${CTEST_OPTS}MPI=true,BUILD_GENERATOR=Unix,LOCAL_SUBMIT=true,MODEL=HPC -C Release -V -O hdf5.log
module unload $cc_ver # unload the compiler with version
icnt=$(($icnt+1))
#rm -fr build
done
module unload $master_mod #unload master module
done
#Serial only tests
# Turn off parallel options for serial-only tests. (Just be sure not to include
# MPI=true in the ctest line.)
if [[ $UNAME == chama* ]]; then
# These are temporary workarounds that should be fixed in *-HDF5options.cmake by moving the 'set (LOCAL_BATCH_SCRIPT_PARALLEL_NAME "ctestP.sl")' (or equivalent ) into the if (DEFINED MPI) block, and otherwise either setting it to "" or maybe moving both of these to that block.
echo 'set (LOCAL_BATCH_SCRIPT_PARALLEL_NAME "")' >> hdf5-$HDF5_VER/config/cmake/scripts/HPC/sbatch-HDF5options.cmake
echo 'set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DLOCAL_BATCH_SCRIPT_PARALLEL_NAME:STRING=${LOCAL_BATCH_SCRIPT_PARALLEL_NAME}")' >> hdf5-$HDF5_VER/config/cmake/scripts/HPC/sbatch-HDF5options.cmake
module purge
module load cmake
CC_VER=(2 clang clang/5.0 clang/4.0)
CTEST_OPTS="HPC=sbatch,$CTEST_OPTS"
_CC=clang
_FC=gfortran
_CXX=clang++
fi
for i in `seq 1 $num_CC`; do # loop over compiler versions
icnt=$(($icnt+1))
cc_ver=${CC_VER[$icnt]} # compiler version
rm -fr build
module load $cc_ver # load the compiler with version
export CC=$_CC
export FC=$_FC
export CXX=$_CXX
module list
echo "cest . -S HDF5config.cmake,SITE_BUILDNAME_SUFFIX=\"$HDF5_VER-$cc_ver\",${CTEST_OPTS}MPI=true,BUILD_GENERATOR=Unix,LOCAL_SUBMIT=true,MODEL=HPC -C Release -VV -O hdf5.log"
ctest . -S HDF5config.cmake,SITE_BUILDNAME_SUFFIX="$HDF5_VER-$cc_ver",${CTEST_OPTS}MPI=true,BUILD_GENERATOR=Unix,LOCAL_SUBMIT=true,MODEL=HPC -C Release -VV -O hdf5.log
module unload $cc_ver # unload the compiler with version
#rm -fr build
done
pwd
cd $IN_DIR