Skip to content

Instantly share code, notes, and snippets.

@zbyerly
Last active February 20, 2020 17:11
Show Gist options
  • Save zbyerly/0762616020bf7a7a84a6254a6410b1cb to your computer and use it in GitHub Desktop.
Save zbyerly/0762616020bf7a7a84a6254a6410b1cb to your computer and use it in GitHub Desktop.
Cluster Benchmarks: OSU Micro-Benchmarks and HPL
# Cluster Benchmarks
The purpose of this guide is to document how to set up and run popular benchmarking tools.
This guide was written with SLURM in mind, and `philip.hpc.lsu.edu` in particular.
## Downloading and installing OSU Micro-Benchmarks on SLURM
* Download [OSU Micro-Benchmarks](http://mvapich.cse.ohio-state.edu/benchmarks/)
* After untarring the files (`tar -xzvf <filename>`) installation is straightforward. Follow the instructions in the `README`
* To figure out what paths to use for for "./config", load the module for the compiler you want to use and run `which mpicc` and `which mpicxx`
* On `philip`, for example, I used `CC=/usr/local/packages/mpich/3.1.4/INTEL-15.0.3/bin/mpicc CXX=/usr/local/packages/mpich/3.1.4/INTEL-15.0.3/bin/mpicxx`
## Downloading and installing HPL
* Download [HPL](http://www.netlib.org/benchmark/hpl/)
* Untar the files (`tar -xzvf <filename>`)
* Installation requires copying and probably modifying a `Make.SomeArchitecture` file from the `setup/` directory into the hpl directory.
* For philip.hpc.lsu.edu: `cp setup/Make.Linux_Intel64 Make.Philip`
* Open `Make.Philip` in your favorite editor and make the following changes:
```
MPdir = /usr/local/packages/mpich/3.1.4/INTEL-15.0.3/
MPinc = -I$(MPdir)/include
MPlib = $(MPdir)/lib/libmpi.a
```
* The `MKLROOT` environment variable should already be set up if the modules are loaded.
* This is not the way it's supposed to work, but I had to:
* run `./configure --prefix=$PWD
* make arch=Philip
* make install
This put the `xhpl` inside `bin/` instead of `bin/<arch>`.
I used this site [HOW DO I TUNE MY HPL.DAT FILE?](https://www.avancedclustering.com/act_kb/tune-hpl-dat-file/) to generate the `HPL.dat` file that xhpl requires.
Copy the output to a file `HPL.dat` in the top level directory, and finally:
`mpirun -np <numcores> ./bin/xhpl`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment