---
# System prepended metadata

title: HPC-tests notes (to be moved)

---


In the repository:
https://github.com/AaltoSciComp/hpc-software-tests/

# Test naming convention:

Each test is named like this:
`SOFTWARE/TEST-NAME-WITHOUT-UNDERSCORE/run_TEST-NAME-WITHOUT-UNDERSCORE.sh`

```
find . -name 'run_*.sh'
```

The folder hpc_tests has the configs.

# Misc notes
python wrapper to run sbatched tests

The scripts are based on **pytest**.

Everything runnable as normal user.

sbatch runs with --wait

# Each test
Each test has zero return value if successfull/correct.

Tests take list of modules as command line parameter

runnable separately:

```
sbatch run_hello-world.sh openmpi/4.1.6
```

Each test will run in the git repo folder of the test.



# configuration file for tests
`pytest_generate_tests()`

`hpc_tests/aalto_dev.yaml`

- *extra modules* are loaded first
- __then one run for each *module*__ (for loop over modules)
- there is also *global* where you can set extra parameters/requirements
- *localrun*: instead of sbatch run them on the submit node or workstation

naming convention similar to file structure

# Creating a new test
Take an example case, such as hello-world from mpi

Often download example input if it doesn't exist yet.

If there is a cleanup needed, it usually done at the beginning of run.

The whole `run_*.sh` is submitted as a sbatch job.



# Running via the suite

```
bash run_tests.sh --help
bash run_tests.sh --conf hpc/tests/aalto-desktop.yml --list
bash run_tests.sh --conf hpc/tests/aalto-desktop.yml --keyword gcc_hello-world-gcc_8.4.0
```
(--keyword is grepping to match tests, don't use --test)
(--dev will run all the aalto-dev side test, whole tests in the order of 10mins)

# osu-micro-benchmark MPI tests are outside the suite/framework


`compile_osu-micro-benchmark.sh` is a helpful wrapper to compile using a specific module, e.g.:

`./compile_osu-micro-benchmarks.sh mpicc mpic++ openmpi/4.1.6`
(Creates bins in the build folder, Check the Known issues in the README.md and remove the failing tests)

`sbatch --constraint=milan run-osu-microbenchmarks.sh openmpi/4.1.6`



## Output

Pretty much manual work to look at the output.
The bandwidth should be ~10GB/s.
Latency should be low... few or few tens of microseconds.





# Simppa's workplan

1. convert this document to wiki
2. create a image-test-suite
3. ior test suite is missing for simppa (module exists already)