In order to build Gyselalib++ the necessary steps are:
For example on Adastra the necessary commands are:
The toolchains are represented using a toolchain file. It summarizes CMake build settings for the appropriate machine environment and hardware.
You can use the toolchains like so:
The toolchains files are found in the toolchains
folder and have the extension .cmake
. The CONFIG
folders are named after the environment where they run. E.g. mi250.hipcc.adastra.spack
contains the files necessary to run on MI250 GPUs using hipcc
on Adastra. v100.persee
contains the files necessary to run on V100 GPUs on Persee.
Additionally the folder docker.gyselalibxx_env
provides toolchains which will work on most platforms. These toolchains are designed to work with the docker environment.
Toolchains may require a non default environment. For that purpose environment scripts are provided. Each CONFIG
folder in toolchains
should contain (a potentially empty) environment file named environment.sh
. The environment file is used like so:
The sourcing of an environment file will generally happen before the build or usage of the built product.
The environment may need preparation (for example if the dependencies are not available on the machine). For that purpose the CONFIG
folders should contain (a potentially empty) preparation file named prepare.sh
. The preparation file is used like so:
prepare.gyselalibxx.sh
script;