SkePU (integrated with StarPU)  0.8.1
 All Classes Namespaces Files Functions Enumerations Friends Macros Groups Pages
SkePU Documentation

General Information

This version presents integration of SkePU with the StarPU runtime system ( To use this version, you would have to install StarPU first. Please note that SkePU is a template library with all objects being either templated or in some cases inlined. Therefore there is no need to install SkePU or link against any precompile libraries, just simply add the library to the compilers include path and include the header files of choice.

Basic Structure

SkePU consists of a few main classes that constitutes its functionality and interface.

Apart from these, SkePU also uses a few other classes internally as helpers.

Compilation and Preprocessor Symbols.

Since SkePU is a multi-backend library, it shields parts of the code with the help of preprocessor directives. Entities whose name ends in _CL are only included in the compilation if SKEPU_OPENCL is defined for the preprocessor. In a similar way entities ending in _CU are only included if SKEPU_CUDA is defined and _OMP for SKEPU_OPENMP. This way SkePU can be compiled even though you are missing some of the backends. CPU backend is always compiled.

Also see the examples provided with the source code.