VSIPL++: Parallel Performance
Abstract
VSIPL++(exp 1) is the object-oriented "next-generation" version of the Vector Signal and Image Processing Library (VSIPL). Like VISPL, VSIPL++ specifies an Application Programming Interface (API) for use in the development of high-performance numerical applications, with a particular focus on embedded real-time systems performing signal processing and image processing. VSIPL++ contains a number of improvements relative to VSIPL including a simpler, more intuitive programming model, simpler syntax, and greater flexibility and extensibility. This parallel support requires only that the user specify the way in which data should be distributed across processors. The VSIPL++ library automatically manages the transmission of data between the processors as necessary to effectively perform the desired computations. CodeSourcery was awarded funding under the Air Force Small Business Investment Research (SBIR) program to develop a prototype version of the parallel functionality described in the VSIPL++ specification and to obtain measurements of VSIPL++ performance when executing on parallel systems. Our prototype implementation achieves a near-linear speedup on multi-processor systems demonstrating that, despite the high level of abstraction present in VSIPL++, it is nevertheless possible to obtain excellent performance. Thus, VSIPL++ has the potential to allow programmers to easily and rapidly develop systems that are both highly portable and highly efficient. In our presentation, we will describe the parallel VSIPL++ programming model, our parallel performance benchmark, and the results we obtained.
Document Details
- Document Type
- Technical Report
- Publication Date
- May 27, 2004
- Accession Number
- ADA433092
Entities
People
- Jeffrey D. Oldham
- Mark Mitchell