Parallel VSIPL++





 

 

The Parallel Vector, Signal, and Image Processing Library (Parallel VSIPL++) is an open standard middleware API that allows users to write programs at high level, while still achieving performance and preserving the portability of the code across parallel computing hardware platforms. Parallel VSIPL++ achieves this by providing high-level C++ array constructs, a simple mechanism for mapping data and functions onto parallel hardware, and a community-defined portable interface. It supports adaptive optimization at many levels. The C++ arrays are designed to support automatic hardware specialization by the compiler. The computation objects (e.g., fast Fourier transforms) are built with explicit setup and run stages to allow for runtime optimization. Parallel arrays and functions in Parallel VSIPL++ also support explicit setup and run stages, which are used to accelerate communication operations. The parallel mapping mechanism provides an external interface that allows optimal mappings to be generated offline and read into the system at runtime. Finally, the standard has been developed in collaboration with high performance embedded computing vendors and is compatible with their proprietary approaches to achieving performance. See this paper for an overview of the Parallel VSIPL++ standard as well as a deeper description of the technical foundations and expected performance of the library.

Parallel VSIPL++ Documents

 

.