A New Vectorization Technique for Expression Templates in C++

Computer Science – Mathematical Software

Scientific paper

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

Scientific paper

Vector operations play an important role in high performance computing and are typically provided by highly optimized libraries that implement the BLAS (Basic Linear Algebra Subprograms) interface. In C++ templates and operator overloading allow the implementation of these vector operations as expression templates which construct custom loops at compile time and providing a more abstract interface. Unfortunately existing expression template libraries lack the performance of fast BLAS(Basic Linear Algebra Subprograms) implementations. This paper presents a new approach - Statically Accelerated Loop Templates (SALT) - to close this performance gap by combining expression templates with an aggressive loop unrolling technique. Benchmarks were conducted using the Intel C++ compiler and GNU Compiler Collection to assess the performance of our library relative to Intel's Math Kernel Library as well as the Eigen template library. The results show that the approach is able to provide optimization comparable to the fastest available BLAS implementations, while retaining the convenience and flexibility of a template library.

No associations

LandOfFree

Say what you really think

Search LandOfFree.com for scientists and scientific papers. Rate them and share your experience with other people.

Rating

A New Vectorization Technique for Expression Templates in C++ does not yet have a rating. At this time, there are no reviews or comments for this scientific paper.

If you have personal experience with A New Vectorization Technique for Expression Templates in C++, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and A New Vectorization Technique for Expression Templates in C++ will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFWR-SCP-O-94224

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.