X-Kaapi is both a programming model and a runtime for high performance parallelism targeting multicore and distributed architectures. It relies on the work stealing paradigm.
The runtime library also comes with a full set of complementary programming interfaces:
Moreover X-Kaapi comes with ABI compliant libraries that allows the end user to use OpenMP code or PLASMA code.
To install X-Kaapi programming environment, you need to:
It has been extensively tested on the following operating systems:
There is no version for Windows yet.
The steps to install X-Kaapi are:
This step is optional. If you do not want to use the KaCC compiler you can jump this section.
In order to compile and install the KaCC compiler, the ROSE framework (http://www.rosecompiler.org) must be installed. Please have a look at the installation guide on the ROSE web site. In order to install ROSE, you need to have (valid for ROSE 0.9.5a):
Detailed procedures to install ROSE and EDG frontend are described in ROSE documentation. Once ROSE is installed, you will be able to generate kacc, the X-Kaapi compiler.
Currently, X-Kaapi must be installed from sources. Other packagings (Debian or RPM packages) are under development. Please refer to the Download page to get the sources.
The build system uses GNU Autotools. In case you cloned the project repository, you first have to bootstrap the configuration process by running the following script: $> ./bootstrap
The configure file should be present. It is used to create the Makefile accordingly to your system configuration. Command line options can be used to modify the default behavior. A list of the configuration options is available by running:
$> ./configure --help
Below is a list of the most important ones:
brary to take advantage of the topological information of the computer.
mation on PAPI can be found at http://icl.cs.utk.edu/papi/.
./configure --prefix=$HOME/install --enable-mode=release \ --with-hwloc=/usr/local/hwloc --with-perfcounter
If there are errors during the configuration process, you have to solve them before going further. If dependencies are missing on your system, logs will give you the names of the software to install.
./configure --prefix=$HOME/install --enable-mode=release \ --with-hwloc=/usr/local/hwloc --with-perfcounter \ --with-boost=/usr/local/boost \ --with-rose=$HOME/ROSE/install \ --enable-kacc
On success, the configuration process generates a Makefile. The 2 following commands build and install the XKaapi runtime:
$ make
$ make install
The following checks the runtime is correctly installed on your system:
$ make check