D2.4: Algorithm Constraining and Selection Techniques

This report describes algorithm constraining and selection techniques. The presented techniques allow generating multi-versioned kernels implementations for a selected kernel in a source code in order to choose the most promising one in runtime.

The report introduces the workow and the algorithms used. The presented solution contains the following characteristics:

  •  It semi-automatically translates computation/data-intensive ISO C++ code segments, such as loop-nests, into annotated kernel code.
  • It generates a set of multi-versioned implementations for each kernel.
  • Finally, the best version is chosen to run on a heterogeneous parallel platform based on a run-time multi-attribute/objective decision making function.

These techniques could be used by the scheduler to select automaticly the optimal kernel at runtime.


Comments are closed.