Create Documentation authored by Camille Coti's avatar Camille Coti
## Modules (Voltar)
```
module use $HOME/x86/modulefiles
module load openblas/git cuda gcc hwloc cmake automake autoconf
```
## StarPU
Clone it:
```
git clone https://gitlab.inria.fr/starpu/starpu.git
```
Configure and compile it:
```
./autogen.sh
./configure --prefix=$PWD/install --with-cuda-dir=/$CUDA --disable-socl --disable-opencl --enable-blas-lib=openblas --disable-mpi --disable-build-doc
make -j install
```
Notes:
- I had issues with OpenBLAS, even though I am setting the pkg path in my module:
```
export PKG_CONFIG_PATH=$HOME/x86/OpenBLAS/install/lib64/pkgconfig:$PKG_CONFIG_PATH
```
In configure.ac, I replace this line:
```
PKG_CHECK_MODULES([OPENBLAS], [blas-openblas],
```
with this line:
```
PKG_CHECK_MODULES([OPENBLAS], [openblas],
```
- Since I cannot build the documentation on Voltar, I disable it with `--disable-build-doc`. However, `make install` seems to try to go into directories related to this documentation that do not exist. I `mkdir` them when make complains and that's it.
## Apex
Clone it. The StarPU support is on my fork:
```
git clone git@github.com:coti/apex.git
```
Compile it. For me:
```
mkdir build install
cd build
cmake .. -DAPEX_WITH_BFD=ON -DCMAKE_INSTALL_PREFIX=$PWD/../install -DAPEX_WITH_STARPU=ON -DSTARPU_INCLUDE_DIR=$HOME/x86/starpu/install/include/starpu/1.3 -DSTARPU_LIBRARY=$HOME/x86/starpu/install/lib/libstarpu-1.3.so
make -j install
```
Apex installs some dependencies if it cannot find them, so we need to set the `LD_LIBRARY_PATH` to use them:
```
export LD_LIBRARY_PATH=~/x86/apex/install//binutils/lib:~/x86/apex/install/otf2/lib:$LD_LIBRARY_PATH
```
Then... voila
```
~/x86/apex/install/bin/apex_exec --apex:cuda ./axpy
```