Parallelization in a generic image processing library

From LRDE

The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Abstract

Milena is an image processing library focused on genericity: using advanced template meta-programming techniques, algorithms are written once and can then run on many types of images: 1D, 2D, 3D, graph-based, built on a cell complex, etc. In order to improve the efficiency of the library we would like to introduce optimization techniques offered by modern processors: multicore parallelism and SIMD (Single Instruction, Multiple Data) vectorization. In this report we investigate how such low-level constructs can be integrated while preserving genericity.