Overview of the installation steps

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:

  • Fortran,
  • C,
  • C++,
  • directive based programming model (#pragma kaapi …) with the KaCC compiler. Based on ROSE compiler framework (http://www.rosecompiler.org).

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:

  • a GNU toolchain (GCC >= 4.3),
  • a pthread library,
  • a Unix based environment (Linux or MacOSX are used by most of the Kaapi's developers).

It has been extensively tested on the following operating systems:

  • GNU-Linux with x86 64 architectures,
  • MacOSX/Intel processor.

There is no version for Windows yet.

The steps to install X-Kaapi are:

  1. [optional:] Install the ROSE compiler framework
  2. Configure the X-Kaapi library
  3. Compile the X-Kaapi library and, optionally, the X-Kaapi compiler
  4. Install the X-Kaapi library and, optionally, the X-Kaapi compiler

ROSE and EDG frontend installation

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):

  • wget: to download the binary version of the EDG frontend
  • gcc, g++: at least version 4.0.0
  • boost: version 1.36.0 to 1.45.0
  • and a lot of different utilities (GNU autotools, …)

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.

X-Kaapi library and compiler installation

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.

Bootstrap and configure

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:

  • –prefix=<path prefix> : Overload the default installation path.
  • –enable-mode=[debug|release] : Choose the compilation mode of the library. Defaults to release.
  • –with-hwloc : Compile with hwloc (http://www.open-mpi.org/projects/hwloc) li-

brary to take advantage of the topological information of the computer.

  • –with-perfcounter : Enable performance counters support. Thanks to this option, users may have access to important statistics about a program execution. Moreover it is possible to plot Gantt diagram.
  • –with-papi : Enable the PAPI library for low level performance counting. More infor-

mation on PAPI can be found at http://icl.cs.utk.edu/papi/.

  • [optional:] if ROSE framework was installed, then you could also compile KaCC compiler:
    • –enable-kacc : required to compile the kacc compiler. Depending on your installation of ROSE and the Boost library, you may specify their installation paths using:
    • –with-rose=<rose installation path>
    • –with-boost=<boost installation path>

Example:

Example to compile X-Kaapi without the KaCC compiler:
./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.

Example to compile X-Kaapi with the KaCC compiler:
./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

Compilation and installation

On success, the configuration process generates a Makefile. The 2 following commands build and install the XKaapi runtime:

$ make

$ make install

Checking the installation

The following checks the runtime is correctly installed on your system:

$ make check

installation.txt · Last modified: 2012/04/23 12:48 by admin
Recent changes RSS feed GNU Free Documentation License 1.3 Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki