How to optimize computation with HPC
Pierre Aubert
Prerequisites
Compiler
We are going to use the
GCC-7 compiler.
If you are stucked with an other compiler or with an older version of
GCC you can install it with
Anaconda (in your tutorial environement) :
conda install gcc7
Compilation tools
We will use
CMake and
Make to compile our programs.
Ploting tools
We will use
Gnuplot to plot the results of our tests.
Architecture tools
We will use the program
hwloc-ls to show the CPU architecture.
Optimisations
We are going to focus on the optimisation of single precision floating points computations.
Basically, you can divide all the following speed-up by 2 to have the equivalent for double precision.
The double precision computation sounds more precise that single precision computation.
But, if you are doing non sence with double precision it also fails.
The correction of the whole tutorial is available
here.
If you want to start with the basic library you can download the minimal example
here.