Benchmarking: HPL with MPICH2 and Vanilla Raspbian (Raspberry Pi)
Installing dependencies
HPL has a few software dependencies that have to be satisfied before it can be installed. They are:
- gfortran - fortran program compiler
- MPICH2 - an implementation of MPI
- mpich2-dev - development tools
- BLAS - Basic Linear Algebra Subprograms
To install other dependencies and packages, use the following command:
sudo apt-get install mpich2 libatlas-base-dev libmpich2-dev gfortranDownload HPL and set it up
Download the HPL package from [[1]].
wget http://www.netlib.org/benchmark/hpl/hpl-2.1.tar.gzThe next thing to do is extract the tar file and create a makefile based on the given template. Open the terminal and change the directory to where the downloaded HPL tar file is stored. Execute the following set of commands one after another.
tar xf hpl-2.1.tar.gz
cd hpl-2.1/setup
sh make_generic
cd ..
cp setup/Make.UNKNOWN Make.piThe last command copies the contents of Make.UNKNOWN to Make.rpi . We do this is because, the make file contains all the configuration details of the system ( The raspberry pi) and also the details various libraries such as mpich2, atlas/blas packages, home directory, etc. In the next step, we make changes to the Make.rpi file.
Adjust the Make.pi file
This is an important step. Changes shown below vary according to your system. Here I show it with respect to my system. Please note that the following changes have parameters shown which are spread throughout the Make.rpi file. So I suggest you to find each parameter and replace or add the changes and only then continue to the next parameter.
ARCH = rpi
TOPdir = $(HOME)/hpl-2.1
MPdir = /usr/local/mpich2
MPinc = -I $(MPdir)/include
MPlib = $(MPdir)/lib/libmpich.a
LAdir = /usr/lib/atlas-base/
LAlib = $(LAdir)/libf77blas.a $(LAdir)/libatlas.a